Failed Payment Recovery
Windback detects failed payments from your billing provider and runs a smart dunning sequence to recover the revenue automatically.How Dunning Works
1
Detect
Windback receives a webhook from your payment provider when a payment fails (e.g.,
invoice.payment_failed from Stripe).2
Create Record
A payment failure record is created for the customer, capturing the amount, currency, failure reason, and attempt count.
3
Dunning Sequence
Windback begins a configurable retry sequence. Each retry is spaced according to your
retry_interval_hours setting.4
AI Emails
Between retries, Windback sends AI-generated emails to the customer encouraging them to update their payment method. The tone escalates across the sequence based on your
tone_sequence setting.5
Resolution
The process ends when the payment succeeds (status:
recovered), or all retries are exhausted (status: abandoned).Supported Webhook Events
Windback listens for the following events from your payment provider:When Windback receives a success event for a customer with an active dunning sequence, the sequence is stopped automatically and the record is marked as
recovered.Payment Failure Statuses
Dashboard Overview
The Failed Payments page in your project dashboard shows:Recovery Stats
Total failed payments, recovery rate, and revenue recovered over the selected time range.
Active Sequences
Customers currently in a dunning sequence with their status, retry count, and next retry time.
Failure Breakdown
Common failure reasons (card declined, insufficient funds, expired card) with counts.
Email Performance
Open rates and click-through rates for dunning emails, broken down by sequence step.
API Endpoints
List Payment Failures
Get Failure Detail
Retry a Payment Manually
Get Recovery Stats
Dunning Configuration
Get Current Config
Update Config
Configuration Fields
Setup Instructions
1
Connect Your Payment Provider
Add the Windback webhook URL to your payment provider. See Quickstart for the full URL format.
2
Verify Sender Domain
Dunning emails require a verified sender domain. Go to Settings > Email in your project dashboard to configure one.
3
Configure Dunning Settings
Navigate to Settings > Failed Payments or use the API above to set your retry count, interval, and tone sequence.
4
Test with a Failing Payment
Use your payment provider’s test mode to trigger a
payment_failed event and confirm the dunning sequence starts.Windback never initiates actual payment charges. Retries are triggered through your payment provider’s API, so all charges follow your existing billing rules and PCI compliance setup.