# Connect RevenueCat to Winback by webhook

URL: https://winbackhq.com/connect/revenuecat/
Updated: 2026-10-22

RevenueCat tells Winback when a subscriber cancels, hits a billing problem, pauses or lets a subscription or trial expire. Winback reads those events only. It never changes a subscription, grants access or creates an offer in RevenueCat. Setup takes about five minutes.

## 1. Get your endpoint
We issue each app its own webhook URL (https://winbackhq.com/hooks/revenuecat.php?t=your-endpoint-id) and Authorization header value (wbrc_ followed by a long random string). Ask through the setup form at https://winbackhq.com/#start or email support@winbackhq.com. We store only a one-way hash of the header value; if you lose it we issue a new one.

## 2. Add the webhook in RevenueCat
Steps follow RevenueCat's guide: https://www.revenuecat.com/docs/integrations/webhooks
1. Open your project in the RevenueCat dashboard. In the left menu, under Integrations, choose Webhooks.
2. Choose Add new configuration and name it Winback.
3. Paste your Webhook URL.
4. Paste your Authorization header value exactly as given. RevenueCat sends it with every request and Winback refuses any request without it.
5. Environment: production purchases (add sandbox only to test).
6. Apps: the app you want win-backs for, or all apps in the project.
7. Event types: keep CANCELLATION, BILLING_ISSUE, EXPIRATION and SUBSCRIPTION_PAUSED, plus INITIAL_PURCHASE, RENEWAL and UNCANCELLATION so Winback can see who came back. Other types are ignored.
8. Save. A RevenueCat TEST event gets 200 with "Test event received. Winback is connected."

## What Winback keeps
- CANCELLATION, BILLING_ISSUE, EXPIRATION, SUBSCRIPTION_PAUSED: always.
- INITIAL_PURCHASE, RENEWAL, UNCANCELLATION: only for a subscriber Winback already has from those events, to record a return.
- TEST: only the time it arrived. Anything else: nothing.
Fields stored: event id and type, app_user_id, the subscriber's email (the reserved $email subscriber attribute, if set), product_id, period_type, cancel_reason, expiration_reason, expiration_at_ms, price, price_in_purchased_currency, currency, store, environment and the event time.
Not stored: names, other subscriber attributes, device or advertising ids, IP addresses and transaction ids. Emails and events are kept outside the public web folder, used only to send the win-back message you approved, never sold, and kept until you disconnect Winback or ask us to delete them.

## Who gets a message
Winback writes one personal message per lost subscriber, sent only to people you are allowed to contact (they gave you their address or opted in). You set who may get an offer, the largest discount and how many messages anyone gets, and you approve the first batch. The address comes from the $email subscriber attribute you set in RevenueCat; a subscriber without one is not emailed.

## Reliability and removal
Winback answers within a second; RevenueCat retries any non-200 up to five times over about 80 minutes. Repeated event ids are dropped. To stop, delete the Winback configuration under Integrations, Webhooks in RevenueCat; to delete stored events, email support@winbackhq.com.

Pricing: no monthly fee, 15% of revenue from subscribers who come back, for 6 months.
