I have an iOS app that offers in-app subscriptions. We were originally unwittingly using the now-deprecated transactionReceipt
field on SKPaymentTransaction
. (This was unfortunately what was provided via a third-party library we were using.) When, from our server, we call into Apple's validation service, it returns "iOS 6 style" receipt data.
We're now changing our code to use the receipt data provided inside the app bundle. Submitting this to Apple's validation service yields an "iOS 7 style" receipt.
Since we can't ensure that every copy of the app out there is updated, we have to be able to accept the "iOS 6 style" receipts that our app submits to our server. However, it would be really great if, on the server side, we could somehow use these to retrieve the newer "iOS 7 style" receipts.
I tried re-submitting the base64-encoded data that appears in the latest_receipt
field from the response from Apple's validation service for an iOS 6 style receipt, but it appears you just get the same data again.
Is there anything we can do to request the full iOS 7 style receipt using only the iOS 6 style receipt data we have?