Solved

Is using random, anonymous user IDs ok if the app is exclusive to the App Store platform?

  • 31 December 2023
  • 2 replies
  • 108 views

Badge +1

I’m updating a currently paid upfront app to subscriptions with RC (specifically, the updated version will include Monthly & Annual auto-renewing subs, and a Lifetime non-consumable in-app purchase).

 

I’m a new RC user, and I have read the docs, but I have a few questions I’d like to clarify before proceeding any further.

 

Firstly, about the anonymous (random) IDs:

My RC project contains only one app, and that app is exclusive to the Apple App Store (i.e. no Play Store or Amazon Store counterparts, and no plan to create such counterparts in the future). The app is available on iOS, iPadOS, and macOS. The app does not use its own login/authentication system, so ideally I’d like to allow RC to generate random, anonymous IDs at configuration.

My question is, will using random IDs cause any problems in this particular circumstance? For example, if the user purchases a subscription on iOS and then opens the app on macOS, hits the “Restore Purchases” button, will it all just work? And then when the user goes back to the iPhone app the purchases will still be available there and will not have been transferred over to the random ID generated on the macOS app, right?

To my understanding of the docs, in this situation the different user IDs should be merged/aliased and so it should be ok to use random IDs, but I need to clarify this here.

 

Secondly, about mixing auto-renewing subs and non-consumable IAP:

As mentioned above, the update will offer monthly & annual subs and a one-time lifetime purchase. What happens if the user is subscribed to, e.g., the monthly subscription, and they purchase the lifetime IAP? Is there any way to automatically cancel the subscription or is it just up to the users to cancel it themselves manually? (Note that the monthly and annual subs belong to the same subscription group in ASC to changing between those is not the issue.)

 

Lastly, a question on terminology:

For example, https://www.revenuecat.com/docs/user-ids uses the term “platform” a lot. Is the definition of platform in RC docs App Store vs Play Store vs Amazon Store etc, rather than say, iOS vs macOS?

 

icon

Best answer by Haley Pace 13 January 2024, 01:43

View original

2 replies

Userlevel 4
Badge +8

Hi,

My question is, will using random IDs cause any problems in this particular circumstance? For example, if the user purchases a subscription on iOS and then opens the app on macOS, hits the “Restore Purchases” button, will it all just work? And then when the user goes back to the iPhone app the purchases will still be available there and will not have been transferred over to the random ID generated on the macOS app, right?

You are correct, the anonymous app user ids will be aliased together. As long as both devices are using the same underlying Apple ID, they should still have access to their purchases. If not, then when they restore purchases they will regain access.

 

As mentioned above, the update will offer monthly & annual subs and a one-time lifetime purchase. What happens if the user is subscribed to, e.g., the monthly subscription, and they purchase the lifetime IAP? Is there any way to automatically cancel the subscription or is it just up to the users to cancel it themselves manually? (Note that the monthly and annual subs belong to the same subscription group in ASC to changing between those is not the issue.)

Apple does not allow for developers to modify subscriptions like Google does, so this will be up to the user to cancel their subscription. One thing you could do is have a popup appear after a user purchases a lifetime IAP if they own a subscription reminding them to cancel it.

 

For example, https://www.revenuecat.com/docs/user-ids uses the term “platform” a lot. Is the definition of platform in RC docs App Store vs Play Store vs Amazon Store etc, rather than say, iOS vs macOS?

Platform refers to the different stores. Sometimes iOS and macOS can be referred to as different platforms if it is a legacy mac app, in which case this would have a different app in your project. Now with universal purchases, with macOS/catalyst purchases can be shared between macOS and iOS: https://www.revenuecat.com/docs/macos

Badge +1

Thanks for clearing all that up, Haley!

Reply