Here at RevenueCat, we've seen scenarios where individuals need to transfer their apps to another account or another owner. Although this isn't a feature that we support, we do have some workarounds to achieve this.
Here are a couple of scenarios when you might need to transfer an app:
You Need to Change Ownership of an App
When you need to change the app owner, you can log into the account that owns the app and change the email to the email that is supposed to own the account on the account settings page. If needed, you can create a new email address to make handing off the account easier. Changing the email will transfer the entire account over to the new email.
You Are Selling an App in Production
When you have an app you are selling, it might not be the best scenario to change the account owner's email. Instead, we recommend creating a new app identical to the app you want to transfer. For this scenario, we have some steps to follow.
Transfer the app via Google Play/App Store Connect to transfer the bundle ID to the other company. Transferring the bundle ID is an essential step since not all apps can be transferred via App Store Connect (more details here: https://www.revenuecat.com/blog/how-to-sell-an-app)
The other company must recreate the RevenueCat app in their account to be identical to your account. You can invite them as a collaborator on just the apps you're selling so that they can create a matching setup.
The other company must release an app update using their public API key. New users should be able to start making purchases in the new app. Old users will have to be migrated using a client-side migration (details here: https://docs.revenuecat.com/docs/migrating-existing-subscriptions#client-side-migration)
You Need to Transfer an App to Another RevenueCat Account (Without Transferring Google Play/App Store Connect)
We have some steps to follow when you need to transfer an app to a pre-established RevenueCat account and are not transferring anything on Google Play/App Store Connect. The setup is similar to the previous example as you will be creating a new app identical to the app you want to transfer.
Add RevenueCat Account B (the account you are transferring to) as an admin collaborator to your app.
RevenueCat Account B needs to set up a similar app on their account. The setup includes offering, entitlements, and products.
Change the public API key in the app's code to use the one for App #2 ( the new App).
Add client-side migration code to the app (basically, if the user is subscribed to App #1 and not subscribed to App #2, sync purchases)
Ship the update
Users should not notice a difference during the migration (due to the client-side migration in Step 4). However, over time purchases will be migrated from App #1 to App #2 in RevenueCat. Since the new owner is a collaborator on App #2, they can view historical chart data.
Let us know below if you found this article helpful by liking the post or drop a comment below if have a use-case for transferring apps we didn't cover!
I have now moved to a new country and had to register new Google Play Console and App Store Connect accounts.
Now I will be transferring all my apps from the old Google Play Console and App Store Connect to the new ones, but the RevenueCat personal account remains the same.
What do I need to do to keep all my app users' subscriptions? Are there detailed instructions on how to do this?
For the last example, (ie. Transfer an App to Another RevenueCat Account), when is it safe to delete the old app?
Also, when transferring to a new RevenueCat account, in the client code, how would I check if the user is subscribed to the old app, if the old app’s public key is replaced with the new app’s public key?
For context: I made the mistake of hosting my 2 projects (at the time, just whatever small side projects) on the same RevCat account. Now they're both businesses and have no business being on the same account but it's seemingly impossible to fix.