Determine eligibility
To be eligible for Advanced Commerce API access, your app must use In-App Purchases to support one of the following business models that’s core to the functionality of your app:
Exceptionally large catalogs of one-time purchases. Apps that host large libraries of content, where new items — such as an audiobook, class, or course — are frequently added and each is merchandised as a single In-App Purchase. People can buy a single In-App Purchase, or multiple depending on their needs.
Exceptionally large catalogs of subscription content. Apps that include frequently added content from multiple creators, with frequent additions, where each creator’s offering is merchandised as a single auto-renewable subscription. People can subscribe to one or multiple subscriptions within the app, each as a single In-App Purchase.
Provide access to subscriptions with optional add-on content as a single purchase within the same app as part of its core offering. People can subscribe to a specific service as well as additional add-on content or services, all of which auto-renew as a single subscription within the same app. For example, an entertainment app that offers a subscription along with additional subscription add-ons, such as premium channels, sports, or regional content.
Note: Apps that offer subscription content — such as large catalogs or subscriptions with optional add-on content — may also apply for access to the Cancel API to help handle cancellations, validate content post-purchase, and manage their subscription catalog.
Understand app requirements
In order to support the Advanced Commerce API and provide a great customer experience, your app must manage your purchase catalog as individual product identifiers (or SKUs) in your own system as well as:
System requirements
The Advanced Commerce API may only be used by apps that use the App Store commerce system. Apps must be compatible with devices running a minimum of iOS 15.0, iPadOS 15.0, Mac Catalyst 15.0, tvOS 15.0, visionOS 1.0, or watchOS 8.0.
Additional recommendations
To further support the Advanced Commerce API in your app and provide a great customer experience, consider using the following features and technologies:
- Use the App Store Server Library to more easily create your in-app signature request, generate JSON Web Tokens (JWT) to authorize your calls, verify transactions, and more.
- For subscription apps, enable Billing Grace Period in App Store Connect. This can help prevent service interruptions due to billing issues and lets subscribers whose auto-renewals fail due to payment issues continue to access their subscription for a period of time while Apple attempts to collect payment.
- Use the Send Consumption Information endpoint in the App Store Server API to send information about a customer’s In‑App Purchase (including auto-renewable subscriptions) to Apple when they request a refund. This data helps improve our refund logic to help ensure flexible, accurate, and informed decision making.
Request access and submit for review
If you’d like to use the Advanced Commerce API, please submit a request form to tell us a bit about your app and intended use case. Requests are handled on a per-app basis. If approved, you’ll receive an email confirmation and can begin to set up your project for the Advanced Commerce API.
Once your app is tested and ready, you’ll submit it for App Review. Use App Store Connect to submit your app binary and your generic In-App Purchase Product ID. When submitting, please mention in your review notes that your app uses the Advanced Commerce API. Be sure to adhere to the terms and conditions of the agreement, the App Review Guidelines, and the Apple Developer Program License Agreement. If your submission is incomplete, review times may be delayed or your app may be rejected. After Apple reviews and approves your submission, App Store Connect updates your app’s status and notifies you. Learn about submitting for review.
If you already have access to the Advanced Commerce API and would like to make updates, like adding product identifiers, new business models, or significant price changes, you’ll need to submit your updates to the Advanced Commerce API Access form.
Make a request
Q&A
What types of In-App Purchases can I offer using Advanced Commerce API?
You can use the Advanced Commerce API to support In-App Purchases offered through the App Store — including consumables and auto-renewable subscriptions — that provide access to premium features, additional content, or digital goods. Keep in mind that these In-App Purchases must fall into an eligible business model.
Can I apply to use the Advanced Commerce API if I participate in any Apple programs?
Yes. If approved, your app may use Advanced Commerce API while also participating in Apple programs such as the Apple Video Partner Program, News Partner Program, or App Store Small Business Program.
What App Store commerce features can I access when using the Advanced Commerce API?
The Advanced Commerce API provides you with a powerful way to offer your content and services around the world using In-App Purchases. Keep in mind that purchases handled by the Advanced Commerce API can’t be promoted on the App Store and are unable to use certain App Store features at this time, including subscription offers, Family Sharable In-App Purchases, or StoreKit Testing in Xcode.
Where can I view reporting for purchases made through the Advanced Commerce API?
You can view your purchases made through the Advanced Commerce API in App Store Connect within your Summary Sales Reports and Payments and Financial Reports.
Does using the Advanced Commerce API impact my commission rate?
No. You remain on your existing business terms with no impact to your commission rate.
If I receive access to the Advanced Commerce API, do I have to manage all of my In-App Purchases through the Advanced Commerce API or can I also manage them in App Store Connect?
You may use the Advanced Commerce API or App Store Connect (or both) to manage your In-App Purchases. You aren’t required to use one or the other exclusively if you receive access.
If my application is rejected, can I reapply?
Yes, you may reapply. To be eligible to access the Advanced Commerce API, your app must meet the criteria outlined above. We’re evolving eligibility to support additional use cases over time.
How do I request enhancements or report bugs related to the Advanced Commerce API?
To report any bugs or share enhancement requests, please use Feedback Assistant. Select “Developer Tools & Resources” as your topic and then “Advanced Commerce API” from the problem area menu. Learn more about bug reporting using Feedback Assistant.
Where can I find more information about the technical details?
For more details and technical guidance, review our Advanced Commerce API documentation.