In‑App Purchase

Offer customers extra content and features using in‑app purchases — including premium content, digital goods, and subscriptions — directly within your app. You can even promote and offer in‑app purchases directly on the App Store.

Overview

In‑app purchases can be used to sell a variety of content, including subscriptions, new features, and services. There are four types of in‑app purchases. Users can make in‑app purchases on iOS, iPadOS, macOS, watchOS, and tvOS.

Consumable

Users can purchase different types of consumables, such as lives or gems in a game, to further their progress through an app. Consumable in‑app purchases are used once, are depleted, and can be purchased again.

Non‑Consumable

Users can purchase non‑consumable, premium features within an app. Non‑consumables are purchased once and do not expire, such as additional filters in a photo app. Apple can host content associated with your non‑consumable in‑app purchases.

Auto‑Renewable Subscriptions

Users can purchase access to services or periodically updated content, such as monthly access to cloud storage or a weekly subscription to a magazine. Users are charged on a recurring basis until they decide to cancel.

Learn more about subscriptions

Non‑Renewing Subscriptions

Users can purchase access to services or content for a limited duration, such as a season pass to streaming content. This type of subscription does not renew automatically, so users need to renew each time.

Videos New

Watch WWDC session videos to learn the latest on in‑app purchases, including updates to refund handling, App Store server notifications, StoreKit, subscriptions, and more.

What’s new with in‑app purchase

See all in‑app purchase videos

WatchKit icon
watchOS Apps

Now you can offer in‑app purchases directly in your watchOS apps, so users can access premium content, all right from their wrist. Get started with Xcode 11.4 and watchOS 6.2.

Learn more

Freemium Business Model

In‑app purchases are often used with the freemium business model. Learn how developers across a range of categories approach using this model in their apps.

Learn more

Preparing

Before offering in‑app purchases, you’ll need to sign the Paid Applications Agreement and set up your banking and tax information.

App Store Connect Help: Agreements, tax, and banking overview

Set Up Xcode Configurations

Use Xcode to enable the in‑app purchase service for your app.

Xcode Help: Add a capability to a target

Create Your In‑App Purchases in App Store Connect

Configure your in‑app purchases in App Store Connect, and include details such as name, pricing, and description that highlights the features and functionality of your in‑app purchase. You can also create and maintain your in‑app purchases using XML.

App Store Connect Help: Create an in‑app purchase

Designing and Building

Design Your In‑App Purchase Experience

The user interface for your in‑app purchase should fit well with the rest of your app and effectively showcase your products.

View the Human Interface Guidelines

Implement Your In‑App Purchases

Use the StoreKit Framework to embed the in‑app purchase into your app and securely process purchases of content and services. Make sure to complete the steps in the implementation checklist.

View API documentation

Validate Receipts

Receipts provide a valuable record of the sale. Consider using receipt validation code to protect your content and prevent unauthorized purchases.

App Store Receipts App Store Server Notifications Validating Receipts with the App Store

Validating Receipts Locally

Manage Refunds

App Store server notifications include refund notifications for all types of in‑app purchases. You can use this information to take action in response — for example, adjusting a user’s currency balance in a game, or restricting access to content unlocked by an in‑app purchase. If you choose to take action, inform the user of any changes and let them know if there’s anything they need to do in response.

If you offer auto-renewable subscriptions, use App Store server notifications with receipt validation to understand a subscriber’s status. To learn more, see Using Receipts to Retain Subscribers.

Enabling Server-to-Server Notifications Handling Refund Notifications

Testing

Test Transactions

Use the Apple sandbox testing environment to test your in‑app purchases without incurring charges.

App Store Connect Help: Create a Sandbox Tester Account Testing In‑App Purchase Transactions

Test the Full User Experience

Use TestFlight to gain valuable feedback on your app and in‑app purchases from a wider audience before releasing your app on the App Store. Invite users on your team in App Store Connect, and up to 10,000 external testers using a public link or their email address. All in‑app purchases are free during the beta testing period, and will not carry over when the testing period is over.

Learn more about TestFlight

Publishing

Submit Your In‑App Purchases for Review

Once you’ve completed testing, verify that you’ve followed the App Review Guidelines and implementation checklist, then submit using App Store Connect.

App Store Review Guidelines App Store Connect Help: Submit an in‑app purchase

Promote Your In‑App Purchases on the App Store

You can choose to promote up to 20 in‑app purchases at a time on your product page, increasing discoverability for content previously only found inside your app. Users can browse in‑app purchases directly on the App Store and start a purchase even before downloading your app.

Promoting Your In‑App Purchases

Distribute Promo Codes

Give press and influencers early access to your app’s in‑app purchases with promo codes from App Store Connect. You can give away up to 100 promo codes for each in‑app purchase item, up to a maximum of 1,000 codes per app.

App Store Connect Help: Promo codes overview
Territory-specific Pricing

Apps with auto-renewable subscriptions can offer territory-specific prices. You can choose from 200 price points across all available currencies and price tiers to offer appropriate pricing for each location.

Customer Payment Methods

The App Store handles payment processing, so it’s easy to offer your content to users around the world. Users pay for your apps and in‑app purchases with credit or debit cards, carrier billing, digital wallets, or App Store and iTunes gift cards, depending on regional availability.

Learn more