What every Stripe decline code means, and what to do about it.

A card fails and Stripe gives you a code. Each guide says what that code actually means, whether Stripe's own retries will fix it on their own, the bank codes you may see next to it, and the exact email to send if they don't — the same email MRRdue writes inside the product.

insufficient_funds

Insufficient funds

insufficient_funds is the most recoverable Stripe decline. When to wait for Stripe's retry, when to email, and the exact recovery email to send.

Read the guide

expired_card

Card expired

Expired cards won't fix themselves with retries. How to get customers to update their card, plus the exact recovery email template and a pre-dunning tactic.

Read the guide

authentication_required

Authentication required

3D Secure / SCA declines need the customer to act, no retry will fix them. The recovery email that gets authentication completed, and why these cases are urgent.

Read the guide

card_declined

Card declined

The bank said no and won't say why. How to work generic card declines: what to rule out, when to ask for another card, and the recovery email to send.

Read the guide

payment_method_missing

Missing payment method

No card on file means no retry will ever succeed. How subscriptions end up with no payment method, and the email that gets a card attached.

Read the guide

do_not_honor

Do not honor

do_not_honor is the most common Stripe decline nobody can explain: the bank refused and gave no reason. What it actually means, why retries sometimes work anyway, and the email to send.

Read the guide

transaction_not_allowed

Transaction not allowed

transaction_not_allowed means the bank refused this kind of transaction on this card — often recurring or card-not-present. Why retries will not help, and what to ask the customer.

Read the guide

Free resource

Recovery email template gallery

Every failed-payment and retention-risk email template MRRdue ships, free to copy, no signup required.

Browse templates