Apple in-app purchase for OTT app
Apple in-app purchase for OTT app on Flicknexs: StoreKit product IDs mapped to plans and per-title prices, purchases recorded from the iOS app.
Flicknexs maps App Store product identifiers to the plans and per-title prices in its admin, so the iOS app can sell through StoreKit and the platform can record the purchase and open the content.
Trusted by industry leaders
50+ OTT platforms powered by Flicknexs
Quick answer: Apple in-app purchase for OTT app means the iOS app sells subscriptions and single titles through Apple's StoreKit, with Apple collecting the money at the store's published fee. On Flicknexs, product IDs are mapped to plans and per-title prices in the admin, and the platform records each purchase reported by the app and grants access.
Flicknexs provides apple in-app purchases as part of its white-label OTT platform. Flicknexs maps App Store product identifiers to the plans and per-title prices in its admin, so the iOS app can sell through StoreKit and the platform can record the purchase and open the content.
Why Apple in-app purchase is a decision, not a feature toggle
An operator who ships an iOS app faces a choice they do not face on the web. Apple decides when a purchase inside an app must go through Apple's in-app purchase system, and the store's published fee applies to every sale made that way. Some operators sell only on the website and let the iOS app be a viewing surface. Others sell inside the app because that is where the audience is, and accept the fee for the convenience. Either way, the platform must handle the StoreKit purchase correctly and record it against the right plan or title.
Flicknexs handles the in-app side as follows. The iOS app presents the subscription plans and pay-per-view titles that have an App Store product identifier mapped to them in the admin. The viewer buys through StoreKit, Apple charges the viewer's Apple ID, and the app reports the completed purchase to the platform, which records it and grants access to the plan or the title. Prices shown in the app are Apple's prices for that product in the viewer's storefront, set in App Store Connect rather than in the Flicknexs admin.
The rules on when in-app purchase is required, what content may be sold outside it, and how subscriptions behave are written by Apple in the App Store Review Guidelines and the StoreKit documentation, and they change by region and over time. This page describes what the platform does with a StoreKit purchase; it does not interpret Apple's rules for your app. Read the guidelines, particularly the section on in-app purchase, before deciding whether to sell inside the app at all, and re-read them at each major release.
What the Apple in-app purchase integration does on Flicknexs
Each row is behavior present in the Flicknexs iOS app and admin on the date checked, stated in Apple's own terms.
StoreKit purchases
The iOS app sells subscription plans and pay-per-view titles through StoreKit, charged to the viewer's Apple ID.
Product ID to plan
Each subscription plan in the admin can carry the App Store product identifier that sells it.
Product ID to title
Each pay-per-view title can carry its own App Store product identifier and price mapping.
Purchase recorded from the app
After StoreKit completes, the app reports the purchase and the platform records it against the viewer.
Access on every device
A plan bought in the iOS app is attached to the account and works in the web and other apps.
Store pricing
The price the viewer sees is Apple's price for that product in their storefront, set in App Store Connect.
Revenue reports
In-app purchases recorded by the platform appear in the monthly subscription and pay-per-view reports alongside web sales.
Source: Flicknexs platform documentation and architecture specification, 2026-09-03.
How an Apple in-app purchase flows through the Flicknexs iOS app
From the product identifier in App Store Connect to the access record on the platform, this is the path a purchase takes.
Products are defined in App Store Connect
Apple requires every purchasable item to exist as a product in App Store Connect with an identifier, a type such as auto-renewable subscription or non-consumable, and a price in Apple's price tiers. Those products are created and priced by you inside Apple's tools. The Flicknexs admin does not create App Store products; it maps to the identifiers you created so the app knows which product sells which plan or title.
The admin maps identifiers to plans and titles
On each subscription plan the admin holds a field for the App Store product identifier, and each pay-per-view title carries its own identifier and per-title price mapping. When the iOS app builds its plan and title screens, it reads those mappings and asks StoreKit for the matching products, so the app displays Apple's localized price next to the plan or title the viewer is about to buy.
StoreKit runs the purchase sheet
The viewer taps buy and StoreKit presents Apple's own purchase sheet, authenticated with Face ID, Touch ID or the Apple ID password. The app never sees a card number, and neither does the platform. Apple charges the viewer, applies the store's published fee, and returns a completed transaction to the app. Renewals of an auto-renewable subscription are charged by Apple on the schedule set in App Store Connect.
The app reports the purchase and the platform records it
Once StoreKit reports the transaction as complete, the app sends the product identifier and the transaction details to the platform, which records the purchase against the signed-in viewer's account and marks the plan active or the title purchased. The player opens the content on the spot. The purchase appears on the subscriber record in the admin and in the monthly revenue reports as a store-billed sale.
Access follows the account, not the device
Because the platform records the purchase on the viewer's account, the same sign-in on the website, the Android app or the TV apps sees the plan as active. A family that bought a plan on an iPhone can watch on the living-room television without buying again. The store fee applied once, on the iOS purchase; the platform simply recognizes the account everywhere.
What stays with Apple
The transaction history, the subscription's renewal state, refunds granted by Apple support, and the viewer's payment method all live with Apple and are visible to you in App Store Connect. The platform holds the record of what was bought and the access it grants. When those two disagree, App Store Connect is the record of money and the Flicknexs admin is the record of access, and the operator reconciles between them.
Setup for Apple in-app purchase, from App Store Connect to the admin
Five steps in order. The first two happen inside Apple's tools; the last three in the Flicknexs admin and the app build.
- 1
Accept Apple's paid apps agreement and set up banking
In App Store Connect, the account holder accepts the paid applications agreement and enters banking and tax details. Apple will not sell anything inside your app until this is complete, and the review of those details is Apple's timeline, not the platform's. Start it early; it is the step operators most often discover late.
- 2
Create the products in App Store Connect
Create an auto-renewable subscription product for each plan you want to sell inside the app, grouped in a subscription group, and a non-consumable or similar product for each pay-per-view title you want to sell there. Give each a clear identifier and choose its price tier. Note the identifiers; you will paste them into the admin.
- 3
Map identifiers to plans and titles in the admin
Open each subscription plan in the Flicknexs admin and enter its App Store product identifier. Open each pay-per-view title you intend to sell in the app and enter its identifier and price mapping. Plans and titles with no identifier are not offered for purchase inside the iOS app, which is a useful way to keep some content web-only.
- 4
Test with a sandbox Apple ID
Build the iOS app with your mappings, sign in on a test device with a sandbox Apple ID from App Store Connect, and buy a plan and a title. Confirm that the app shows Apple's price, that the purchase completes on Apple's sheet, that the platform records it on the subscriber record, and that the content opens on the device and on the website with the same account.
- 5
Submit for review with in-app purchases attached
Attach the in-app purchase products to the app version in App Store Connect and submit for review. Apple reviews the products alongside the build. After approval, make one real purchase of a low-priced title from a personal Apple ID and check it in App Store Connect and in the admin before promoting in-app purchase to viewers.
Limits: what the Apple in-app purchase integration does not do
Stated plainly so the decision to sell inside the app is made with the current build in view.
No server-side receipt validation
The platform records the purchase as reported by the app after StoreKit completes it. It does not send the receipt or the signed transaction to Apple's servers for a second validation in the current build. Operators for whom an independent server check is a requirement should raise it with the Flicknexs team before launch rather than assume it is present.
No App Store Server Notifications
Apple can push renewal, cancellation, refund and billing-issue events to a server endpoint. The current build does not receive those notifications. A cancellation made in the viewer's App Store settings, or a refund granted by Apple, is therefore visible in App Store Connect but is not pushed to the platform, and the operator updates the subscriber record in the admin when needed.
Prices and offers are set in App Store Connect
The price the viewer sees in the app is Apple's price tier for that product in the viewer's storefront. Changing the plan price in the Flicknexs admin changes the web price only. Introductory offers, promotional offers and family sharing are configured and applied by Apple; the platform records the product the app reports and does not manage those offers from the admin.
Coupons do not apply inside the app
The promotion codes and global coupon setting on the coupons and discounts page work only on Stripe checkout on the web. There is no code field on Apple's purchase sheet, and the platform cannot discount an App Store price. A discount for iOS buyers is an Apple offer created in App Store Connect, subject to Apple's rules.
Apple's rules decide when in-app purchase is required
Whether your app must sell through in-app purchase, whether it may link to a web checkout, and how those rules differ by region are decided by the App Store Review Guidelines and any regional terms Apple publishes. Flicknexs implements the StoreKit purchase; it does not decide policy for your app. Read Apple's guidelines and take advice for your market before you rely on a web-only sales model in the app.
Worked example: a kids education service selling on iPhone and iPad
Picture a kids education service with animated lessons for early readers. Its audience is parents holding an iPad, and the founder knows that most of them will buy where they already are. She creates two auto-renewable subscription products in App Store Connect, monthly and annual, in one subscription group, and a non-consumable product for a premium phonics course sold on its own. She enters the identifiers on the matching plans and on the course title in the Flicknexs admin, and leaves a small set of free lessons open so a parent can judge the teaching before buying.
A parent taps the annual plan in the iPad app. StoreKit shows Apple's price in their local currency, the parent confirms with Face ID, and the app reports the completed purchase to the platform. The subscriber record shows the annual plan active, the lessons open on the iPad, and that evening the same sign-in opens them on the family television through the Android TV app. A second parent buys only the phonics course; it is recorded as a pay-per-view purchase and appears in the monthly report next to the subscription income.
Three months later a parent cancels the subscription from their App Store settings. Apple stops billing and shows the cancellation in App Store Connect. Because the platform does not receive Apple's server notifications, the founder checks App Store Connect at her weekly review and ends the plan on the subscriber record so the lessons close at the end of the paid period. She also keeps the website checkout through Stripe for parents who prefer it, and compares store-billed and web income by month in the revenue reports.
Checklist before you sell through Apple in-app purchase
Run every line with a sandbox Apple ID first, then repeat the purchase line once with a real account after review.
- The paid applications agreement is accepted in App Store Connect and banking and tax details are complete, so Apple can pay you.
- Every plan sold in the app has an auto-renewable subscription product in App Store Connect and its identifier on the plan in the admin.
- Every pay-per-view title sold in the app has a product in App Store Connect and its identifier and price mapping on the title.
- Plans and titles that should stay web-only have no identifier, and the iOS app does not offer them for purchase.
- A sandbox purchase of a plan shows Apple's localized price, completes on Apple's sheet, and appears as active on the subscriber record.
- A sandbox purchase of a single title records a pay-per-view purchase and opens the title on the device and the website.
- Your support desk knows that cancellations and refunds happen in Apple's systems and that the subscriber record in the admin is updated by hand afterward.
- Your team has read the App Store Review Guidelines section on in-app purchase and knows what the app may sell outside it.
- In-app purchase products are attached to the app version submitted for review, and one real low-priced purchase has been checked after approval.
Apple in-app purchase beside web checkout and the other apps
The iOS app is one surface of a service that also runs on the web, on Android and on televisions. The iOS OTT app page describes that app, its player and what it inherits from the admin. Purchases made inside it go through Apple and carry the store's published fee; purchases made on the website go through Stripe, PayPal, Razorpay or another of the gateways on the payment gateways page and carry only that gateway's own charge. Because access is recorded on the account, a plan bought either way opens content on every device. Many operators promote the web checkout and let in-app purchase serve the viewers who prefer it.
The Android side mirrors this. The Google Play Billing page describes purchase-token verification against Google and real-time developer notifications decoded on the server, which is a different verification model from the one on iOS described here. An operator selling on both platforms maps the same plan to an App Store identifier and a Google Play product identifier, and the admin shows both store-billed sales next to web sales in the monthly revenue reports.
The pricing model underneath is the same everywhere. Subscription plans, pay-per-view titles with rental windows, free-preview minutes and paid live events are defined once on the video paywall. Apple's price tiers decide what the viewer pays in the app, Apple collects it, and the platform decides what that purchase opens by reading the plan or title the identifier maps to.
Which plan includes Apple in-app purchase
Standard layers
Apple in-app purchase is available on any plan that includes the iOS app, because the StoreKit purchase flow is part of the app rather than a separately priced module. Flicknexs takes no share of what Apple pays out to you. Plans are flat fees and Flicknexs takes no commission on your revenue; payment-gateway fees are between you and your gateway. See our pricing page for current plan and pricing details. The fee Apple deducts is the store's published fee, set and documented by Apple.
Pricing & billing
F2 Super includes 300 GB of storage and 20 TB of bandwidth yearly, and adds native Android and iOS mobile apps; see our pricing page for current plan and pricing details. That is the first plan with the iOS app, and therefore the first plan on which Apple in-app purchase can be used. F3 Premium includes 1 TB of storage and 10 TB of bandwidth monthly, and adds Android TV and Fire TV apps; see our pricing page for current plan and pricing details. F4 Enterprise includes 2 TB of storage and 20 TB of bandwidth monthly and adds dedicated support to everything in F3; Samsung, LG, Roku and Apple TV apps are add-ons on any plan. See our pricing page for current plan and pricing details.
Annual savings
F1 Standard is the web-only plan, with 300 GB of storage and 20 TB of bandwidth yearly; see our pricing page for current plan and pricing details. F1 Standard includes 300 GB of storage and 20 TB of bandwidth yearly for website streaming; see our pricing page for current plan and pricing details. On those two plans there is no iOS app, so sales happen on the website through the gateways on the payment gateways page. Yearly billing on F1 to F4 costs less per month than monthly billing; see our pricing page for current plan and pricing details.
Conclusion: what to do next
Already on Flicknexs
If you are already a Flicknexs customer with the iOS app, open a subscription plan in the admin and check whether it carries an App Store product identifier; if it does not, the app is not selling that plan. Then run the sandbox checklist above and decide, with Apple's guidelines open, which plans and titles should be sold in the app and which should stay web-only.
Choosing a platform
If you are choosing a platform, ask each vendor two blunt questions about iOS: how is a StoreKit purchase recorded on the server, and does the server validate receipts or receive Apple's server notifications. On Flicknexs the honest answer is that the purchase is recorded from the app and that neither receipt validation nor server notifications are in the current build. Ask for the same honesty elsewhere.
Before a rights call
Read the companion pages next. The iOS OTT app page covers the app itself. The Google Play Billing page shows the Android model, where purchase tokens are verified against Google and developer notifications are decoded on the server. The payment gateways page lists the web gateways that carry no store fee, and the video paywall page explains the pricing model every surface shares.
Frequently Asked Questions
Everything you need to know about Apple in-app purchase on Flicknexs.
No. It is part of any plan that includes the iOS app, and Flicknexs takes no share of store income. Plans are flat fees and Flicknexs takes no commission on your revenue; payment-gateway fees are between you and your gateway. See our pricing page for current plan and pricing details. Apple deducts the store's published fee before paying you.
StoreKit completes the transaction on Apple's purchase sheet, the iOS app reports the product identifier and transaction to the platform, and the platform records the purchase and grants access. Server-side receipt validation and App Store Server Notifications are not implemented in the current build.
Apple decides that in the App Store Review Guidelines, in the section on in-app purchase, and the rules vary by region and change over time. Flicknexs implements the StoreKit purchase but does not interpret Apple's policy for your app; read the guidelines for your market before choosing a sales model.
Any plan that includes the iOS app. F2 Super includes 300 GB of storage and 20 TB of bandwidth yearly, and adds native Android and iOS mobile apps; see our pricing page for current plan and pricing details. The web-only plans sell through web gateways instead.
In App Store Connect, using Apple's price tiers. The viewer sees Apple's price for that product in their storefront. Changing a plan price in the Flicknexs admin changes only the web price; the admin holds the product identifier mapping, not the App Store price.
Yes. The platform records the purchase on the viewer's account, so the same sign-in on the website, the Android app, the Android TV app or the Fire TV app sees the plan as active. The store fee applied once, on the iOS purchase.
Yes. Give the pay-per-view title an App Store product in App Store Connect and enter its identifier and price mapping on the title in the admin. The app then offers it through StoreKit and the platform records the purchase against the viewer.
Apple stops billing and shows the cancellation in App Store Connect. Because the platform does not receive App Store Server Notifications, the operator checks App Store Connect and ends the plan on the subscriber record in the admin when the paid period should close.
No. Promotion codes and the global coupon setting apply only on Stripe checkout on the web. There is no code field on Apple's purchase sheet. Discounts for iOS buyers are Apple offers configured in App Store Connect under Apple's rules.
Yes. A plan or title with no App Store product identifier in the admin is not offered for purchase inside the iOS app. Whether the app may then point viewers to the website is governed by Apple's guidelines for your region.
Create a sandbox Apple ID in App Store Connect, sign in with it on a test device, and buy a plan and a title in the app. Confirm Apple's price appears, the purchase completes, the subscriber record updates, and the content opens on the device and the website.
Refunds for App Store purchases are requested by the viewer from Apple and granted by Apple; you see them in App Store Connect. The operator then ends the plan or purchase on the subscriber record in the Flicknexs admin so access stops when intended.