Stripe decline code

insufficient_funds

The card is valid, but the account doesn't have enough money to cover the charge at the moment it was attempted.

Primary source: Stripe’s official decline codes reference

Why it happens

  • The customer's balance is temporarily low (e.g. just before payday).
  • A debit card with a daily spending limit was hit.
  • The renewal landed at an inconvenient point in the customer's billing cycle.

Should you retry it?

Yes — retrying usually recovers it

The card itself works, so the same card often succeeds once the balance recovers. This is one of the most recoverable decline reasons.

How to recover it

Retry on a schedule that gives the balance time to recover, and email the customer so they can top up or switch cards if needed.

Stripe's retry schedule is usually well-timed for balance recovery. If the invoice is still unpaid after it ends, Recoverly opens a case and — with your approval — emails the customer a Stripe-hosted payment page so they can pay or switch cards.

See how much failed-payment revenue you can recover

Connect Stripe (we only read) and Recoverly shows your recoverable revenue in 30 seconds.

Related decline codes

Written by the Recoverly team · Published June 25, 2026 · Last reviewed July 17, 2026

Recoverly finds invoices Stripe’s retries left unpaid and — with your approval — sends payment-update emails, then verifies what actually came back. This page is informational and not affiliated with Stripe.