Installing the SDK
These docs refer to our legacy paywalls.
To learn more about our new paywall builder, click here.
RevenueCat Paywalls are included as part of the RevenueCatUI package in the RevenueCat SDK. You'll need to install the RevenueCatUI package in your project to use Paywalls.
Supported SDK versions
| RevenueCat SDK | Version required for Paywalls |
|---|---|
| purchases-ios | 4.26.0 and up |
| purchases-android | 7.1.0 and up |
| react-native-purchases-ui | 7.15.0 and up |
| purchases-flutter | 6.15.0 and up |
| purchases-kmp | 1.0.0 and up |
| purchases-unity | Not supported |
| cordova-plugin-purchases | Not supported |
| purchases-capacitor | Not supported |
Within the SDKs, Paywalls are available on the following platforms:
- iOS 15.0+
- visionOS 1.0+
- Mac Catalyst 15.0+
- watchOS 8.0+
- Android 7.0 (API level 24)
Support for macOS, tvOS, and other platforms is coming soon!
Native iOS Installation
Using SPM:
If you already have RevenueCat in your project:
- Open your project settings and select "Package Dependencies":
- Double-click and make sure version is at least
4.26.0:
- Open your target settings and find "Frameworks, Libraries, and Embedded Content":
- Add
RevenueCatUI:
First time integrating the RevenueCat SDK:
-
Click File -> Add Packages...
-
Search for
git@github.com:RevenueCat/purchases-ios.gitand make sure version is at least4.26.0:
- Add
RevenueCatandRevenueCatUISPM dependency to your project:
Using CocoaPods:
Add the following to your Podfile:
pod 'RevenueCat'
pod 'RevenueCatUI'
Native Android Installation
- Add
RevenueCatUI:
implementation 'com.revenuecat.purchases:purchases:<latest version>'
implementation 'com.revenuecat.purchases:purchases-ui:<latest version>'
React Native Installation
- Update your
package.jsonto includereact-native-purchases-ui:
{
"dependencies": {
"react-native-purchases": "<latest version>",
"react-native-purchases-ui": "<latest version>"
}
}
Flutter Installation
- Add
purchases-ui-flutterin yourpubspec.yaml:
dependencies:
purchases_flutter: <latest version>
purchases_ui_flutter: <latest version>
- For Android, you need to change your
MainActivityto subclassFlutterFragmentActivityinstead ofFlutterActivity.
- MainActivity.kt
package com.your.package.name
import io.flutter.embedding.android.FlutterFragmentActivity
class MainActivity: FlutterFragmentActivity()
Kotlin Multiplatform Installation
Add the following Maven coordinates to your libs.versions.toml:
[versions]
purchases-kmp = "<latest version>"
[libraries]
purchases-core = { module = "com.revenuecat.purchases:purchases-kmp-core", version.ref = "purchases-kmp" }
purchases-ui = { module = "com.revenuecat.purchases:purchases-kmp-ui", version.ref = "purchases-kmp" }
Then add the dependencies to the commonMain sourceset in your Compose Multiplatform module's build.gradle.kts:
kotlin {
// ...
sourceSets {
// ...
commonMain.dependencies {
// Add the purchases-kmp dependencies.
implementation(libs.purchases.core)
implementation(libs.purchases.ui)
}
}
}
Lastly, you'll need to make sure you link the PurchasesHybridCommonUI native iOS framework. If your iOS app uses Swift Package Manager, add the PurchasesHybridCommonUI library to your target in the same way you added the PurchasesHybridCommon library. If your iOS app uses CocoaPods, either update its Podfile, or update your Compose Multiplatform module's build.gradle.kts, depending on how your Multiplatform module is integrated with your iOS project.