Article

WooCommerce Payment Gateway Checklist: Diagnose Failed Payments

Clean modern web development illustration for woocommerce payment gateway checks before losing orders

When a payment fails, separate three questions: did WooCommerce create an order, did the provider collect money, and did the result reach the store? Those answers help distinguish a checkout issue from a declined payment or missing notification.

Start with one documented failure

Record the order ID, time and timezone, gateway, currency, device, and exact message. Compare the WooCommerce order with the corresponding provider transaction. Avoid sharing API secrets, full card details, or customer data in support screenshots.

1. Confirm account and payment settings

  • Check the provider account can accept live payments and has completed required onboarding.
  • Confirm the enabled gateway and credentials belong to the same live or sandbox environment.
  • Review supported currencies, customer countries, products, and payment methods.
  • If the gateway is missing, check its compatibility with the Checkout Block or classic checkout in use.

2. Read order notes and logs

Open the affected order and read its notes. Then check WooCommerce → Status → Logs. Some gateway logs require logging to be enabled in that extension’s settings; enable it only as needed, with an appropriate retention period.

A provider decline should be investigated using its error code. Repeated retries may create more transactions without fixing the underlying issue. A missing order can indicate a frontend validation error or a request that failed before the payment stage.

3. Check webhooks and return URLs

If the provider shows a successful payment but the store remains pending, review webhook delivery attempts and the gateway’s configured endpoint. A firewall, staging password, incorrect endpoint, or signature mismatch can interrupt notifications.

Do not mark orders paid merely because a customer reached a thank-you page. Verify the provider transaction and the extension’s expected payment state first.

4. Isolate compatibility problems safely

Use a staging copy with sandbox credentials, outbound messages controlled, and live subscription charges prevented. Test with WooCommerce, the gateway, and a compatible theme, then reintroduce other extensions. Check browser errors, checkout requests, caching exclusions, and script optimization settings.

5. Verify the complete flow

  • Successful payment and the expected paid order status.
  • Decline, cancellation, and an interrupted payment flow.
  • Additional authentication, where applicable.
  • Order confirmation, stock changes, and customer email.
  • Webhook delivery and duplicate-event handling.
  • Subscription renewal separately from the initial payment, if relevant.

Use sandbox test methods for routine checks. Any live verification should be a controlled, authorized transaction with its fees and refund implications understood.

Read the wider WooCommerce checkout troubleshooting guide. Official reference: WooCommerce payment error troubleshooting.

Get help with implementation

For tailored implementation and testing, explore my WooCommerce development services, or send your website URL and requirements.

Need help fixing this on your website?

Need help fixing this on your website? Chat with me on WhatsApp.

Explore relevant services

Chat on WhatsApp

Need help with a website project?

Chat on WhatsApp