Tuesday, June 8, 2021 [Tweets] [Favorites]

StoreKit 2


StoreKit 2 delivers powerful, Swift-native APIs for in-app purchases and auto-renewable subscriptions. Learn how you can easily implement in-app purchases and subscriptions, and discover APIs for retrieving product information, handling transactions, determining product entitlements and customer status, as well as comprehensive testing support in Xcode.

Jake Mor:

The Refund API doesn’t let you programmatically issue a refund to your customers. It merely lets you show a sheet to customers, so they can request a refund from Apple. They hear back within 48 hrs.

Ryan Jones:

This makes it look like Devs control the refund. So we get all the ire, even more. With no control.


When Apple really doesn’t want to do something but is pressured into offering a “sweet solution,” you can just feel the contempt they have for the people asking for the full thing

On the plus side, it does look like StoreKit 2 makes lots of things easier.

Kosta Eleftheriou:

Google Play does what?? 🤯

“You may get an automatic refund if you uninstall a paid app shortly after first buying it”


Update (2021-06-13): Jacob Eiting:

This is huge. You are now able to get to IAP transactions IDs from the customer order ID present in customer emails.

This will help a ton with the evergreen “I purchased this thing, where is my content” support ticket.

Update (2021-10-20): Michael Love:

Bunch of new StoreKit stuff they didn’t mention at all, though it appears they still aren’t allowing developers to actually initiate refunds likely due to the fact that the whole backend is made out of tin cans + string.

“Invoice Lookup” is nice, but only works if the user has a receipt, which they usually don’t - Google has supported search by email from the beginning and they’ve done it safely/anonymously (have to enter it exactly + they don’t display it).


StoreKit 2 introduces powerful new Swift-based APIs that make supporting in-app purchases and subscriptions easier than ever. You can now easily determine product entitlements and eligibility for offers, quickly get a user’s history of in-app purchases, find out the latest status of a subscription with one simple check, provide a way to request refunds and manage subscriptions from within your app, and more. StoreKit 2 also uses Swift concurrency and JSON Web Signature to simplify how you retrieve product information and handle transactions.

Jacob Eiting:

“Wow, StoreKit2 is going to kill RevenueCat”

The reality:


Stay up-to-date by subscribing to the Comments RSS Feed for this post.

Leave a Comment