Stripe · Decline codes
What does the Stripe lost_card decline code mean?
Checked
The Stripe decline code lost_card means the card's bank refused the payment because the card has been reported lost. The card will not work again, so retrying is pointless. Stripe says not to reveal the specific reason to the customer: show it as an ordinary decline (generic_decline) and ask for another payment method. The real cardholder can get a replacement from their bank.
- Type
- Hard decline
- Who declined
- The card's bank
- Retry
- No, never on this card
- Shopper action
- Pay with a different card
- Merchant action
- Show a plain decline; don't mention 'lost'; review the order if other signals look odd
- PlatformDTC renewal
- No retry; held past due with an update-card link
What PlatformDTC does
PlatformDTC never retries lost_card and never moves it to a backup processor at checkout; the shopper sees only the generic hint "Your card was declined. Try another card or contact your bank.", never that the card was reported lost. On renewals, on the fixed schedule or with Smart retry, it is not retried: the subscription is held past due rather than cancelled, and the customer receives a one-click link to add a new card, re-sent up to 4 times per billing cycle, at least 3 days apart.
Why it happens
The cardholder told their bank the card was lost, and the bank blocked it. Any payment on that card number is refused from then on.
Sometimes the person paying is the real owner using an old card they forgot they reported. Sometimes it is someone who found or took the card. Either way the result is the same: this card cannot pay.
What the shopper can do
Use a different card, a wallet or another payment method. If this was your own card, contact your bank about a replacement.
What the store can do
Show a neutral message such as "Your card was declined" and offer other ways to pay. Stripe asks you not to say the card was reported lost.
Do not retry the same card. If the same shopper tries several cards in a row, treat the order with care before shipping.
For developers
Stripe returns decline_code = lost_card; present it to the customer as generic_decline. If charge.outcome.network_decline_code on a Visa card is 41 (lost card, pick up), that is a Category 1 code: Visa's rules say a merchant must never resubmit an authorization for the same payment credential after a Category 1 decline.
Stop any scheduled retries for the payment method and request a new one.
Frequently asked questions
- Can I retry a lost_card decline later?
- No. The bank has blocked the card. Every further attempt will fail, and for Visa's never-approve codes such as 41 the rules forbid resubmitting the same card.
- Should I tell the customer their card was reported lost?
- No. Stripe recommends presenting lost_card the same way as a generic decline and simply asking for another payment method.
- Does lost_card mean fraud?
- Not always. The real owner may be using a card they reported lost. But the payment cannot go through on that card either way.
Sources
Related
- stolen_card — The card has been reported stolen. It can't be used again.
- pickup_card — The card can't be used for this payment; it may have been reported lost or stolen.
- restricted_card — The card can't be used for this payment; it may have been reported lost or stolen.
- generic_decline — Declined for an unknown reason, or blocked by Stripe Radar or Adaptive Acceptance.
- fraudulent — Stripe's fraud checks suspected the payment was fraudulent and blocked it.
- merchant_blacklist — The payment matched an entry on the store's own Stripe block list.
- new_account_information_available — The card or its account is invalid; the bank may hold newer details for it.
- no_action_taken — The card was declined for a reason the bank did not share.