Skip to main content
When a payment fails in Stripe, Airdun detects the failure, assembles a recovery case, designs a strategy for that specific customer and failure type, then executes every message and retry until the payment succeeds — or the case is exhausted. The process runs without intervention once the autopilot is on.
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.