Checkout broken

Also searched as: payment not processing

Updated 11 October 2026

Short answer

Put your payment provider in test mode and place an order yourself, watching where it stops. If the checkout page won't load or the pay button does nothing, it's usually a JavaScript error (the browser console shows it), page caching, or a security rule. If payment is attempted but fails, it's the payment provider: wrong API keys, test mode on or off, an account needing verification, or the provider's notification back to your site (a webhook) failing.

What's the problem

Customers can't complete orders, the pay button spins forever, payments fail, or payments go through but orders don't update.

Why it happens

  • A JavaScript error on the checkout page, often from a plugin, theme or third-party script.
  • Caching of checkout pages.
  • Payment provider settings: wrong keys, test mode, or a disconnected or unverified account.
  • Webhooks failing: the provider can't tell your site the payment succeeded.
  • Shipping or tax settings that don't cover the customer's address.
  • Security rules blocking checkout requests or provider notifications.

How to fix it

  1. Place a test-mode order and note where it fails.
  2. Open the browser console on the checkout page for script errors.
  3. Exclude cart and checkout from caching.
  4. Check your payment provider's dashboard for failed attempts and their reasons.
  5. Check webhook logs in the provider's dashboard for failed deliveries to your site.
  6. For Shopify or WooCommerce, see Shopify checkout not working or WooCommerce checkout broken.

What Preventionlabs checks

One click runs the full report on your domain. For this problem it shows 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; recent deploys and account changes, with their times. It doesn't fill in forms, log in or make payments, so test the feature yourself as well.

Run your free report

Your first report is free, no card needed. Then A$50 a month, up to 10 domains. Read-only: it never changes anything.

Sources

  1. WooCommerce: WooPayments: Startup Guideofficial docsTest mode lets you simulate transactions using test card numbers so that you can ensure your checkout process is working as expected.
  2. MDN Web Docs: JavaScript error referencereferenceErrors displayed in the Web console may include a link to the corresponding page below to help you quickly comprehend the problem in your code.
← All of Broken features