Practical guide · Updated July 25, 2026
How to enable in-app purchases
Apps with in-app purchases need more than a payment button. The store product, client transaction, server entitlement and restore path must agree.
Choose the product type
Use a consumable for repeatable units, a non-consumable for permanent access, and a subscription for ongoing access. Define product identifiers before wiring UI.
Configure both stores
Create matching products in App Store Connect and Play Console. Add pricing, tax and review information, then keep identifiers stable across environments.
Implement billing and entitlements
Use StoreKit 2 on Apple and Google Play Billing on Android, or a service such as RevenueCat. Never treat a successful client callback as the only entitlement record.
Restore and test edge cases
Test restore purchases, pending transactions, refunds, subscription expiration, grace periods and account switching before submission.
Give reviewers a complete path
Provide working products, test credentials and review notes. Submit associated in-app purchases with the app version when Apple review requires it.