Skip to main content
Skip to navigation

Build an integration with RevenueCat

Connect your platform to RevenueCat with webhooks, and apply for an official integration

Ask RicoChatGPTClaude

Any platform can connect to RevenueCat using webhooks, with no approval needed from us. If that's what you're building, this page explains how to do it, and how to apply to RevenueCat for an official, supported integration once developers are using it.

We build and maintain the integrations listed in the Integrations section of our documentation, and feature them in our technology directory. We add new ones when there's clear demand from developers who use both products, and a working webhook integration is the best way to show that demand.

If you're a developer who'd like an integration we don't offer yet, contact us.

How a webhook integration works​

RevenueCat sends a request to your server whenever a subscription event occurs in a developer's app. Your platform receives the event and acts on it.

  1. You host an endpoint. Give each developer an HTTPS URL and an authorization header value.
  2. The developer connects it. The developer adds your URL and authorization header value as a new webhook configuration in the RevenueCat dashboard (see how). They can choose production or sandbox events, which apps to include, and optionally which event types to send.
  3. RevenueCat sends events. RevenueCat will send POST requests to your server with a JSON body. See Event Types and Fields for what's included.
  4. You match the event to a user. Each event identifies the customer by their App User ID, so your platform needs to know the same ID. If you need a further identifier, the developer's app can set it as a custom attribute using customer attributes, and it will be included in the event's subscriber_attributes field.
  5. You act on it. Update your records, trigger a workflow, or show the data in your product.

Developers need to be on our Pro plan to access webhooks.

Events flow one way, from RevenueCat to your platform, and nothing needs to be enabled on our side.

Best practices​

Your server should return a 200 status code for every event it accepts. Our Security and Best Practices section has the full details, and these are the points that matter most when you're building for many developers.

  • Respond quickly with a 200. Any other status code counts as a failure, and slow responses time out. Send the response first and process the event afterward.
  • Expect retries. RevenueCat retries failed deliveries several times with increasing delays, then stops sending the event.
  • Handle duplicate events. In rare situations, you may receive the same event more than once. We recommend keeping track of the event id so each event is only processed once.
  • Verify every request. Your server should check the authorization header on every request. For stronger verification, we recommend supporting HMAC signing with the X-RevenueCat-Webhook-Signature header.
  • Future-proof your handler. We may add new fields and event types without changing the API version, so your server should handle them gracefully.
  • Separate sandbox from production. Each event has an environment value of SANDBOX or PRODUCTION.
  • Expect delivery delays. Most events arrive within seconds, but some, such as cancellations, can take longer.
  • Test before you launch. You can test with sandbox purchases, or by sending a test event from the RevenueCat dashboard. Our Sample Apps are a good way to test the entire flow.

Launch and support your integration​

A webhook integration is built, documented and supported by you, so you're free to launch and promote it as soon as it's ready. The Integrations section of our documentation lists the integrations we've built ourselves.

Once you've built your integration, make sure you have a setup guide on your own site that covers:

  • How to connect a RevenueCat project, step by step
  • How to test the connection
  • Known limitations
  • Where developers can get support

Since you built the integration, you'll know best how to support it, so questions about it should go to your team. For questions about RevenueCat itself, developers can contact RevenueCat support.

Apply for a RevenueCat-supported integration​

Once developers are using your webhook integration regularly, you can apply to RevenueCat to build and support an official one. An official integration is accessible for developers from the RevenueCat dashboard, maintained by our team, and listed in our documentation and technology directory.

Here's what we're looking for:

  • Shared developers: a minimum of 10 paying RevenueCat developers sending production events to your integration. A paying developer is one whose app earns more than $2,500 a month in tracked revenue.
  • Time in production: those developers have been live with your integration for at least 60 days.
  • Reliable delivery: your server has returned a 200 for at least 99% of events over the last 60 days.
  • Public documentation: a setup guide as described above.

If you're not quite there yet but a small number of larger apps rely on your integration, we'd still like to hear from you.

How to apply​

Fill in our integration application form. It takes a few minutes and asks for:

  1. Your company and product info: your company name, website, and what your platform does.
  2. The integration: what it does with RevenueCat data, and the problem it solves for developers.
  3. Your webhook destination: the URL or domain developers send RevenueCat events to. We use this to verify usage.
  4. Usage: how many RevenueCat developers use your integration in production, and up to five of the largest apps, with each app's name and RevenueCat app ID. You'll find the ID in the app_id field of the webhook events you receive.
  5. Documentation: a link to your public setup guide.
  6. A short walkthrough video: optional, showing the integration working from setup to first event.
  7. Your technical contact: their name, role and email.

What happens next​

Once you've sent this information, we'll review everything submitted and let you know whether it's something we're able to build. If we move forward, we'll scope the integration together, and once it's live, we'll maintain it and list it in our documentation and technology directory.

If the timing isn't right yet, you're always welcome to come back to us as more developers adopt your integration.

If you'd like to talk about a broader partnership with RevenueCat, see our Technology Partner Program.

Was this page helpful?