Stripe dunning email templates

Copy-ready failed payment emails for each Stripe failure reason.

Most failed payment emails say the same thing. These templates keep the message tied to the actual Stripe decline context, so customers know whether to update a card, approve a charge, or wait for a retry.

Templates

Failed payment email examples by Stripe code

Replace the variables with your product name, Stripe-hosted update link, and sender name. Keep the message short enough that the action is obvious.

card_expiredSend within 1 hour of the failed invoice.

Expired card email

Ask for a card update without implying churn.

Why this works

Expired cards usually need customer action, so the update link should be the main call to action.

Subject

Can you update your card for {{product_name}}?

Email body

Hi {{first_name}},

We tried to renew {{product_name}}, but Stripe says the card on file has expired.

You can update the card here: {{stripe_update_link}}

Once that is done, we will retry the payment automatically. Nothing else is needed from you.

Thanks,

{{sender_name}}

insufficient_fundsSend after the first failure, then retry after a short delay.

Insufficient funds email

Keep the tone calm and avoid blaming the customer.

Why this works

For temporary balance issues, timing matters more than pressure. Give the customer an easy alternative card path.

Subject

We could not process your {{product_name}} renewal yet

Email body

Hi {{first_name}},

We could not process your latest {{product_name}} payment. Stripe reported insufficient funds on the payment method.

We will try again shortly. If you would rather use a different card, you can update it here: {{stripe_update_link}}

Your account stays active while we work through the retry.

Thanks,

{{sender_name}}

do_not_honorSend immediately after the failure, before repeated retries.

Bank-declined payment email

Explain the vague bank block and give two practical next steps.

Why this works

A generic retry can make this worse. Tell the customer why another attempt may fail unless the bank or card changes.

Subject

Your bank declined the latest {{product_name}} payment

Email body

Hi {{first_name}},

Your latest {{product_name}} payment did not go through. Stripe returned a bank decline, which usually means the bank blocked the charge.

The fastest fix is to approve the charge with your bank or add another card here: {{stripe_update_link}}

We will retry after you update the payment method.

Thanks,

{{sender_name}}

authentication_requiredSend as soon as Stripe requests authentication.

Authentication required email

Send the customer back into Stripe's hosted authentication flow.

Why this works

This is not a persuasion problem. The email should reduce friction and point directly to authentication.

Subject

Please confirm your {{product_name}} payment

Email body

Hi {{first_name}},

Your {{product_name}} payment needs a quick confirmation from your bank before it can complete.

Please confirm the payment here: {{stripe_update_link}}

After confirmation, Stripe can finish the payment and your subscription will continue normally.

Thanks,

{{sender_name}}

How to adapt a failed payment email

The best dunning email is not the most persuasive one. It is the clearest email for the exact payment failure in front of the customer.

1

Read the Stripe failure reason

Separate expired cards, insufficient funds, bank blocks, authentication failures, and customer action required events before writing the email.

2

Choose the next best action

Some failures need a retry, some need a card update, and some need the customer to approve the payment with their bank.

3

Keep the email specific

Tell the customer what happened, what to do next, and whether their account is still active during the recovery window.

4

Escalate valuable accounts

For high-MRR customers, pause automation and let a founder or operator send a personal note before access is interrupted.

Free during beta

Dunlo sends the right failed payment email automatically.

Connect Stripe, review the recovery defaults, and let Dunlo route each failure to the right message, update link, retry window, or founder escalation.

Failed payment email FAQ

What should a Stripe failed payment email include?

A Stripe failed payment email should include the payment issue in plain language, a Stripe-hosted update or authentication link, what happens next, and a calm account-status note.

Should every failed payment get the same email?

No. Expired cards, insufficient funds, bank declines, and authentication failures need different instructions. Matching the email to the failure reason usually makes the recovery path clearer.

How fast should SaaS teams email after a failed payment?

Send quickly when the customer needs to update a card or authenticate a payment. For insufficient funds, combine a clear first email with retry timing that gives the payment a better chance to clear.

How is Dunlo different from copying these templates manually?

Dunlo reads the Stripe failure context, chooses the right recovery message, routes customers to Stripe-hosted update flows, tracks recovered revenue, and flags high-value accounts for founder review.