Stripe “Your card was declined”: Why It Happens and How to Fix It
Many online services take card payments through Stripe, so “Your card was declined” at checkout is one of the most common payment errors. The decline can come from the card issuer, or from the merchant’s Stripe fraud rules before the issuer ever sees the payment, and the checkout rarely says which. Here is how to find the real cause, using Stripe’s own documentation and what we see in our card data.
- “Your card was declined”
- “Your card’s security code is incorrect”
- “Your card was declined. This transaction requires authentication.”
First, find out who declined it
Stripe’s documentation lists three reasons a payment can fail: the card issuer declines it, Stripe blocks it (for example with its Radar fraud rules), or the merchant’s request to Stripe is invalid. When Stripe blocks a payment, it does not ask the card issuer at all.
| What you find | What it means | What to do |
|---|---|---|
| A declined attempt in the card’s transaction list, with a reason | The card side declined it, and the reason is right there | Fix that cause (see our card data below), then retry once |
| No record at all on the card | The payment never reached the card: a mistyped card number, or the merchant’s Stripe rules blocked it | Re-check the card number; if it is right, contact the merchant or pay with a card on another range or network |
| A 3D Secure prompt, or “This transaction requires authentication” | The issuer asked for extra verification | Complete the verification, then retry |
What Stripe’s decline codes mean
Behind the short message, the merchant’s Stripe account receives a decline code. You usually do not see it, but the merchant’s support can look it up. These are the codes you are most likely to meet, with Stripe’s own descriptions:
| Decline code | Stripe’s description | What to check on your card |
|---|---|---|
| generic_decline | “The card was declined for an unknown reason or Stripe Radar or Adaptive Acceptance blocked the payment.” | The card’s transaction list: a record with a reason, or no record at all |
| insufficient_funds | “The card has insufficient funds to complete the purchase.” | The card balance, with headroom for tax and currency conversion |
| card_velocity_exceeded | “The customer has exceeded the balance, credit limit, or transaction amount limit available on their card.” | The card balance and limit |
| incorrect_cvc, expired_card, incorrect_number | A card detail did not match | Re-enter the details exactly as shown on the card detail page |
| card_not_supported | “The card doesn’t support this type of purchase.” | Whether the card supports this kind of merchant; try a card on another range |
| do_not_honor, transaction_not_allowed | “The card was declined for an unknown reason.” | An issuer rule; try a card on another range and contact support |
| authentication_required | The transaction requires authentication such as 3D Secure | Complete the verification when the checkout asks for it |
For some codes, such as fraudulent, lost_card and stolen_card, Stripe tells merchants not to report more detailed information to the customer and to present them like generic_decline. Stripe also notes that card issuers classify most declines as generic and discuss the specifics only with their cardholders. That is why so many checkouts just say “Your card was declined”.
What our card data shows
We cannot see which payment processor a merchant uses, so these figures cover every merchant where our cards were used over the last 90 days (2026-08-07 to 11-04), counted per person. About 46% of people had at least one payment declined, and about 62% of them paid successfully within 7 days of their first decline. These are the causes they ran into (one person can hit more than one):
| Decline cause | Share of declined people | What to do |
|---|---|---|
| Card balance or limit below the charge | about 81% | Top up the card before the charge, with headroom for tax and currency conversion |
| Card details mistyped (number, expiry, CVC) | about 23% | Paste the details with the copy buttons on the card detail page; mind the month / year order |
| The card does not support the merchant’s category (for example games, digital content or streaming) | about 16% | Use a card on a range that supports this kind of merchant |
| Card status (frozen, not activated or closed) | about 11% | Check the status on the card detail page and pay with a card in good standing |
| Issuer risk rules, or a merchant the issuer does not allow for this card | about 8% | Try a card on another BIN range or network, and contact support |
| Unknown or temporary upstream error | about 8% | Wait a while and retry once; contact support if it happens again |
| The merchant does not accept the card’s country | about 1% | Try a card issued in another country |
How to fix it
- Open the card’s transaction list. A declined attempt usually shows the reason; if there is no record at all, the attempt never reached the card
- If the balance or limit was short, top up the card and leave headroom for tax and currency conversion
- Re-enter the card number, expiry, CVC, cardholder name and billing address exactly as shown on the card detail page; watch out for browser autofill
- If the reason is that the card does not support the merchant’s category, use a card on a range that supports this kind of merchant
- If the checkout asks for 3D Secure: on cards that support it, the code appears on the card detail page, and some ranges send it to your email instead
- If the details are right and nothing reached the card, the merchant’s Stripe rules may have blocked the payment. Stripe’s rules can, for example, “block payments made with prepaid cards” or allow payments only from particular countries, and only the merchant can change them: contact the merchant, or pay with a card on another range or network
- Still stuck? Contact our support with the merchant name, the time, the amount and the last 4 digits of the card
Retry without making it worse
- Fix the cause before you retry: trying again with nothing changed gets the same result
- Stripe warns that card networks limit how many times a charge can be retried, and that “Card issuers might see creating additional retries as potential fraud”. Stop after 2 declines in a row and find the cause first
- Some of our card ranges charge $0.50 or $0.60 per declined payment and others charge nothing; the card-opening page shows the fee for each range before you choose
FAQ
Why doesn’t Stripe tell me why my card was declined?
Do Stripe checkouts accept prepaid or virtual cards?
My card has money on it. Why was it declined?
Is it safe to keep retrying a declined payment?
What does “This transaction requires authentication” mean?
Official sources
Related reading
Last updated 2026-11-06 · Facts checked 2026-11-06 · RDVCC Payments Research
Need a card that works?
Prepaid Visa and Mastercard from $1 · 7×24 support