Products imported
One click reads App Store Connect, Google Play or Stripe and fills your catalog.
Solution
If your app already sells subscriptions with its own StoreKit or Google Play Billing code, or with another tool, you can move it to RevenueDot without losing a subscriber. Import your products from App Store Connect, Google Play or Stripe, install the RevenueDot SDK, and call syncPurchases() once in the update. Each subscriber's purchases are checked with the store, and their access carries over.
Free until your app makes $10,000 a month. Switching from RevenueCat? Change one line.
One click reads App Store Connect, Google Play or Stripe and fills your catalog.
The update sends each device's purchases, and the store's notifications fill in the rest.
RevenueDot can forward every store notification to your old endpoint while you move.
Receipt checks, renewals, refunds and grace periods move out of your codebase.
What moves
Steps
Start for free on RevenueDot Cloud and add your App Store, Google Play or Stripe app with its credentials. Paste RevenueDot's notification URLs into App Store Connect and Google Play. If your own server receives those notifications today, set the app's forward URL to it, so it keeps getting every notification while you move.
Click Import products. RevenueDot reads App Store Connect, Google Play or Stripe and creates each product with its type and duration. Attach them to an entitlement such as pro (the access your app checks) and put them in the offering your paywall shows. See import products.
Add the RevenueDot SDK for your platform and configure it with your app's key and your own user ID, so purchases land on the right customer. Replace your purchase calls with the SDK's: load the offering, buy a package, check the entitlement.
Call syncPurchases() once on the first launch of the update. It sends the device's purchases to RevenueDot, which checks them with the store. To also record subscribers who have not opened the update yet, turn on track_new_purchases for the app.
Read a customer's active entitlements with a secret key, or receive webhooks for every renewal, cancellation and refund. Then retire your own receipt code.
Swift
The RevenueDot SDK is built from RevenueCat's open-source SDK (MIT license), so your code imports RevenueCat and calls Purchases. It sends every request to RevenueDot and needs no RevenueCat account. Android, React Native and Flutter have the same calls; see the SDK guides.
import RevenueCat // the module name of the open-source SDK the RevenueDot SDK is built from
Purchases.configure(withAPIKey: "appl_...", appUserID: currentUser.id)
// Once, on the first launch of this update: send the device's existing App Store purchases to RevenueDot.
if !UserDefaults.standard.bool(forKey: "revenuedotSynced") {
_ = try? await Purchases.shared.syncPurchases()
UserDefaults.standard.set(true, forKey: "revenuedotSynced")
}
let isPro = try await Purchases.shared.customerInfo().entitlements["pro"]?.isActive == true Other tools
syncPurchases() brings each subscriber over. See RevenueDot vs Adapty and RevenueDot vs Qonversion.Honest notes
track_new_purchases is on. Without it, they come over the next time they open the app.FAQ
Yes. Import your products, install the RevenueDot SDK in place of your purchase code, and call syncPurchases() once on the first launch of the update. RevenueDot checks each device's purchases with Apple or Google and gives the customer the same access they had.
No, as long as the update syncs their purchases. syncPurchases() sends the device's App Store or Google Play purchases to RevenueDot, which verifies them with the store. Turn on track_new_purchases to also record subscribers from store notifications before they open the update.
No. Your products, prices and subscription groups stay in the stores as they are. RevenueDot imports their identifiers, types and durations, and reads prices from the stores.
Yes. Each app has a forward URL. RevenueDot sends every store notification to it, byte for byte, so your old server keeps working while you move.
RevenueDot Cloud is free until your app makes $10,000 a month in tracked revenue. Above that, it charges 0.5% of the revenue above $10,000, capped at $999 a month.
Get started
Building and testing are free, and you can test your first purchase before you have a store account. Pro costs $0 until your apps make $10,000 a month.
Already have an account? Sign in · Switching from RevenueCat? Change one line