I am maintaining a Cordova app for both Android and iOS which was released some months ago and cost 4,99€ back then. Now I've decided to go a different path and make the app downloadable for free, but charge 1€/month for certain premium features.
Before I switch to this approach, I want to make sure that customers who bought the app before it was free get to keep all the features without having to pay for it.
Is there any way to detect whether the app has been bought or downloaded for free? Or any way to make sure that "certain" users don't have to pay?
The receipt is the purchase history of the application and of any in-app purchases made from within the app. Accordingly, the receipt is pretty sure persistent.
We were in the same situation and we unlock features depending on the receipt field originalAppVersion
. So each user who has bought the app before version xy gets automatically feature x unlocked.
Original Application Version
The version of the app that was originally purchased.
Note: In the sandbox environment, the value of this field is always “1.0”.