Receipts are now a thing of the past (server only?)

In developer.apple.com/wwdc22/10007 it is told at 20:43 about the IAP server API:

Receipts are now a thing of the past, as these new services provide in-app data in signed JSON format, so you can easily parse it and trust that it came from the App Store server.

Does the app still get the receipt?

I ask because my app checks for the latest subscriptionExpirationDate of the receipts to determine if an active purchase is available.

Does the app still get the receipt?

Currently yes. But comments like the one you have posted should make alarm bells ring - you should have a plan for what you will do if they go away. Apple have a record for giving short notice for the removal of in-app-purchase features.

Thank you for reaching out. I believe that segment is referring to the format of the messages, the old receipt style vs the new signed JSON format. If you were looking at a transaction in the new format, you could parse the expiresDate field https://developer.apple.com/documentation/appstoreserverapi/expiresdate, to obtain the same information.

I would also recommend looking at currentEntitlements in the app, if you want to see what the user is currently entitled to, as this can also cover cases like not providing access if the purchase was refunded or revoked. https://developer.apple.com/documentation/storekit/transaction/3851204-currententitlements

As mentioned above, the quoted text is referring to the new data format used by the App Store Server API. The App Store Server API was first introduced at WWDC21 alongside StoreKit 2, and it returns transaction data in signed JSON format, in contrast with the receipt data format returned by the older verifyReceipt endpoint. Using the App Store Server API is the most modern and feature-rich way to handle in-app purchase data on your server. See the API details here:

https://developer.apple.com/documentation/appstoreserverapi

If you haven't already, I recommend watching these two WWDC21 sessions as a good introduction to the App Store Server API and StoreKit 2:

https://developer.apple.com/videos/play/wwdc2021/10174

https://developer.apple.com/videos/play/wwdc2021/10114

Let us know if you have any more questions!

Will i be able (like i do currently) to use the receipts in the app on client site in the future or will the app some day not receive it anymore? Will the JSON format replace the receipts on the client site like it is replaced on the server API?

will the app some day not receive it anymore?

Apple won't comment on their future plans.

Receipts are now a thing of the past (server only?)
 
 
Q