FB: https://feedbackassistant.apple.com/feedback/22556883
We're seeing a small number of production users where both Transaction.currentEntitlements and Transaction.all return zero transactions for a valid, active, non-refunded non-consumable IAP. This makes it impossible to restore the purchase via any StoreKit 2 API.
Environment:
Xcode 26.4 (Build 17E192)
iOS 26.4.1
Direct call to SK2 Transactions.all & Flutter in_app_purchase package v3.2.3 (uses SK2 on iOS 15+)
Non-consumable IAP (one-time purchase)
What we observe:
AppStore.sync() triggers but the purchase stream returns 0 transactions
Transaction.all returns empty
Transaction.currentEntitlements also returns empty
User is confirmed on the correct Apple ID
Issue reproduces on both iPhone and Mac for the same Apple ID
Issue appears to have started recently for users who previously had no problems
Debug log from affected production user:
[2026-04-20T08:50:10.744115Z] init: iapAvailable=true
[2026-04-20T08:50:10.744566Z] init: isPremium=false
[2026-04-20T08:50:10.744567Z] init: triggering silent restorePurchases
[2026-04-20T08:50:45.974566Z] restore: started
[2026-04-20T08:50:45.986848Z] restore: sk2Transactions count=0
[2026-04-20T08:50:45.993004Z] restore: sk2Direct isVerified=false active=null
[2026-04-20T08:50:45.993011Z] restore: sk2Direct inconclusive — falling back to standard restore
[2026-04-20T08:51:16.000851Z] restore: timed out after 30s — fallback isPremium=false
[2026-04-20T08:51:16.000910Z] restore: completed — succeeded=false foundPurchase=false
Unable to reproduce in sandbox — Transaction.all works correctly there. Appears specific to production for a small subset of users.
Has anyone else seen this?
10
1
246