How to change from paid to IAP

Currently we have a paid app. We would like to change it to free. User could use the app for a certain period of time and after that he/she has an opportunity to unlock the whole app (In-App Purchases). Currently we have only iOS version available.

We would like to do this by updating the app - not releasing a new version. But what is the best practice to do this? How to check if user has already bought the app?

Do you have a settings file that you’re saving? If so you can have your new version add a new key to the file (perhaps a version #). As your app starts, you can check for the absence of that key as an indication that it’s an older paid version and you could programmatically “unlock” the app based on that. But unless you have a way to save that information to a server, if they delete the app and re-install they will have lost this safety check.

Rob

Thanks Rob,

Is it possible to validate the receipt? I’m referring to this: http://stackoverflow.com/a/19391432

Since you’re Enterprise, you should be able to follow that guide and get the receipt for the original purpose if I understand the answer with 52 up votes correctly.  We don’t have API’s to get that nor store a value in the keychain (which survives app deletion apparently). You could also store info in the keychain with Enterprise too.

But it’s basically what I described above but with more native tools to manage it. 

Rob

Do you have a settings file that you’re saving? If so you can have your new version add a new key to the file (perhaps a version #). As your app starts, you can check for the absence of that key as an indication that it’s an older paid version and you could programmatically “unlock” the app based on that. But unless you have a way to save that information to a server, if they delete the app and re-install they will have lost this safety check.

Rob

Thanks Rob,

Is it possible to validate the receipt? I’m referring to this: http://stackoverflow.com/a/19391432

Since you’re Enterprise, you should be able to follow that guide and get the receipt for the original purpose if I understand the answer with 52 up votes correctly.  We don’t have API’s to get that nor store a value in the keychain (which survives app deletion apparently). You could also store info in the keychain with Enterprise too.

But it’s basically what I described above but with more native tools to manage it. 

Rob