Configure in-app purchase settings

Overview for configuring in-app purchases

In-app purchases let you offer extra content and features — including digital goods, subscriptions, and premium content — directly within your app on all Apple platforms.

There are four types of in-app purchases:




A product that is used once, after which it becomes depleted and must be purchased again. Example: fish food in a fishing app.


A product that is purchased once and does not expire or decrease with use. Example: race track for a game app.

Auto-renewable subscriptions

A product that allows users to purchase dynamic content for a set period. This type of Subscription renews automatically unless canceled by the user. Example: Monthly subscriptions for an app offering streaming services.

Non-renewing subscriptions

A product that allows users to access content for a limited duration of time. This type of Subscription does not renew automatically. Example: One year subscription to view live gaming content.

You can create up to 10,000 in-app purchase products per app. Every in-app purchase must be associated with an app and can be shared across multiple platform versions (iOS, macOS, tvOS). In-app purchases can’t be shared across different apps.

Implementing in-app purchases in your app requires configuration between your apps’ server and Apple’s servers, as well as set up and ongoing management in App Store Connect. The following workflow can be used:

  1. Accept the Paid Applications Agreement

    To offer in-app purchases, your membership Account Holder will need to accept the Paid Applications Agreement in the Agreements, Tax, and Banking section of App Store Connect.

  2. Design your in-app purchase

    To ensure your in-app purchase experience fits well with the rest of your app and effectively showcases your products, review the Human Interface Guidelines and App Store Review Guidelines.

  3. Configure in-app purchases in App Store Connect

    Create in-app purchases and add metadata, such as product name, description, price, and availability. You’ll also need to generate in-app purchase keys and set a tax category, which will allow Apple to calculate the appropriate tax on customer transactions.

  4. Implement StoreKit

    Add the in-app purchase capability to your app in Xcode, making sure that the bundle identifier and product identifiers in Xcode match the identifiers for your app and in-app purchases in App Store Connect.

  5. Test your in-app purchases

    Apple provides a testing environment, called sandbox, which allows you to test in-app purchases without incurring charges using test accounts. Test each part of your code to verify that you’ve implemented it correctly by using your app to make in-app purchases.

    You can further test your app and in-app purchases using TestFlight, or in Xcode.

  6. Use App Store Server Notifications

    App Store Server Notifications provide near real-time updates about transaction status and key events related to in-app purchases, such as a refund or a change in subscription status or Family Sharing access. To leverage these notifications, you’ll need to enter URLs for your production and sandbox server environments in App Store Connect.

  7. Submit your in-app purchases for review

    Before you publish your in-app purchase on the App Store it must be submitted for review. If you’re submitting your first in-app purchase, you must submit it with a new version of your app. Make sure you aren't missing any required information before submitting. Monitor in-app purchase statuses to understand if your in-app purchase is available or if it needs your attention.