This page explains how the Failed Payment Recovery Pack maps onto a Stripe environment. If you use Stripe Billing for subscriptions or invoicing, the pack provides structured recovery workflows for failed charges — layering on top of Stripe Smart Retries and dunning to catch what automation misses.
Stripe Billing uses a subscription lifecycle with automatic invoicing and built-in retry logic (Smart Retries). When a payment fails, Stripe provides a decline_code and an outcome object explaining why. The pack's classification rules map these codes to recovery actions that go beyond what Smart Retries handles alone — customer outreach, payment method updates, manual intervention, and churn prevention workflows.
Webhook receipt and event parsing
Your application receives a Stripe webhook (invoice.payment_failed), verifies the signature, and extracts the decline_code, invoice, subscription, and customer data.
Failure classification
The pack's classification rules map the decline_code and subscription status to a recovery category. The event is logged with the classification result.
Smart Retries monitoring or immediate action
For card-retryable codes, the workflow monitors Stripe Smart Retries outcomes. For card-update-required or authentication-required codes, immediate customer outreach begins.
Customer communication and self-service
Templated emails direct the customer to the Stripe Billing portal to update their payment method. The tone and urgency escalate with each failed retry.
Dunning escalation and resolution tracking
If the subscription moves to past_due or unpaid, the dunning workflow escalates outreach. Each failure is tracked through to resolution (successful payment, method update, cancellation, or write-off).
Get in touch to discuss how this pack fits your setup. We will walk through your current workflows and show you where the pack adds value.