Skip to main content
The RevenueCat integration creates a customer profile for every paying user at checkout and records their initial subscription transaction. RevenueCat then tracks renewals, expirations, and refunds, automatically managing access and revenue metrics.
RevenueCat integration settings

How it works

When a user completes a subscription purchase in your funnel:
  1. Profile creation: FunnelFox creates a RevenueCat customer using the user’s email as the App User ID.
  2. Purchase tracking: The initial purchase is sent to RevenueCat.
  3. Ongoing monitoring: RevenueCat monitors the subscription directly with Stripe/Paddle for renewals, cancellations, and revenue events.
  4. App verification: Your app checks subscription status through the RevenueCat SDK.
RevenueCat profiles are created only for subscription purchases. One-time products create profiles only if they have a custom entitlement configured in the checkout.

Setup

Choose your integration method based on your payment setup:
  • FunnelFox: If you use Stripe or Paddle as your payment provider.
  • FunnelFox Billing: If you use FunnelFox Billing instead of a direct payment provider integration.

FunnelFox

1

Get RevenueCat API keys

  1. Log into RevenueCat Dashboard.
  2. Go to Project SettingsAPI Keys.
RevenueCat API keys settings
  1. Create a Secret Key with API Version set to V1.
Creating new Secret API Key
  1. Copy the Secret Key.
2

Get payment provider app keys

  • Stripe
  • Paddle
  1. In RevenueCat, go to your app settings.
  2. Find the Stripe App Key (starts with strp_).
  3. Ensure Track new purchases from server-to-server notifications is disabled.
  4. Copy the Stripe App Key.
3

Configure FunnelFox integration

  1. Go to Project SettingsIntegrationsSubscriptions.
  2. Toggle the RevenueCat integration on.
  3. Paste your Secret Key.
  4. Paste the appropriate App Key for your payment provider.
  5. Click Save changes.
You only need to configure the app key for your active payment provider (Stripe or Paddle).
4

Map products to entitlements

After your first test purchase:
  1. Check the RevenueCat dashboard for the new customer.
  2. Map your Stripe/Paddle products to RevenueCat entitlements.
  3. Configure product identifiers to match your app.
Example pro entitlement mapped to a Stripe product
The example shows a pro entitlement mapped to a Stripe product.
5

Test the integration

  • Open your funnel in preview mode.
  • Make a test purchase.
  • Verify the customer appears in RevenueCat.
  • Check that entitlements are granted correctly.
Avoid using the “Legacy Setup” (iOS App Key only) for new integrations. Use Stripe or Paddle app keys for full subscription tracking and revenue analytics.

FunnelFox Billing

Follow this section if you’re using FunnelFox Billing instead of integrating directly with Stripe or Paddle.
You need a FunnelFox Billing account for this setup. Request our support team if you don’t have one.
Open your RevenueCat project and follow these steps:
1

Create app configuration in RevenueCat

  1. Go to Apps & providers and click New app configuration.
  1. Click Google Play Store.
  1. Name your app and Google Play package, then click Save changes.
2

Configure public API key

  1. Copy the Public API key.
  1. Go to Settings > Integrations > RevenueCat in FunnelFox.
  2. Paste the key into the Public iOS App Key field. The key will also automatically appear under the Legacy setup.
Don’t close the RevenueCat settings page in FunnelFox as you’ll need it for the next steps.
3

Configure secret API key

  1. Go back to your project in RevenueCat and click API keys.
  1. Click + New secret API key at the top right.
  2. Enter API key details, then click Generate:
  • Name: Enter any name you like
  • API version: V1
  1. Copy the Secret API key.
  1. Go back to RevenueCat settings in FunnelFox and paste the key into the Secret Key field.
4

Configure entitlement

  1. In your RevenueCat project, go to Product catalog > Entitlements.
  1. Click + New Entitlement on the right.
  2. Enter entitlement details, then click Add:
  • Identifier: premium
  • Description: Any description you like
  1. Go back to RevenueCat settings in FunnelFox and enter the same identifier value premium into the Default Entitlement field.
  1. Click Save changes.

Customer profile creation

User ID

FunnelFox creates RevenueCat customers using the user’s email as the App User ID by default. This can be customized using:
  1. Custom input: Add a _USERID_ input element to set a custom ID
  2. Fallback: fnlfx_ + FunnelFox profile ID (if no email is collected)
Unlike Adapty, RevenueCat integration doesn’t support URL parameters for existing customer IDs. Users must be identified through your app.

User attributes

FunnelFox sets the following attributes in RevenueCat customers:
AttributeValueDescription
emailUser’s emailIf collected in the funnel
fnlfx_profile_idProfile IDFunnelFox’s internal profile ID

User identification

Your app needs to identify users and check their subscription status. For example:
React Native
import Purchases from 'react-native-purchases';

//...

// After the user logs in, identify them with their App User ID
// Use the same ID FunnelFox created in RevenueCat (default is the user's email)
const { customerInfo, created } = await Purchases.logIn(appUserId);
const hasActive = !!customerInfo.entitlements.active["premium"];
// Update UI or grant features based on hasActive
The email used in logIn() must match the email collected in your FunnelFox funnel. This links the web purchase to the app user.
Learn more about user identification for iOS, Android, and more in RevenueCat’s documentation.
I