Post

Replies

Boosts

Views

Activity

Critical: finishTransaction() fails to clear queue in iOS 26.2 Sandbox (TestFlight)
Environment OS: iOS 26.2 (Beta/Release) Framework: StoreKit 1 (or StoreKit 2) Environment: TestFlight / Sandbox Device: [Insert your device model, e.g., iPhone 15 Pro] Description I am encountering a persistent issue where SKPaymentQueue.default().finishTransaction(transaction) does not successfully remove the transaction from the queue. Every time a new purchase is initiated, the observer triggers an immediate update with the previous transaction's ID (Transaction ID). The system then displays a system alert stating: "You've already purchased this In-App Purchase. It will be restored for free." Even after explicitly calling finishTransaction, the same transaction reappears in the updatedTransactions array upon the next app launch or purchase attempt. Steps to Reproduce Add a transaction observer in didFinishLaunchingWithOptions. Initiate an In-App Purchase in TestFlight. Upon success (.purchased), call SKPaymentQueue.default().finishTransaction(transaction). Attempt to buy the same non-consumable item (or any item) again. Result: The previous transaction is pushed again, and the queue never clears. What I’ve Tried Ensured finishTransaction is called on the main thread. Verified that the observer is added at app launch. Manually iterating through SKPaymentQueue.default().transactions and finishing all entries. Signed out of the Sandbox account and used a completely new test account. Deleted and reinstalled the App via TestFlight.
1
0
82
13h
No warning email received from Apple even though we upload an app version WITHOUT Privacy manifest
After March 13th, we uploaded IPA packages without a privacy manifest and we still haven't received a warning email from AppStore Connect. So even if we add a privacy manifest, we still can't verify that the privacy manifest we've added in the IPA is correct. Has anyone encountered this situation, is Apple grayscale releasing this feature?
2
0
754
Mar ’24
appAccountToken is missing in JWSTransactionDecodedPayload
We use store kit original API for in-app purchase,I set a UUID to the SKMutablePayment object applicationUsername property, when finish the payment, In the App Store Server API, the JWSTransactionDecodedPayload object returns no appAccountToken field.This probability is extremely small, about 17 in 100,000.Does anyone have the same situation?
5
1
1.8k
Feb ’24
In App Purchase Callback not received
Test lost orders, cannot receive Apple callbacks on iOS13 and iOS14 systems, but iOS12 and below are good steps: Monitor the transaction queue: [SKPaymentQueue.defaultQueue addTransactionObserver:self]; Implementation protocol method: -(void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions 2. Initiate a sandbox payment, after the payment is successful, kill the APP before receiving the callback 3. Restart the app. At this time, the protocol method in iOS13 and iOS14-(void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions cannot receive the callback, but iOS12 and below systems can receive it This situation began to appear in February, before iOS13 and iOS14 were good. Has anyone else encountered this situation?
3
0
1.4k
Feb ’21