Choosing your Integration Path
If you have an existing app with in-app purchases and you want to use RevenueCat, you can decide whether or not to implement the RevenueCat SDK. For new apps, or existing apps that have not yet implemented in-app purchases, we recommend integrating the SDK for access to all RevenueCat features and the most seamless experience.
To start with RevenueCat with an app that already supports in-app purchases, you can use the following information to determine whether you should implement one of our Mobile or Web SDKs:
Integrating with our SDK
If you want to make use of RevenueCat to streamline your purchasing logic, remotely control and test paywalls, pricing and packaging, or deliver targeted offers to customers, you will need to integrate one of our SDKs. Integrating the SDK requires shipping an updated version of your mobile or web app.
The following RevenueCat features require an SDK to be integrated:
- Remotely configuring your product catalog
- Remotely configuring paywall templates and other aspects of your app
- Experiments to A/B test pricing, packaging, and other monetization related aspects of your app
- Targeting different segments of customers with specific offerings
- Apple Search Ads attribution
- Replacing your in-app purchase logic with RevenueCat to reduce ongoing engineering effort
If you have existing code to handle in-app purchases and you want to start using some RevenueCat features but not replace all of your existing code, you can always use RevenueCat alongside your existing code and selectively use RevenueCat features. Read more about how to set up the RevenueCat SDK alongside your existing IAP code.
Follow our quickstart guide to learn how to integrate the SDK →
Integrating without using the SDK
If you are planning on using RevenueCat mostly to collect and analyze accurate and actionable purchase data, you may choose a server-side integration. The following RevenueCat features work without implementing the SDK:
- Charts
- Customer history
- Customer lists
- Purchase lifecycle events, webhooks, and integrations with third party tools
- Scheduled data exports to your data warehouse
- Checking customer entitlements via the REST API
You can always start with a server-side integration without the SDK, and add the SDK later. In the case where purchases are made through the SDK and also sent on the server side, RevenueCat will automatically deduplicate them, so there is no risk in this approach.