Enable In-App Purchases with RevenueCat

Made by RevenueCat

Facilitates in-app purchases and subscriptions, controls access to premium content, and syncs purchase information to Firestore.

Works with
Cloud Firestore and Authentication
0.1.12 | Source code

How this extension works

RevenueCat’s app monetization platform empowers developers to confidently deploy in-app purchases and subscriptions, centralize data, and grow revenue. RevenueCat builds and adapts to the ever-changing needs of in-app purchase infrastructure, freeing app businesses to invest their time and resources in growing their product.

Install this extension to use Firebase services as your RevenueCat backend for in-app purchases on Apple App Store, Google Play Store, and Amazon Appstore.

The extension makes in-app purchases and subscriptions, controls access to premium content, and syncs customer purchase information to Firestore using RevenueCat.

This extension can:

  • Store purchase lifecycle events (e.g., trial starts, purchases, subscription renewals, billing issues) in Firestore and react to them.
  • Store and update information about customers and their purchases in Firestore.
  • Update information about customers’ entitlements as Firebase Authentication Custom Claims.

RevenueCat supports both native iOS and Android apps as well as hybrid cross-platform apps in React Native, Flutter, Unity, Cordova, and Ionic.

You need to create a RevenueCat account or already have one set up to use this extension.


This extension emits events, which allows you to listen to and run custom logic at different trigger points during the functioning of the extension. For example you can listen to events when a new subscription has been purchased via the initial_purchase event, or whenever a subscription or non-renewing purchase has been cancelled through the cancellation event.

Additional setup


Before installing this extension, set up the following Firebase services in your Firebase project:

  • Cloud Firestore to store In-App Purchases & Subscriptions details.
    • Follow the steps in the documentation to create a Cloud Firestore database.
  • (optional) Firebase Authentication to enable different sign-up options for your users to enable Custom Claims management.
    • Enable the sign-in methods in the Firebase console that you want to offer your users.
  • Create a RevenueCat Project if you haven’t already.
  • Set up a Firebase integration in RevenueCat: Go to your project settings, and under “Integrations”, click “Add”, then “Firebase”.
  • From the newly created integration, copy your shared secret. You will need this to set up the extension.
Mobile App

Follow the steps in the RevenueCat documentation to add the RevenueCat SDK to your mobile app. In addition, follow the instructions to set up the Firebase Integration inside the app by:


This extension uses the following Firebase services which may have associated charges:

  • Cloud Firestore
  • Cloud Functions
  • Cloud Secret Manager
  • If you enable events Eventarc fees apply.

This extension also uses the following third-party services:

You are responsible for any costs associated with your use of these services.