Handle a failed payment in Shopify
A failed payment is a symptom, not one diagnosis. The card issuer may decline, the billing address may not match, 3-D Secure may be incomplete, a gateway may be unavailable, or your own store setup may be the problem. The first move is always the same: open the checkout timeline and read the payment event message, because it tells you who can fix it.
Written · Shopify admin, desktop steps · 5 minutes read
The worked example
| Order | $95.00, card declined at checkout |
| First move | Orders > Abandoned checkouts > timeline |
| Customer fix | Contact bank, or use another card |
| Store fix | Missing provider, wrong gateway credentials |
| Pending charge on the statement | Reverses in 3 to 5 business days |
| Recovery | Send the checkout link again, do not create a duplicate order |
Download the record: failed-payment-log.csv (212 bytes).
A log of the failed payments in this tutorial, with the cause, who can fix it, and the outcome. Two of the three orders recovered, for $190.00 of the $285.00 at stake.
1Open the abandoned checkout
From your Shopify admin, go to Orders, then Abandoned checkouts, and select the checkout. For an order that exists, inspect its order timeline and transactions instead.
2Read the payment event message
Expand the payment event and review its Message field. Shopify lists the reasons for a failed payment there: a card declined by the processor, a 3-D Secure failure, a technical processing failure, an incorrect card number or expiry or CVV, a postal or billing mismatch, or a block for high fraud risk.
3Sort customer-side from store-side
Most declines are the customer's card details, the card issuer, or 3-D Secure. The store-side causes Shopify documents are a missing primary payment provider, wrong third-party gateway credentials or setup, no shipping rate, an outage, or an unavailable item or discount. In this tutorial checkouts A-101 and A-102 are customer-side, and A-103 is a store-side gateway credential problem.
4Act on the cause
If the card information seems correct, it is best to have your customer contact their bank, ask for more information, and ask for future charges to be accepted. If the cause is store-side, fix your payment gateway settings and credentials, or add the missing shipping rate, before you send anyone back to checkout.
5Recover the order once, not twice
Send the customer the checkout link again so they can complete the same checkout. Do not create a duplicate order for them: a second order risks a second charge, and the first checkout is still there waiting to be completed.
6Answer the pending charge question
If the customer says they were charged anyway, check whether an order matching the charge amount exists. If no order exists, explain that the charge is likely a pending authorization from a failed payment attempt, and that it should automatically reverse within 3 to 5 business days.
The arithmetic
All three checkouts are $95.00, so the recovery rate is easy to read:
| Checkout | Amount | Cause | Recovered |
|---|---|---|---|
| A-101 | $95.00 | Card declined | $95.00 |
| A-102 | $95.00 | Billing mismatch | $95.00 |
| A-103 | $95.00 | Gateway credentials | $0.00 |
| Total | $285.00 | Two of three | $190.00 |
The three checkouts total $285.00. The two customer-side failures recovered for $190.00. The store-side failure recovered $0.00 until the gateway credentials are fixed, because no customer can pay through a gateway whose credentials are wrong.
Held at the counter
A previously good card can still decline. Even if all the card information is correct, and your customer previously had a successful payment, a new charge can still be declined by a bank's fraud systems. Do not tell a customer their card must be wrong: the bank's signals change constantly.
A pending charge is not a charge. Many banks display charges immediately when an attempt for payment is made, even if that payment fails. Most of the time, failed payment attempts appear as pending charges, and they reverse in 3 to 5 days. Check for an order before you refund anything.
High-risk blocks are yours, not the customer's. If the timeline says the checkout was blocked due to a high risk of fraud, retrying with the same payment and billing details will not fix it: Shopify evaluates risk on each attempt, so a retry with different payment or billing details might not be blocked. If you know the customer and want to complete the sale, create a draft order and send them an invoice instead.
Sources
- Understanding declined payments — Shopify's help pages: why payments are declined, the bank signals behind a decline, and the advice to have the customer contact their bank.
- Understanding pending charges and failed payment attempts — Shopify's help pages: pending charges from failed attempts, the 3-to-5-day reversal, and the steps when a customer reports an unrecognized charge.