Payment Recovery Email Sequence: Beyond Basic Dunning

Basic dunning emails work for basic failures. "Your payment failed, update your card" is fine when someone's card expired. But what about fraud holds? Insufficient funds? Bank declines that aren't the customer's fault?
Different failure reasons need different approaches. A customer who can't pay because of a temporary cash flow issue needs a different message than someone whose bank flagged your charge as suspicious. Treating them the same leaves money on the table.
This guide goes beyond standard dunning. You already know to send emails when payments fail. This covers what to say based on why they failed, and how to recover revenue that generic sequences miss.
Why Generic Dunning Underperforms
Most payment recovery sequences treat all failures the same:
- Payment failed
- Please update your card
- Your account will be suspended
- Final warning
This works for some failures. But payments fail for many reasons, and each reason has a different solution:
| Failure Reason | Generic Approach | Better Approach |
|---|---|---|
| Card expired | Update card | Update card |
| Insufficient funds | Update card | Wait and retry, offer alternatives |
| Card declined | Update card | Contact bank, try different card |
| Fraud flag | Update card | Contact bank, verify merchant |
| Network error | Update card | Automatic retry, no email needed |
| Do not honor | Update card | Different card or payment method |
The generic approach gets maybe 25-35% recovery. A targeted approach based on failure reason can hit 45-60%.
Understanding Payment Failure Codes
Before we dive into templates, understand what you're working with. Stripe and other processors return decline codes that tell you why a payment failed.
Common decline codes and what they mean:
| Code | What It Means | Customer Action | Your Approach |
|---|---|---|---|
card_declined | Bank declined, reason unspecified | Contact bank or try different card | Offer alternatives |
insufficient_funds | Not enough money | Add funds or try different card | Wait before retry, be tactful |
expired_card | Card is expired | Update to new card | Direct, simple |
incorrect_cvc | Wrong security code | Re-enter card details | Simple fix |
processing_error | Technical issue | Try again | Retry automatically |
do_not_honor | Bank won't approve | Contact bank | Explain what happened |
lost_card / stolen_card | Card reported lost/stolen | Use different card | Don't mention status |
fraudulent | Bank suspects fraud | Contact bank | Delicate handling |
The key insight: your response should match the failure reason, not just blast the same message regardless.
Pre-Failure Prevention Emails
The best recovery is preventing failures in the first place. Pre-emptive communication catches problems before they cause churn.
Card Expiration Warnings
Early warning for card update
Heads up: Your card expires next month
Hi [firstName],
Quick heads up: the card we have on file for your [productName] subscription expires next month ([expirationDate]).
Your next billing date is [nextBillingDate]. If you update your card before then, everything continues smoothly.
Update your card: [updatePaymentLink]
Takes about 30 seconds.
If you've already gotten a new card with the same number, you still need to update the expiration date in our system.
[senderName]
Failure-Specific Recovery Sequences
Here's where we get targeted. Different failure reasons need different messages.
Insufficient Funds
This is sensitive. You're essentially pointing out that someone doesn't have enough money. Handle with care.
Initial insufficient funds notification
Issue with your [productName] payment
Hi [firstName],
We tried to process your [productName] subscription payment of [amount], but it didn't go through.
This sometimes happens when:
- There's a temporary hold on your account
- A large purchase affected your available balance
- Your bank has daily spending limits
Here's what happens next:
- We'll automatically retry in [X] days
- You don't need to do anything if funds will be available then
- Or, you can switch to a different card: [updatePaymentLink]
Your account remains fully active during the retry period.
If you'd like to discuss payment options, just reply to this email.
[senderName]
Bank Declines (Do Not Honor / Card Declined)
When banks decline without a specific reason, customers need to contact their bank. Your email should explain this clearly.
When bank declines without reason
Your bank declined the payment for [productName]
Hi [firstName],
We tried to charge your card for [amount], but your bank declined it. They didn't tell us why.
This usually happens because:
- Your bank flagged it as unusual activity
- There's a security hold on your account
- The card has restrictions on recurring payments
What to do:
- Call the number on the back of your card
- Tell them you're trying to pay for a subscription to "[productName]" / "[companyName]"
- Ask them to approve the charge
- Reply to this email once you've spoken with them, and we'll retry
Alternatively, you can add a different payment method: [updatePaymentLink]
If you need help, just reply. We've seen this before and can guide you through it.
[senderName]
Fraud Flags
Fraud flags require extra care. The customer's bank thinks something suspicious is happening. You need to reassure both the customer and help them clear the flag.
When bank flags charge as potentially fraudulent
Your bank flagged your payment (don't worry, it's legit)
Hi [firstName],
Your bank declined your [productName] payment because it was flagged for potential fraud. Don't worry, this is common with subscription services, and it's definitely a legitimate charge.
What happened: Your bank's fraud detection thought this charge was suspicious. This happens sometimes with:
- New subscriptions
- Charges from unfamiliar merchants
- Recurring payments from tech companies
How to fix it:
- Call your bank (number on the back of your card)
- Tell them: "I'm trying to pay for a subscription to [productName]. Please approve charges from [companyName]."
- They may ask you to confirm recent activity
- Reply to this email once cleared, and I'll retry the charge
This is annoying, I know. But it's actually your bank looking out for you. Once you clear it, future payments should go through fine.
[senderName]
Card Network Errors and Processing Issues
Sometimes the failure has nothing to do with the customer. These need different handling.
When failure is technical, not customer-related
Technical issue with your payment (we're on it)
Hi [firstName],
There was a technical issue processing your [productName] payment. This isn't anything you did wrong, it's a processing error on our end or with the card network.
What we're doing:
- We'll automatically retry in 24 hours
- You don't need to take any action
- Your account stays fully active
If the retry fails, I'll reach out again. But most technical errors resolve themselves on the next attempt.
Thanks for your patience.
[senderName]
The Escalation Sequence
For all failure types, you eventually need to escalate if the issue isn't resolved. Here's how to do it without alienating customers.
Warning before account restriction
Your [productName] access will be limited in [X] days
Hi [firstName],
We've tried [X] times to process your payment over the past [Y] days without success.
If we can't resolve this in the next [X] days:
- Your account will be downgraded to limited access
- You'll lose [specific features]
- Your data will be preserved, but you won't be able to [key action]
To keep full access:
- Update your payment method: [updatePaymentLink]
- Or contact us about alternatives: Reply to this email
I genuinely want to help resolve this. If there's something going on that a simple card update won't fix, let me know. We can figure something out.
[senderName]
Payment Recovery Best Practices
Response Time Matters
| Timing | Recovery Rate Impact |
|---|---|
| Immediate (< 1 hour) | Baseline |
| Same day (< 24 hours) | -5% |
| Next day | -10-15% |
| 2-3 days | -25% |
| Week+ | -50% |
Send the first notification within an hour of failure. The longer you wait, the lower your recovery rate.
Retry Timing Strategy
Don't retry immediately after a failure. Give time for temporary issues to resolve:
| Failure Type | First Retry | Second Retry | Third Retry |
|---|---|---|---|
| Insufficient funds | 3-5 days | 5-7 days | 7-10 days |
| Bank decline | 1-2 days | 5-7 days | 10-14 days |
| Technical error | 24 hours | 3 days | 7 days |
| Card expired | After update | After update | After update |
Payment Method Alternatives
Always offer alternatives when cards fail repeatedly:
- Different card: The most common solution
- PayPal/digital wallets: Bypasses bank issues
- Bank transfer/ACH: For larger amounts or B2B
- Annual prepay: Reduces failure frequency
- Invoice billing: For enterprise customers
Measuring Payment Recovery
Track these metrics to optimize your sequences:
| Metric | What It Measures | Target |
|---|---|---|
| First-attempt recovery | % resolved after first email | > 20% |
| Overall recovery rate | % of failed payments recovered | > 45% |
| Time to recovery | Days from first failure to resolution | < 7 days |
| Retry success rate | % of automatic retries that succeed | > 30% |
| Voluntary churn from payment | % who cancel after payment issues | < 10% |
The Bottom Line
Generic dunning treats symptoms. Targeted payment recovery treats causes.
When you know why a payment failed, you can send the right message. Card expired? Simple update request. Fraud flag? Bank contact instructions. Insufficient funds? Tactful options and patience.
The extra effort of segmenting by failure reason typically increases recovery rates by 15-25%. For a SaaS doing $1M ARR with 5% monthly payment failures, that's an extra $75-125K in recovered revenue annually.
If you're using Stripe and want to automate failure-specific sequences, Sequenzy integrates with Stripe webhooks to trigger the right email based on the decline code. No more one-size-fits-all dunning.
For the foundational dunning sequence, check out our complete guide on dunning email sequences. And if you want to understand the full picture of Stripe integration, our Stripe email integration guide covers all the events worth triggering emails from.
Stop leaving money on the table. Start recovering it.