Free WordPress site audit. Public-site review and a fixed quote when work is appropriate. Request a rescue audit →

WooCommerce checkout

WooCommerce Checkout Is Not Working

You can diagnose most checkout failures without placing a real paid order. Look at the browser console, the checkout XHR, cache headers, and the gateway sandbox.

Direct answer

Checkout fails in layers: the page does not load, the Place order button does nothing, the request returns 403/500, or the gateway declines. Full-page cache on /cart/ or /checkout/ is a frequent silent cause. A cached nonce or a cached empty cart looks like “it works for me in a private window yesterday.”

How we diagnose without placing an order

  1. Open checkout as a guest in a private window. Do not complete a paid order on production. Use sandbox keys or a $0 coupon on staging.
  2. DevTools → Network. Click Place order. Inspect the admin-ajax.php or Store API /wc/store/v1/checkout response. A 403 from ModSecurity or a Cloudflare challenge is not a “Woo bug.”
  3. Response headers: if x-cache, LiteSpeed, or cf-cache-status: HIT appears on cart or checkout, exclude those URLs from the page cache. The free health checker flags public cache clues on shopper paths when they are visible.
  4. Console errors: a theme or optimization plugin often minifies checkout JS and breaks the payment iframe.
  5. If the order is created but payment never captures, that is gateway/webhook work, not a missing SSL certificate on the homepage.

What not to do

  • Do not place real customer-funded orders to “see if it works.”
  • Do not disable all security plugins on a live store as the first step.
  • Do not minify checkout scripts site-wide to chase a Lighthouse score.

WooCommerce Checkout Rescue from $249. Final quote after diagnosis.

WooCommerce development · bug fixing · order emails

Broken or slow WordPress? Get a free site audit and a fixed quote after review.
Free audit