Razorpay Integration
Connect your Razorpay account to automatically detect subscription cancellations and payment failures.Setup
Copy Your Webhook URL
Find your webhook URL in Settings > Integrations > Razorpay. The format is:Your public key starts with
pub_ and is unique to your project.Add the Webhook in Razorpay Dashboard
- Go to Razorpay Dashboard > Settings > Webhooks
- Click Add New Webhook
- Paste your Windback webhook URL
- Select the events listed below
- Click Create Webhook
Data Mapping
When Windback receives a Razorpay webhook, the following fields are extracted:| Razorpay Field | Windback Field | Notes |
|---|---|---|
payload.payment.entity.email | customer_email | From payment entity |
payload.payment.entity.contact | customer_name | Falls back to email prefix |
payload.payment.entity.amount | mrr | Amount in smallest currency unit (paise) |
payload.payment.entity.currency | currency | ISO 4217 code (e.g., inr) |
payload.subscription.entity.plan_id | plan_name | Razorpay plan identifier |
payload.subscription.entity.created_at | tenure_days | Calculated from subscription start |
Webhook Resilience
Windback webhook endpoints always return HTTP 200 regardless of internal processing status. This prevents Razorpay from disabling your webhook due to repeated failures.
Verifying the Connection
After setup, verify the integration:- Create a test subscription in Razorpay test mode
- Cancel the subscription to trigger a
subscription.cancelledevent - Check your Windback dashboard for the new churn event
Razorpay webhooks include a
X-Razorpay-Signature header. Windback currently authenticates via the public key in the URL. Keep your webhook URL private.