PayPal Payment Received but WooCommerce Order Failed?
PayPal collected the customer's money, but the WooCommerce order shows Failed or Pending — money moved, no order. It's alarming, but the money isn't lost. Here's the exact reason and how to recover the order.
Last updated: 14 Jul 2026 · ~6 min read
The cause is almost always a broken IPN — the Instant Payment Notification PayPal sends to tell your store the payment cleared. PayPal took the payment, but WooCommerce never got the confirmation, so the order never completed. Check PayPal's IPN history for failed messages, fix the delivery, then resend the IPN or complete the order manually. Don't refund — the customer already paid.
What IPN is (and why the order failed)
When a customer pays with PayPal, PayPal notifies your store asynchronously — after the fact — via IPN (Instant Payment Notification) and/or PDT. WooCommerce uses that message to mark the order paid and move it to Processing. If IPN is disabled, blocked, or misrouted, PayPal can happily charge the customer while your order sits on Failed or Pending forever. The charge and the order live on two different systems, and IPN is the wire between them — so a stuck order after a real payment is almost always a notification problem, not a lost sale.
The most common causes (most likely first)
- IPN is disabled or failing in the PayPal accountPayPal's IPN history shows the feature disabled, or repeated retries and failures. By far the #1 cause.
- The IPN URL is blocked or unreachableA WAF, redirect, or SSL problem means PayPal can't deliver to your notify URL — you'll see failed IPN messages.
- Receiver email mismatchThe PayPal email in WooCommerce doesn't match the account that received the funds, so WooCommerce ignores the IPN as "not for this store".
- Sandbox vs live mismatchA live payment is sent to a sandbox-configured gateway, or test mode was left switched on.
- Currency or amount mismatchWooCommerce rejects the IPN because the totals or currency don't match the order, triggering a validation fail.
Where to look first
- Confirm the money landed. Log into PayPal, verify the transaction actually succeeded, and note which account and email received the funds.
- Check the IPN history. In PayPal, open
Account Settings → Notifications → Instant payment notificationsand look for messages marked failed or stuck retrying. - Make sure IPN can reach you. Confirm IPN is enabled and the notify URL is reachable — no WAF, redirect, or SSL block — and that the WooCommerce PayPal receiver email matches the funded account.
- Recover the order. Resend the IPN from PayPal, or mark the paid order Complete manually once you've confirmed the funds landed. Neither re-takes payment.
Not sure which cause is yours?
That's the slow part — cross-checking PayPal, the IPN log and your store settings by hand. DiagnosticIQ's free dashboard surfaces failed and stuck orders on your money-path in one screen, and the AI names the exact cause — down to "PayPal IPN blocked — receiver email mismatch" — in about 30 seconds. And it keeps watching after the fix — so if IPN breaks again, you hear it from DiagnosticIQ, not from a customer.
Get the free plugin →Made by Prima Digital — the team behind this guide. Free forever; no card to install.
How to know you fixed it
PayPal's IPN history should show messages delivered with an OK status, and a fresh test order should transition to Processing on its own — without you touching it. If both hold, the IPN wire between PayPal and WooCommerce is healthy again.
Frequently asked
Do I need to refund the customer?
No — they already paid, so fix the IPN and complete the order they paid for instead of asking them to pay again.
Can I complete the order manually?
Yes — once you've confirmed the funds landed in PayPal, marking the order Complete by hand doesn't charge the customer again.
Will fixing this double-charge anyone?
No — resending the IPN or completing the order manually only updates the WooCommerce status and never re-takes payment.