Payment Failed → Recovery

NodeBill
Nodebill
10 templates
Workflow preview
Dunning automation

Smart dunning workflow with retry logic and escalation. Recover failed payments automatically and reduce involuntary churn.

Connections

Categories

Payment recoveryDunningChurn prevention
The problem

Involuntary churn is killing your MRR. 20-40% of failed payments are recoverable, but most companies don't have a systematic dunning process. Manual follow-up is inconsistent, often too late, and burns out your team. Meanwhile, good customers churn simply because their card expired.

Statistics

20-40%

Failed payments are recoverable with proper dunning

$50K+

Annual MRR lost to involuntary churn (avg SaaS)

8 hrs/week

Wasted on manual payment follow-up

How it works
1
Trigger
Payment Fails in Stripe

A subscription payment fails (card declined, insufficient funds, expired card, etc.). Stripe sends a webhook to NodeBill with failure details.

2
Condition
Check Failure Type

Analyze the failure reason. Is it a temporary issue (insufficient funds) or permanent (card expired, fraud)? Route accordingly.

3
Action
Temporary Issue: Schedule Smart Retry

For temporary failures, schedule a retry in 3 days. Use Stripe Smart Retries which optimize timing based on when the customer typically has funds available.

4
Action
Send Initial Reminder Email

Send a friendly email to the customer letting them know payment failed and will be retried. Include a link to update their payment method.

5
Condition
First Retry Fails: Escalate

If the first retry also fails, escalate the issue. Send a more urgent email and notify the customer success team in Slack with customer context from HubSpot.

6
Action
Update CRM with Payment Status

Mark the customer as "Payment at Risk" in HubSpot. Create a task for the CSM to reach out personally. Log all payment attempts and customer communication.

Real use case
Marketing SaaS Platform ($8M ARR)
Mid-market email marketing platform with 2,000+ customers

Challenge. Experiencing 3-5% monthly involuntary churn. Customer success team manually followed up on failed payments, but response time was inconsistent (3-7 days) and many customers fell through the cracks.

Solution. Implemented automated dunning workflow with smart retries, graduated email escalation, and CSM notification for high-value accounts.

Results:
  • Recovered 62% of failed payments (up from 35%)
  • Reduced involuntary churn from 3.5% to 1.2%
  • Saved $180K in annual MRR that would have churned
  • CSM team freed up 8 hours/week for proactive customer work
  • Average recovery time decreased from 5 days to 48 hours
Required Integrations
TriggerAction

Listen for payment failures and trigger retries

Webhooks
invoice.payment_failedinvoice.payment_succeeded
Action

Update customer status and create CSM tasks

Recommended
Customer contextTeam coordination
Action

Alert CSM team for high-value accounts

Optional
Team notificationsEscalation alerts
Action

Send dunning emails to customers

Required
Transactional emailAPI access
Setup Instructions
1
Connect Stripe

Link your Stripe account to receive payment failure webhooks in real-time.

2
Configure retry logic

Set up retry intervals and escalation thresholds based on your dunning policy.

3
Customize email templates

Edit the dunning email sequence to match your brand voice and include update payment links.

4
Set up team notifications

Connect Slack for CSM alerts on high-value accounts approaching cancellation.

i
Pro Tip

Don't retry immediately. Wait 3-5 days when customers typically have funds. Use Stripe's machine learning to optimize retry timing based on historical patterns.

Dunning Best Practices Built-In
Smart Retry Timing

Don't retry immediately. Wait 3-5 days when customers typically have funds. Use Stripe's machine learning to optimize retry timing based on historical patterns.

Graduated Messaging

Start with a friendly reminder. Escalate tone and urgency over time. Final email should clearly state cancellation date and service impact.

Human Escalation

For high-value accounts or after multiple failures, involve the CSM team. Automated alerts in Slack with full customer context from CRM.

Failure Analysis

Track failure reasons (expired card, insufficient funds, fraud) and adapt messaging. Different problems need different solutions.

Example Email Sequence
Day 0: Initial Notification
Friendly tone
Subject: Quick heads up about your [Product] subscription

Hi [Name],

We tried to process your payment for [Product] but it didn't go through. This happens sometimes!

We'll automatically retry in a few days. If you'd like to update your payment method now, click here: [Link]

No action needed if your card info is up to date.

— The [Company] Team
Day 7: First Escalation
More urgent
Subject: Action needed: Update your payment method

Hi [Name],

We've tried processing your payment a few times but haven't been able to collect it.

To avoid any interruption to your [Product] service, please update your payment method within the next 7 days: [Link]

Questions? Reply to this email and we'll help you out.

— The [Company] Team
Day 14: Final Warning
Urgent
Subject: [URGENT] Your [Product] subscription will be cancelled in 7 days

Hi [Name],

This is a final reminder that we haven't been able to process your payment.

If we don't receive payment by [Date], your subscription will be cancelled and you'll lose access to:

• [Feature 1]
• [Feature 2]
• All your data and settings

Update your payment method now to keep your account active: [Link]

Need help? Reply to this email or call us at [Phone].

— The [Company] Team

Stop losing MRR to failed payments

Set up automated dunning in under an hour. Recover more revenue with less manual work.

Use this template for free
Team collaborating on a billing workflow
Payment Failed → Recovery Template - NodeBill | Nodebill