Free WordPress plugin · Stripe & PayPal

The money arrived.
The order didn't.

Stripe or PayPal captured the payment — but the WooCommerce order is still sitting on “Pending payment”. Stock never moved, no receipt went out, and you find out at month-end. PaidRadar finds those orders and finishes them correctly.

No account. No cloud. Runs entirely on your own site.

Why a paid order gets stuck

The gateway confirms payment through a webhook. When that request never lands, WooCommerce never learns the money arrived — and nothing in the admin tells you it happened.

The webhook never arrived

A firewall, WAF rule or security plugin blocked the gateway's request before WooCommerce ever saw it.

It arrived and failed

A PHP timeout, a fatal error right after checkout, or a caching layer answering with 204 — the event was delivered but never processed.

Wrong endpoint entirely

Live/test key mix-up, a stale endpoint after a domain change, or a gateway plugin that was reconfigured.

How PaidRadar works

1

Scan

Looks at orders sitting in pending, on-hold or failed inside a look-back window you set.

2

Verify read-only

Re-queries the gateway's own API for each candidate. Read-only — PaidRadar never captures, refunds or modifies anything at the gateway.

3

Complete correctly

Only when the gateway unambiguously reports the payment as captured, the order is completed through WooCommerce's own payment_complete() flow — stock, status and emails all fire the way they should.

It refuses to guess

If the gateway's answer is ambiguous, partial, or the amount or currency doesn't match the order, PaidRadar leaves the order alone and records why. A tool that force-completes orders on a maybe is worse than no tool at all — you'd be shipping goods against payments that never cleared.

What you get

A full payment audit trail

Every check, every decision, every status transition — per order, with the gateway's response behind it. When your accountant asks why an order changed state three weeks later, the answer is in the log.

Alerts that mean something

The admin gets told what was recovered and what was deliberately skipped, instead of a silent job that either worked or didn't.

Stripe and PayPal out of the box

The two gateways that account for most stuck-order reports in WooCommerce. Mollie is available in Pro.

Self-hosted, no account

No SaaS signup, no data leaving your server beyond the gateway calls your site already makes. Your API keys stay in your own WordPress install.

What PaidRadar is — and isn't

SituationPaidRadar
Payment captured at the gateway, order stuck on pendingThis is exactly the job. Verified against the gateway, then completed.
Customer never paidNot touched. This is not dunning — PaidRadar never chases a customer for money.
Payment failed or was declinedNot touched. The order stays where it is.
Gateway answer unclear or amount mismatchedSkipped on purpose, with the reason written to the audit trail.
Your accounting / bookkeepingUntouched. PaidRadar repairs order state, nothing else.

See how this compares to checking by hand, resending webhooks or bulk-editing statuses →

Get PaidRadar

Free core

Stripe + PayPal · audit trail · admin alerts

The complete recovery loop, no feature gate on the part that matters. Published on WordPress.org.

Currently in review for the WordPress.org plugin directory. TODO Mick: nach Freigabe auf https://wordpress.org/plugins/paidradar/ umstellen

Pro

Mollie gateway · configurable scan frequency · Slack alerts

For shops running more than the two big gateways, or that want the scan on a tighter schedule and alerts where the team already is.

TODO Mick: Pro-Preis + Polar-Checkout-Link eintragen

Questions

Can PaidRadar complete an order that was never actually paid?

No. It only acts when the gateway's own API reports the payment as captured, and the amount and currency match the order. Anything ambiguous is skipped and logged rather than guessed at.

Does it charge, capture or refund anything?

No. All gateway calls are read-only. PaidRadar reads the payment status and then changes the order inside WooCommerce — it never moves money.

Will customers get a flood of old emails when it runs?

Orders are completed through WooCommerce's standard payment_complete() flow, which sends the normal completion email for each recovered order. That's usually what you want — the customer never got a receipt. Run the first scan with a short look-back window to see the volume before widening it.

Does this replace fixing my webhooks?

No, and it shouldn't. PaidRadar is the safety net for events that already went missing. Fixing the underlying webhook delivery is still the right move — the audit trail helps you see how often it's failing.

Is this the same as PayDrift?

No. PayDrift watches your payment configuration and catches settings that silently change after plugin updates. PaidRadar repairs orders after a payment confirmation went missing. Different layer, different moment — they don't overlap.

Does it work with my page cache / CDN?

Yes. The scan runs server-side through WordPress cron and talks to the gateway API directly, so caching layers in front of your site aren't involved.