More fixes

WooCommerce checkout: "no available payment methods"

A customer fills in the checkout and, where the card box should be, sees "Sorry, it seems that there are no available payment methods. Please contact us if you require assistance or wish to make alternate arrangements." (older versions add "for your state" or "for your location"). The order cannot be placed, so every visitor who sees it is a lost sale. WooCommerce shows this message when it has checked every payment method and none is allowed for this cart, address and currency. Below is a rebuilt example (not a real client), the two checks that find which rule is hiding them, and the fix for each one.

Checkout page

What the checks found


  

Check 1: which methods are really on and set up

Go to WooCommerce > Settings > Payments. Note each method whose toggle is on, and any that say Action needed, Finish set up or Test mode. A method that is switched on but has no account connected, or has live keys missing, is skipped at checkout without any warning. Also check Plugins: if a payment plugin was deactivated by an update or an expired licence, its method disappears from the list altogether.

Check 2: what is different about this customer

Open the shop in a private window, add one product and go to checkout. Change one thing at a time and watch the payment box: the billing country, the shipping method, and the cart total (add a second product). If a method appears for one country or one shipping method and not another, a limit on that method is the cause. Then look at WooCommerce > Status > Logs for a log named after your gateway (for example stripe or ppcp) or fatal-errors from the time of the failed checkout.

What each answer means

What you seeCauseFix
No method has its toggle on, or the only one on says Finish set upNothing is ready to take paymentFinish connecting your card gateway (Stripe, WooPayments, PayPal) with the live account, or switch on a simple method like Direct bank transfer while you do
The gateway is connected but in test or sandbox modeTest keys only work for test cards, and some gateways hide themselves from customers who are not admins in test modeTurn test mode off and enter the live keys from your gateway's dashboard
Methods appear for one country and not anotherThe gateway does not support that country, or WooCommerce's Selling location or a "Conditional payments" rule excludes itCheck the gateway's supported countries, WooCommerce > Settings > General selling locations, and any payment-rules plugin
Nothing shows after you changed the store currencyMany methods only work in certain currencies (PayPal does not support every currency; local methods like iDEAL or Klarna need EUR or a matching currency)Set the store currency back, or enable a method that supports the new one; multi-currency plugins need the gateway allowed for each currency
Cash on delivery shows only with some shipping methodsIts Enable for shipping methods list names only certain methods, and it is off for virtual orders unless tickedAdd the missing shipping methods to that list, or clear it to allow all
Methods vanish above or below a cart totalA minimum or maximum order amount set in the gateway (common for Klarna, Afterpay, financing) or in a rules pluginRaise or remove the limit, and keep one method that has no limit
The checkout uses the new Checkout block and a method that works in admin preview is missingThe gateway plugin is out of date and does not support the block checkoutUpdate the gateway plugin. If it still has no block support, edit the Checkout page and switch it to the classic checkout shortcode
A fatal-errors or gateway log entry at the time of the checkoutThe gateway plugin is failing, often after a WooCommerce or PHP updateUpdate the gateway plugin, or roll back the last update; the log line names the plugin
It works for you but customers still see the messageA page cache is serving an old copy of the checkoutExclude Cart, Checkout and My account from every cache (plugin, host and CDN), then purge

Check it worked

In a private window, place a real order of a cheap product with a real card (or the cheapest live method), for at least two addresses your customers use. Refund it afterwards. A test order in test mode does not prove customers can pay.

What not to do

Most of these take a few minutes once you know which one it is. If you would rather someone else finds and fixes it, that is what the box below is for. Related: WooCommerce checkout not working and WooCommerce orders stuck on pending payment.