1
Failed payment detected
Airdun listens to your Stripe webhook stream. Every
payment_failed event is caught when Stripe reports it — no polling delay, no manual import.2
Recovery case created
Airdun opens a case and enriches it with the failure reason and Stripe error code, customer identity and language, subscription value, product-usage signals, available outreach channels, and patterns from similar cases processed across the platform.
3
Recovery strategy designed
The algorithm weighs the case context — failure type, customer history, channel performance, timezone — to build a multi-touchpoint plan. Each touchpoint is ordered, timed, and assigned to a channel.
4
Plan executed
Each message goes out in the customer’s language, at a sensible local time, with a direct link to a one-click card-update flow. The sequence stops the moment payment succeeds.
Properties of the model
Per-case personalization
Each case is evaluated individually. Failure reason, customer value, language, and usage patterns shape the messages and the timing.
Multi-channel orchestration
Email, in-app messaging, SMS, WhatsApp, and Stripe retries are sequenced in a single plan, with the channel order chosen per case.
Auto-stop on recovery
When a payment succeeds, Airdun closes the case and cancels any pending messages.
Communal learning
Case outcomes across all connected accounts feed back into the algorithm in anonymized form. See Recovery Strategy.
