Decline code

Generic decline: what it means and what to do

The card issuer declined the payment without saying why. What Stripe says, whether to retry, and what to ask your customer to do.

  • $29/month, flat
  • Cancel anytime
  • Restricted Stripe key only

What it means

Stripe returns generic_decline when the card was declined for an unknown reason, or when Stripe Radar or Adaptive Acceptance blocked the payment.

Card issuers report most declines this way. They discuss the specific reason only with the cardholder, so neither you nor Stripe can see it.

From Stripe’s decline codes and card declines docs.

Should you retry it?

It isn’t on Stripe’s list of hard declines, so a retry can work, and nothing about the code says to stop. With no reason to act on, the practical approach is a few well-spaced retries and a request that the customer check with their bank. Stripe recommends no more than eight.

From Stripe’s Smart Retries and card declines docs.

What to do about it

What the customer needs to do

  • Contact their card issuer to find out why the payment was declined, which is Stripe’s advice for this code.
  • Or add a different card.

What you can do

  • Check whether your own Radar rules or Adaptive Acceptance blocked the payment, since Stripe uses this code for those too.
  • If the card details are correct, ask the customer to contact their bank.
  • Give them a page where they can add another card.

What Dunity does

  • Dunity records the decline code and emails your customer once, with a link to update their card. It then retries the charge 24 hours later, up to 5 attempts.
  • Because the reason is unknown, Dunity can’t time the retry to a cause, so it uses the standard delay.
  • The dashboard files it under “Retry-worthy”.

What Dunity does is read from its code, not assumed. The whole flow is on how Dunity works, and every code is on the decline codes hub.

Generic decline questions

What people ask about this code.

Why doesn’t Stripe say more about a generic decline?

Because the card issuer didn’t. Issuers label most declines generic and share the specifics only with the cardholder, which is why Stripe’s advice is to have the customer contact their bank.

Could my own Stripe settings cause a generic decline?

Yes. Stripe uses generic_decline for payments that its Radar fraud tool or Adaptive Acceptance blocks, as well as for issuer declines with no stated reason. Open the payment in your Stripe Dashboard to see which one it was.