Grandfathering existing paid users (migrating paid app to subscription) - React Native-based example?

  • 25 January 2024
  • 2 replies


Hi! We are migrating a legacy paid RN app to be subscription-based and need a way to “grandfather” in existing users (who bought the app before adding subscriptions/RevenueCat).

These are anonymous users (no login) so can’t link legacy identifiers.

RevenueCat provides this (Objective-C based) tutorial - but does anyone know of React Native-based example (that will work on both iOS and Android)? Thanks in advance!

2 replies

Userlevel 1
Badge +3

Hi! I apologize for the delay. I was reaching out internally for suggestions. Unfortunately, because of the limitations of the information that Android provides, this grandfathering may be difficult. For iOS, like the blog post that you linked mentions, there is “originalApplicationVersion” to use in order to accomplish this grandfathering for iOS. However, Android does not provide equivalent information for you to use. The internal suggestion that I received was that you could ship one more version before integrating RevenueCat, and in that version, add a new entry in a cloud-backed persisted file, marking that user as “downloaded paid app”. Once that version has propagated, you would be able to use that value to check. However, this method would not be foolproof as users who don’t open this specific version would be left out. For those left-out users, you could request that they send you a google play receipt for their purchase in order to verify, and then, grant them a Promotional Entitlement within the RevenueCat dashboard in order to ensure that they have the appropriate access.


Ok, thanks for the suggestions, @wes_clark ! Unfortunately our app does not collect any user information so I guess we’ll need to figure out an alternate unique identifier for each user (perhaps device id?)