StoreKit2 and Apple ID l/p dialog

Hello, I'm using in my app storekit2 solution from wwdc example: https://developer.apple.com/documentation/storekit/in-app_purchase/implementing_a_store_in_your_app_using_the_storekit_api Anyway, I got rejection from Apple with information that "app includes a feature to restore previously purchased in-app purchase products by entering the user's Apple ID and password. However, subscription in-app purchases cannot be restored in this manner." I don't understand this issue. I don't force user to login. What is going on? I don't understand this issue. Can somebody help me understand this? Thanks.

Replies

I suspect you are calling receiptRefresh, that require a customer authentication event. And typically refreshing the receipt isn't necessary. If you need the latest status or transactions, use any receipt (old or new) and validate it with verifyReceipt with your shared secret to get the latest info.

If you are calling receiptRefresh, that should only be when there is no app receipt on device, should be extremely rare but in sandbox there is no app receipt until an In-app purchase (IAP) is completed on device or if a restoreCompletedTransactions is performed for a sandbox Apple ID that has purchased an IAP before.

It's suggested to either not use receiptRefresh or if you prefer to use it, allow it to be cancelled (customer declines to auth).