ExpoLaunch
Payment

Android Subscription – Google Play Configuration

How to set up subscriptions in Google Play and integrate them via RevenueCat

Configuration Google Play

Setting up Android subscriptions using Google Play Console and RevenueCat. ExpoLaunch comes with a preconfigured purchase flow with 1 subscription plan: pro.

Google Play Developer Account

  • Make sure you have an active Google Play Developer account ($25 one-time fee).
  • Your app must be fully set up in the Google Play Console:
    • Uploaded .aab file
    • App information completed
    • Package name defined and consistent

Create Subscriptions in Google Play

  1. Open Google Play Console
  2. Select your app
  3. In the sidebar, go to Monetize → Products → Subscriptions
  4. Create a subscription group and add individual subscriptions: Expolaunch
  • Identifier (e.g. pro_monthly) Expolaunch
  • Duration, price, description, icon Expolaunch Expolaunch Expolaunch Expolaunch
  • Make sure the subscription is activated and saved

🔶 The subscription must be fully configured and active, or RevenueCat will not detect it.

Create a Service Account in Google Cloud

To allow RevenueCat to validate and sync subscriptions:

  1. Open Google Cloud Console → IAM → Service Accounts Expolaunch
  2. Select the same project linked with your Play Console
  3. Click Create Service Account
  4. Set a name (e.g. revenuecat-service) Expolaunch
  5. Assign roles:
    • Viewer
    • Play Developer (from Google Play Android Developer API group) Expolaunch
  6. Complete and create the service account

Enable Required APIs in Google Cloud

In Google Cloud Console → APIs & Services → Library:

Enable the following APIs:

  • Google Play Android Developer API
  • Cloud Pub/Sub API
  • (Optional) Cloud Logging API if you want additional debugging capabilities

Make sure these APIs are enabled in the same Google Cloud project linked to your Play Console. Expolaunch Expolaunch

Generate Service Account Key

  1. Open the service account you created
  2. Go to the Keys tab → Add KeyCreate new key
  3. Choose JSON format
  4. Download the file — you’ll upload this in RevenueCat

Expolaunch Expolaunch Expolaunch

  1. Go to Google Play Console → Users and Permissions
  2. Click Invite new user
  3. Paste the service account email (from Google Cloud)
  4. Assign the following permissions:
    • View financial data
    • Manage orders and subscriptions
  5. Send the invitation and accept it if needed (some accounts auto-accept)

✅ After inviting, the service account will appear under API Access as well. Expolaunch Expolaunch

  1. Go to Google Play Console → API Access
  2. Link your Google Cloud project if not already linked
  3. Find your service account → click Grant Access
  4. Confirm the permissions listed above are applied Expolaunch

Add Your App to RevenueCat

  1. Go to RevenueCat Dashboard
  2. Create a new project (or open an existing one)
  3. Under Apps, click + Add Google Play App Expolaunch
  4. Fill in:
    • App name
    • Package name (must match your Play Console)
    • Upload your JSON service account credentials

⏱ RevenueCat may take a few minutes to validate your credentials.

🧩 Tip: If validation is stuck, follow this trick from RevenueCat:

  • Go back to the Google Play Console
  • Edit your subscription’s description slightly
  • Save the change — this triggers a refresh in RevenueCat Expolaunch

Create Products

  1. In RevenueCat → ProductsImport from Google
  2. Select your subscriptions (pro_monthly, etc.) Expolaunch Expolaunch Expolaunch

Create Entitlements

  1. Create Entitlements like pro Expolaunch
  2. Link subscriptions to their respective entitlements Expolaunch

Set Up Offerings

  1. Go to Offerings → create an offering (e.g. default) Expolaunch
  2. Add packages inside the offering (monthly, annual, etc.) Expolaunch
  3. Use useOfferings in your custom UI to show available plans:
const offerings = useOfferings()
const subscribe = useSubscribeMutation()

function handlePurchase(plan: PurchasesPackage) {
  subscribe.mutateAsync({ offer: plan })
}

Generating an API Key

RevenueCat uses a server key to sync with Google Play:

  1. In Google Play Console → API Access, scroll to API Keys
  2. Click Create New Key
  3. Name the key (e.g. revenuecat-api-key) and click Create
  4. Copy the generated key and add it to your environment variables:
EXPO_PUBLIC_REVENUECAT_GOOGLE_API_KEY=your_key_here

Expolaunch

Custom Paywall (Optional)

ExpoLaunch uses a custom implementation of the paywall screen. If you use your own design, skip RevenueCat's visual paywall editor.

Fetch product offerings using:

import { useOfferings } from 'react-native-purchases'

const { current, loading } = useOfferings()

✅ Troubleshooting

  • Subscriptions not showing up?

    • Check that they are active and approved in Google Play Console
    • Confirm your JSON credentials are correct
    • Ensure the service account has API access and proper permissions
    • Enable required APIs in Google Cloud
    • Look at RevenueCat → Overview → Debug Logs for real-time info

Resources