A subscription bought on your website and the same subscription bought inside an iOS app are two different transactions with two different providers. Tying packages to the gateways that can sell them is how you keep one offer coherent across both.
Nobody would choose this arrangement. It exists because the app stores require digital goods to be sold through their own billing, with their own product records, their own price tiers and their own commission. That means a plan you defined on your platform cannot simply be charged inside an iOS app using your own card provider, and an app that tries will not pass review. The practical consequence is that the same commercial offer has to exist in more than one place, and something has to keep those in step. Linking packages to the gateways that are allowed to sell them is how the platform stops the two drifting apart, which they otherwise do the first time somebody changes a price.
Card providers and local methods you selected, where the relationship, the fees and the customer data are yours.
Apple, Google and Roku take the payment for purchases made inside their apps, which is their rule rather than an integration choice.
However the payment was taken, the platform holds one view of what somebody is entitled to, so support and reporting are not split by route.
Store price tiers are fixed steps rather than arbitrary amounts, they include local tax handling that varies by country, and the commission is taken off the top. A plan you sell for a round number on your website will usually land on a slightly different figure in an app, and trying to force them to match exactly tends to make both worse. The more useful goal is that a viewer is never surprised, which means being clear about what they are paying wherever they happen to be looking. What you should not do is quietly present the two as identical and hope nobody compares, because the people most likely to compare are your most engaged subscribers. The providers available on your own routes are covered under payment gateways.
Not every package needs to exist everywhere, and pretending otherwise creates work. A promotional tier aimed at a web campaign may never need a store product at all. A plan sold only through a partner may never appear on your own site. Restricting which gateways can sell a given package is what makes those cases straightforward rather than something to explain to support later. The same applies to transactional purchases, where the set of gateways allowed for rentals can differ from the set used for subscriptions. Packages themselves are defined under packages and subscriptions, and rentals under PPV and TVOD.
Almost every awkward billing conversation on a platform selling through app stores has the same root, which is a viewer who subscribed on their phone and then asks you to cancel, refund or change it. You frequently cannot, because the store holds that relationship rather than you, and the honest answer is to direct them to the store. That is not a platform limitation you can engineer away, so the useful thing is knowing which route a given subscription came through before the conversation starts. Because the platform records the provider against the subscription, that answer is on the account rather than being guessed at, and it sits alongside everything else under the subscribers manager and the orders manager.
Have questions about taking advantage of this limited-time offer? Check out the FAQ for answers.