Skip to main content

Payment Integrations

Payments turn onboarding and engagement into revenue. Launch ships with integrations that cover direct billing, subscriptions, and paywall management so you can pick the model that fits your product. The payment layer is already wired into the app, but it is disabled by default. Your first step is to enable the payments feature flag, then follow the setup guide for the provider you choose.

Prerequisites

  • Payments feature enabled in apps/mobile/features/feature-registry.tsx
  • Backend env vars set for your chosen provider (copy from apps/api/example.env)
  • Mobile env vars set if required (copy from apps/mobile/example.env)

Which should I use?

IntegrationBest ForComplexityApp Store Fees
StripeWeb + Mobile, Custom flowsMediumYou handle
RevenueCatSubscription appsLowHandled
SuperwallOptimizing conversionsLowHandled
For most mobile apps, we recommend starting with Stripe for maximum flexibility, then adding RevenueCat or Superwall if you need advanced subscription management or A/B testing.

Steps

  1. Enable the payments feature flag in apps/mobile/features/feature-registry.tsx.
  2. Choose a provider:
  3. Follow the setup guide for your provider.

How It Works

Launch wraps payment providers behind a unified interface. The provider is selected in apps/mobile/features/feature-registry.tsx, and the UI reads from the provider layer. Key references:
  • Feature flag: apps/mobile/features/feature-registry.tsx
  • Provider selection: apps/mobile/features/feature-registry.tsx
  • Payments UI: apps/mobile/app/(tabs)/features/index.tsx