A failed payment has one of two sources. Either the payment provider declined it (card declined, fraud check, insufficient funds), which shows in the provider's dashboard, or your site never completed the payment properly (wrong API keys, test mode on, a plugin conflict, or the provider's notification back to your site was blocked). Open the failed order in WooCommerce and read the order notes, then compare with the provider's dashboard.
What's the problem
Orders show "Failed" or stay "Pending payment", customers say their payment didn't go through, or they were charged but the order didn't update.
Why it happens
- The bank or provider declined the card, a normal part of taking payments.
- Wrong API keys, such as test keys on a live site or keys from a different account.
- Test mode left on, or off when you expected it on.
- The provider's notification (webhook) to your site is blocked or failing, so paid orders never update.
- A plugin or theme conflict interrupting the payment step.
- An outdated gateway plugin.
How to fix it
- Open the failed order and read the order notes. They usually include the provider's message.
- Look up the same payment in your provider's dashboard: declined, errored, or never received?
- If payments never arrive at the provider, check your API keys and test mode setting.
- If paid orders don't update, check the provider's webhook settings and logs, and make sure your firewall or security plugin isn't blocking them.
- Update the gateway plugin and check WooCommerce → Status → System Status.
- Place a test-mode order to confirm the fix.
What Preventionlabs checks
One click runs the full report on your domain. For this problem it shows your WordPress version and plugins against the latest releases; whether your site loads, how fast, and where its redirects go; up to 50 pages from your sitemap, listing any that fail or are slow, plus broken links on them. With Cloudflare connected, it also shows which pages returned server errors (5xx) to visitors, and when; which requests the firewall blocked, by Cloudflare's own rule names. It doesn't place orders or see your payment gateway, so check WooCommerce > Status and your gateway's logs too.
Run your free reportYour first report is free, no card needed. Then A$50 a month, up to 10 domains. Read-only: it never changes anything.
Sources
- WooCommerce: WooPayments: Startup Guideofficial docs
Test mode lets you simulate transactions using test card numbers so that you can ensure your checkout process is working as expected.
- WooCommerce: WooCommerce self-service guideofficial docs
To check if there are updates for your website, go to WooCommerce > Status > System Status , where important notifications are highlighted in red.
Preventionlabs is independent and not affiliated with WooCommerce. Product names are used only to describe the problem.
← All of WooCommerce