An interrupted purchase is a transaction that requires the user to perform some action outside of your app before completing their transaction. For example, the user may need to update a payment method or accept new terms and conditions before continuing with their transaction.
You can test interrupted purchases in sandbox:
https://developer.apple.com/documentation/storekit/in-app_purchase/testing_in-app_purchases_with_sandbox
Basically, there is a failed transaction with a problem that the user has to fix. If the user fixes the problem, there will be a new success transaction that you have the handle.
To prevent it in code you have to listen all the time to the updatedTransactions method from SKPaymentTransactionObserver and handle all transactions that you receive.
Topic:
App & System Services
SubTopic:
StoreKit
Tags: