Skip to main content

RevenueCat Integration

RevenueCat makes it easy to add in-app purchases and subscriptions to your Natively app. Handle payments, manage subscriptions, and track revenue without complex payment infrastructure.

What is RevenueCat?

RevenueCat is a subscription management platform that:
  • Handles payments - Process iOS and Android purchases
  • Manages subscriptions - Track status, renewals, cancellations
  • Syncs across platforms - One subscription works on both iOS and Android
  • Provides analytics - Revenue, churn, and subscriber metrics

Setting Up RevenueCat

1

Press on "More" in Natively and then RevenueCat

You will be prompted to create an account / sign in to your RevenueCat account and authorize permissions to Natively.
2

Create a Project & Press Connect

Create a new project in RevenueCat
3

Create a Project & Press Connect

Natively automatically creates a Paywall, product, entitlements and connects this to your app with 1 prompt.
4

Configure App Store Connect

Add your iOS app with App Store Connect credentials
5

Configure Play Console

Add your Android app with Google Play Console credentials
6

Market app & make money

Modifying Purchases to Your App

Tell the AI what you want to sell:
Add a premium subscription with monthly ($9.99) and yearly ($79.99) options.
Show a paywall screen when users try to access premium features.
After purchase, unlock the premium features.

Common Patterns

Create a paywall screen that shows:
- List of premium features
- Monthly and yearly pricing options
- "Restore Purchases" button (required for App Store)
- Terms and privacy links at bottom (required for App Store)

Purchase Types

RevenueCat supports:
TypeDescriptionExample
SubscriptionRecurring paymentMonthly premium access
Non-consumableOne-time permanent purchaseRemove ads forever
ConsumableSingle-use purchasesCredits, tokens

Entitlements

Entitlements are what users get access to after purchasing:
Create a "premium" entitlement that includes:
- Unlimited projects
- AI assistance
- Priority support
- Custom themes

Both monthly and yearly subscriptions grant "premium" entitlement.

Checking Subscription Status

The AI will generate code to check if users have active subscriptions:
// Example generated code
const { customerInfo } = await Purchases.getCustomerInfo();
const isPremium = customerInfo.entitlements.active['premium'];

if (isPremium) {
  // Show premium features
} else {
  // Show paywall
}

Restore Purchases

Always include a restore option for users who:
  • Reinstall the app
  • Switch devices
  • Had billing issues
Add a "Restore Purchases" button in settings that
checks for previous purchases and restores access.

Testing Purchases

Sandbox Testing

Before going live:
  1. Use Apple/Google sandbox accounts
  2. Purchases are simulated (no real charges)
  3. Subscription periods are shortened for testing
Use a Sandbox Apple ID created in App Store Connect

RevenueCat Dashboard

Monitor purchases in the RevenueCat dashboard:
  • Active subscriptions
  • Revenue metrics
  • Customer history
  • Error logs

Best Practices

Clear Value Proposition

Show what users get before asking them to pay

Multiple Options

Offer monthly and yearly (with discount) options

Free Trial

Consider offering a free trial period

Restore Button

Always include restore purchases option

App Store Requirements

Both app stores have requirements for in-app purchases:

Apple App Store

  • Must use Apple’s IAP for digital goods
  • Clearly display pricing
  • Terms of service required
  • Auto-renewal disclosure

Google Play Store

  • Must use Google Play Billing for digital goods
  • Clear subscription terms
  • Easy cancellation access
  • Price displayed before purchase
Violating app store payment policies can result in app rejection or removal.

Troubleshooting

  • Verify RevenueCat is connected correctly
  • Check product IDs match in app and stores
  • Ensure app is properly configured in App Store Connect / Play Console
  • User must be signed into same App Store / Play Store account
  • Check sandbox vs production environment
  • Verify subscription hasn’t expired
  • Check RevenueCat dashboard for the purchase
  • Verify entitlement is linked to product
  • Check for webhook configuration issues

Resources

RevenueCat Docs

Official RevenueCat documentation

Pricing Best Practices

Guide to subscription pricing

Next Steps

Deployment

Deploy your app with payments

Backend Features

Add backend functionality