Our service is an iOS app using RevenueCatSDK. And the iOS app uses our WebApi backend with RevenueCatAPI.
The service user can have multiple service Accounts, multiple AppleIDs and multiple Apple Devices.
The service want to have following behavior:
- User has multiple service Accounts, AppleIDs and Apple Devices.
- service Accounts: (e.g. Account_A, Account_B)
- AppleIDs: (e.g. AppleID_A, AppleID_B)
- Apple Devices: (e.g. iPhone_A, iPhone_B)
- User can change combination of Account, AppleID and iPhone.
- Account has unique UserID and sets the UserID to AppUserID(RevenueCat). We don't use anonymous AppUserID.
- Role is managed by our WebApi
- If a user makes a subscription with the combination (iPhone_A, AppleID_A, Account_A), the user Role is changed and the Role is managed by the our WebApi.
- Whether the combination is (iPhone_A, AppleID_B, Account_A) or (iPhone_B, AppleID_A, Account_A), Account_A can use our service in a Role managed by our WebApi.
- Until subscription expiration, AppleID_A can restore Account_A on any apple devices. The Role of Account_A is never transferred to Account_B.
- Until the Account_A subscription expires, AppleID_B can't make subscription of Account_A. When the Account_A subscription expires, AppleID_B can make subscription of Account_A. And instead, AppleID_A won’t be able to make subscription of Account_A.
I would like to know what settings are needed to achieve this behavior.
Can we control subscriptions, such as preventing the same user from having multiple AppleID subscriptions, with the following “restoring-purchases Transfer Strategy”?
If so, which Transfer Strategy?
- https://www.revenuecat.com/docs/getting-started/restoring-purchases
thanks.