My customers can no longer pay or finish their order
A blocked payment is measured in hours, not days. The good news is the chain is short and each link fails with its own signature — including the checkout steps before payment, where plenty of orders actually stop. The bad news is that the first reflex — calling the bank — is almost always the wrong entry point, because the failure is rarely there.
The five links in the chain
An online payment goes through five distinct stages. The payment module must appear among the offered methods. It must then build the request and redirect the customer, or display the entry form. The payment provider processes the transaction with the bank. It returns the customer to the shop. Finally it notifies the site through a technical call independent of the browser, and that call is what triggers recording the order.
Each stage has its symptom. A payment method that no longer appears: the module has deactivated, or a display condition is no longer met. A redirected customer coming back with nothing: the return is misconfigured. A payment taken with no order recorded: the technical notification is not arriving. That last one is the costliest, because it stays invisible until a customer complains.
What your customer describes
- "There is no payment method at the final step": the module is not displaying — deactivated, incompatible after an update, or restricted by country, currency or amount.
- "It spins and then goes back to the basket": the redirect to the provider fails, often because an identification key has expired.
- "My card is refused": the transaction does reach the bank, the failure is downstream of the site.
- "I was charged but got no confirmation": the return notification was not processed, the order stays pending.
When the block sits before payment
Before blaming payment, check that customers actually reach it. A checkout blocking at the address or delivery step produces exactly the same complaint — "I can't place an order" — with no payment module involved. The step where the stops concentrate almost always names the cause.
- At the basket: contents do not update, or disappear — a session or cookie problem, or a page cached when it must never be.
- At account creation: over-strict field validation, a confirmation email that never arrives, or an anti-robot check refusing everyone.
- At the address: format checks unsuited to some countries, or a required field made invisible by the theme.
- At delivery: no method offered for the weight, country or basket total — that is a carrier rule, not a failure.
- At the summary: a badly placed terms checkbox, or a validation button that only reacts on the second click.
One last distinction avoids hunting a failure that does not exist. A decision not to buy spreads out: of a hundred visitors reaching the delivery step, some continue and some leave, which is worked on through price, lead times or clarity. A technical block does not spread: nobody gets through, or only visitors with a specific profile — a country, a browser, a delivery method, an amount. If the progression rate from one step to the next fell sharply on an identifiable date, it is technical; if it erodes slowly, it is commercial.
Isolating it in five checks
-
Place a test order as a customer
All the way through, logged out, in private browsing, on mobile and desktop, using the provider's test mode if available. A logged-in admin account bypasses rules that block everyone else, and the exact point where it stops is worth every report.
-
Open the browser console
A script error disables a button without showing any message on screen. It is the most frequent cause of an unresponsive validation button, and it leaves no trace on the server side.
-
Open the provider dashboard
It lists received transactions, including failed ones and why. If a transaction is there but not in the shop, the failure is in the notification.
-
Check the keys and the mode
A shop left in test mode takes no money. Test keys in production, or the reverse, cause systematic rejection.
-
Check display restrictions
Delivery country, currency, customer group, minimum amount, chosen carrier: each can hide a payment method with no error message at all.
Carry on with the right page
-
Payment problems on PrestaShop
PrestaShop-specific causes, module by module.
-
Payment problems on WooCommerce
The WordPress equivalent, with its own specifics.
-
Configuring a payment webhook
If the technical return notification is at fault.
-
The payment gateway explained
The exact role of each party in a transaction.
-
The checkout explained
The standard steps, and what each one actually verifies before letting a customer through.
Describe your need in one minute
A few targeted questions so I can reply with an estimate rather than another questionnaire.