Stripe Integration
Connect your Stripe account to automatically detect cancellations, failed payments, and successful recoveries.Setup
1
Copy Your Webhook URL
Find your webhook URL in Settings > Integrations > Stripe. The format is:Your public key starts with
pub_ and is unique to your project.2
Add the Webhook in Stripe Dashboard
- Go to Stripe Dashboard > Developers > Webhooks
- Click Add endpoint
- Paste your Windback webhook URL
- Select the events listed below
- Click Add endpoint
3
Select Webhook Events
Enable the following events in Stripe:
Voluntary vs Involuntary Churn
Windback distinguishes between two types of churn to tailor recovery strategies:Voluntary Churn
The customer intentionally cancels. Triggered by
customer.subscription.deleted. Recovery strategies focus on understanding the cancel reason and addressing objections — value recap, downgrade offers, pause options.Involuntary Churn
The payment fails without customer intent. Triggered by
invoice.payment_failed. Recovery strategies focus on updating payment methods — dunning emails, payment update reminders, grace period notifications.Webhook Resilience
Windback webhook endpoints always return HTTP 200 regardless of internal processing status. This prevents Stripe from disabling your webhook due to repeated failures.
Data Mapping
When Windback receives a Stripe webhook, the following fields are extracted:Testing with Stripe CLI
You can test the integration locally using the Stripe CLI:Verifying the Connection
After setup, you can verify the integration is working:- Trigger a test event using Stripe CLI or the Stripe Dashboard
- Check your Windback dashboard for the new churn event
- The event should appear within a few seconds with status
new
Windback does not currently verify Stripe webhook signatures. The public key in the URL acts as the authentication mechanism. Keep your webhook URL private.