FlutterFlow Docs
RevenueCat makes implementing in-app purchases and subscriptions easy by handling all purchase validation operations. With RevenueCat, you can allow users to purchase subscriptions, make certain features paid, and more.


If you are new to RevenueCat, it's recommended you read this first: What is RevenueCat?​

RevenueCat Integration

Integrating the RevenueCat in your app comprises of the following steps:
  1. 1.
    ​Publishing the App​
  2. 3.
    ​Setup RevenueCat​
  3. 6.
  4. 7.

1. Publishing the App

If you want to set up purchases on Google Play Store and Apple App Store, make sure you have created and published the app on PlayStore and App Store.

1.1 Publish App to Apple App Store

If you haven't published the app yet, please check out the App Store Deployment with Codemagic guide.

1.2 Publish App to Google Play Store

To publish your app to Play Store:
  1. 2.
    Create an app on Google Play Console.
  2. 3.
    Create a Closed testing track. You can find more info on creating the test track here.

2. Creating Subscriptions

Before incorporating subscriptions into your app, you will first need to create the subscription products in the Google Play Store and App Stores.

2.1 Google Play Store

To create a subscription product in the Google Play Store:
  1. 1.
    Open your app on the Google Play Console.
  2. 2.
    Open the Subscriptions tab (from the left side menu). Check if you see Create subscription button. If you do, you can skip this step.
  3. 3.
    If you see a message saying 'Your app doesn't have any in-app products yet' like in this picture:
You will need to complete the following steps:
  1. 1.
    Go to FlutterFlow Dashboard and open your project.
  2. 2.
    Navigate to Settings & Integrations > Integrations > RevenueCat page.
  3. 3.
    Check Enable RevenueCat. Enter any string as your API Key (eg. testkey). You will update this later.
  4. 4.
    Click Download APK in the navigation bar and wait until your project is built.
  5. 5.
    Go back to the Play Store. Open your Closed testing track and create a new release.
  6. 6.
    Upload your App Bundle or APK, enter the Release name and create the release.
  7. 7.
    Go back to Google Play Console and open the Subscriptions tab again. It should let you manage subscriptions now.
  8. 8.
    Now, follow this guide by RevenueCat to configure your products or subscriptions on Google Play.

2.2 App Store

To create a subscription product in App Store:
  1. 1.
    Open App Store Connect Portal and navigate to your app.
  2. 2.
    Follow this guide by RevenueCat to configure your products or subscriptions for App Store
  3. 3.
    Make sure that the state of your purchases is Ready to Submit.
  4. 4.
    Navigate to the Agreements page and sign the Paid Apps agreement. The state must be Active before you can make purchases even in the sandbox mode.
  5. 5.
    Navigate the Testers page and add sandbox testers. Make sure to confirm the emails of all sandbox testers.

3. RevenueCat Setup

Setting up RevenueCat comprises of the following steps:

3.1 Create and Register your App with RevenueCat

Follow the first 3 steps of the following guide by RevenueCat to create and configure your RevenueCat app (stop before "Store Setup"):
Quickstart – RevenueCat

3.2 Create Products, Entitlements, and Offers

RevenueCat uses an Entitlements system to control access to premium features, and Offerings to manage the set of products you offer to customers.
Learn more about configuring products in RevenueCat here.
You must create at least one entitlement and at least one offering for using RevenueCat with FlutterFlow.
After the creation, the Products, Entitlements, and Offers will look like this:

3.3 Connect to Google Play Store

To allow RevenueCat servers to communicate with Google on your behalf, please follow the instructions present on this page:
Configure Play Store Service Credentials | RevenueCat
NOTE: It can take several hours for these credentials to propagate. Until then your purchases can fail with "There was a credentials issue. Check the underlying error for more details".

3.4 Connect to Apple App Store

To connect the RevenueCat servers to App Store, follow the instructions present on this page:
Generating an App-Specific Shared Secret – RevenueCat

4. Enable RevenueCat in FlutterFlow

To enable RevenueCat in FlutterFlow:
  1. 1.
    Go to FlutterFlow Dashboard and open your project.
  2. 2.
    Navigate to Settings & Integrations -> Integrations -> RevenueCat.
  3. 3.
    Enable RevenueCat integration.
  4. 4.
    Get the Play Store and App Store keys by visiting RevenueCat app -> API Keys -> Public app-specific API keys, and copy the key.
  5. 5.
    Paste the key inside the Play Store Key and App Store Key input box.
Enabling debug logging (recommended) will greatly help with troubleshooting any integration issues. Don't forget to disable this logging when you are ready to deploy your app to production.

5. Trigger RevenueCat Action

To manage in-app purchases and subscriptions inside your FlutterFlow app, you have to use the RevenueCat Action. Know how to define the action by going to the following page:

6. Testing

RevenueCat Play Store purchases work on real Android devices or in emulators, and App Store purchases only work on real iOS devices. This document has instructions on how to run your app on an Android or iOS device.
NOTE: RevenueCat data cannot be loaded in Preview Mode, Test Mode, or Run Mode.

Creating Test Users

Test on Android: To create test users to try Play Store purchases in the sandbox mode, follow this guide by RevenueCat. You need to create a test user, configure licensing testing, create a closed track, and add a tester to it.
Test on iOS: To create test users to try App Store purchases in the sandbox mode, follow this guide by RevenueCat.
Here's how it works after you complete all the steps:

7. Launch

Before launching your app to production make sure you go through the Launch Checklist of RevenueCat:
In-App Purchase Launch Checklist – RevenueCat