When a card payment fails in Stripe, you get a short string back — insufficient_funds, do_not_honor, authentication_required. Most teams glance at it and let Smart Retries hammer the card on a schedule.

That's the mistake. The right move depends entirely on the code:

Some failures clear themselves if you retry in a few days.

Some will never clear — and retrying them can get you fined by the card networks.

Many need the customer to act, so retrying the same card is pointless.