Convert existing iOS paid app to freemium model with in-app purchase

There is now an Apple-approved way to do this on both iOS and macOS. The originally downloaded version of the app can be obtained from the receipt using the info key Original Purchased Version. You can then decide whether to unlock features if that version predates the switch to IAP.

For instance, once you have retrieved the receipt info:

NSArray *versionsSoldWithoutIAP = @[@"1.0", @"1.1", @"1.2", @"1.3"];
NSString *originalPurchasedVersion = [receiptInfoDict objectForKey:@"Original Purchased Version"];
for (NSString *version in versionsSoldWithoutIAP) {
    if ([version isEqualToString:originalPurchasedVersion]) {
        // user paid for the currently installed version
    }
}

For more info see the WWDC 13 video Using Receipts to Protect Your Digital Sales. At 5:40 the presenter comments: “I think the most exciting thing that’s in the receipt this year, especially for you guys if you have a paid app in the store is that we’ve included information in the receipt that’s going to let you do a transition from being a paid app to being a free app with in-app purchases without leaving behind all the customers that have already paid for your app.”

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)