In-App Purchase Not Restoring Correctly Across Devices
A returning user taps Restore Purchases and gets "Nothing to restore" even though they own the product. Fix the StoreKit, validation, and entitlement layers.
Articles tagged with #IAP
A returning user taps Restore Purchases and gets "Nothing to restore" even though they own the product. Fix the StoreKit, validation, and entitlement layers.
Apple flagged your app under Guideline 3.1.1 for a missing Restore Purchases button. Add the button to your paywall and Settings, wire it to StoreKit, and resubmit.
User paid but your app still shows free, or canceled but still Pro. The server-authoritative StoreKit 2 fix, with App Store Server Notifications V2 and reconciliation.
Sandbox IAP has seven moving parts that must line up: the device Sandbox Apple Account, region, App Store Connect agreements, product status, bundle ID, capability, and StoreKit config file. The diagnostic order, current for iOS 18+ and Xcode 16 as of June 2026.
Set up iOS in-app purchases with RevenueCat in about 30 minutes: free up to $2,500/month tracked revenue, then 1%. Real product IDs, SwiftUI paywall code, sandbox QA, and when raw StoreKit 2 wins instead.