Hand holding phone with food delivery app showing pizza options and map location.

One developer is currently available to jump onto a project!

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

This Is How Our Engineers Build KMP Apps

Here's the production-ready Kotlin Multiplatform template they built. Clean architecture, shared business logic, Firebase, Ktor.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

This Is How Our Engineers Build CMP Apps

Here's the production-ready Kotlin Multiplatform template they built. Clean architecture, shared business logic, Firebase, Ktor.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

App Store Billing vs External Payments: A Technical Decision Guide

Category:
Tech & Insights
Author:
Tamara Joksimovic
Date:
August 10, 2026
App Store Billing vs External Payments: A Technical Decision Guide

Once a mobile app crosses a meaningful subscription revenue threshold, the question of whether to stay with App Store billing or introduce external payments becomes a decision with direct consequences for margin, checkout conversion, engineering capacity, and compliance risk.

This technical decision guide is for CTOs, Heads of Mobile, Product Directors, and engineering teams evaluating mobile app payment architecture based on total cost and operational responsibility, not only the commission charged by Apple or Google

Key Takeaways

  • App Store billing usually offers the lowest operational complexity, while external payments provide more pricing and customer-data control in exchange for greater engineering and compliance responsibility.
  • A hybrid billing model can support a gradual rollout, but it requires one centralized subscription entitlement system that reconciles StoreKit, Google Play Billing, and web payment events.
  • The business case should include checkout conversion, processing, tax, fraud, support, maintenance, and migration costs, not only transaction fees.
  • Existing subscribers should generally remain on their current billing rail until a compliant, consent-based migration path is available.
  • Apple App Store and Google Play payment policies vary by storefront, app category, and program, so eligibility must be verified against current official documentation before implementation and again before release.
  • Based on our experience resolving duplicate subscriptions during a production hybrid billing rollout, this article explains how we corrected account-linking gaps, introduced idempotent webhook processing, and implemented automated subscription reconciliation before safely resuming the rollout.

1. When External Payments for Mobile Apps Make Business Sense

Introducing external payments is not automatically the right move for every subscription app. If your team is still assessing the financial impact of platform commissions, our guide to App Store fees and mobile payment alternatives provides the business context behind that decision.

Before changing the architecture, however, the team should determine whether the complete business case actually closes.

Existing subscription revenue. An external payment flow carries fixed engineering and operational costs, including development, maintenance, and ongoing compliance monitoring. That investment only pays off once monthly recurring revenue is high enough for the savings on store fees to outweigh the cost of building and maintaining the system. For applications with lower MRR, store billing may remain more economical once total cost of ownership is considered.

User base size. A larger subscriber base means greater potential savings, but also greater risk. A defect in billing logic, migration, or webhook handling can affect thousands of paying users before the team identifies the underlying pattern. The subscription infrastructure must be able to handle that scale without compromising access reliability.

Payment processing costs. The comparison should include the complete cost structure. Store fees bundle transaction processing, platform fraud controls, refund mechanisms, and parts of billing-related customer support. External billing introduces payment processor fees, fraud prevention costs, tax and compliance obligations, and additional internal support requirements.

Checkout friction. Moving from an in-app purchase with a stored payment method to a web checkout introduces more steps and may reduce conversion. The size of that effect depends on the audience, available payment methods, storefront, and checkout implementation. It should be measured through a controlled rollout rather than assumed. The contribution-margin gain per converted subscriber must outweigh both any conversion loss and the ongoing cost of operating the external payment flow.

Ongoing maintenance. Store billing is a managed service. Apple and Google maintain the underlying infrastructure and handle specific parts of fraud prevention, regional tax processing, and billing operations. A custom payment system transfers more of that responsibility to the product team, including uptime, security, provider integrations, tax requirements, disputes, and customer support. This is a recurring operational cost rather than a one-time development project.

2. App Store Billing vs External Payment Architecture

There are three core architectural models, each with a different split of responsibility between the store and the internal engineering team.

Store-Managed Billing

Apple or Google manage much of the billing lifecycle, including transaction processing, renewals, refund mechanisms, and platform billing features.

The application still needs to process App Store Server Notifications or Google Play Real-time Developer Notifications, verify transaction state server-side, and map each purchase to its internal subscription entitlement model.

Advantages:

  • Lower engineering and operational overhead
  • Platform-managed fraud controls
  • A familiar purchase experience
  • Store-managed tax handling for store transactions

Limitations:

  • Store commission
  • Less flexibility around pricing experiments and promotions
  • Dependency on platform rules and app review
  • Limited ownership of payment and customer data

Team responsibility:

  • Server-side transaction or receipt validation
  • Processing platform notifications
  • Mapping subscription status to an internal entitlement model
  • Restoring access across devices and application installations

Web Checkout for Mobile Apps

With a web checkout, billing happens outside the store through a payment flow connected to an external payment provider.

Advantages:

  • Potentially lower transaction costs
  • Greater control over pricing, promotions, and checkout UX
  • Direct access to transaction data
  • More flexibility when running pricing and packaging experiments

Limitations:

  • Additional checkout steps may affect conversion
  • The team becomes responsible for more of the payment lifecycle
  • Platform rules limit how external payments can be presented in some regions and application categories
  • Billing support and dispute handling become more complex

Team responsibility:

  • Payment-provider integration
  • Fraud controls and payment security
  • Dunning and failed-payment recovery
  • Refund and chargeback workflows
  • Applicable tax calculation and remittance requirements
  • Entitlement management
  • Compliance with platform rules governing external payment communication

The exact obligations depend on the payment provider, merchant-of-record model, markets served, and type of digital product being sold.

Hybrid Mobile App Billing Model

In a hybrid billing model, App Store or Google Play billing remains available while an external payment method is introduced for eligible users or markets.

Advantages:

  • Maintains the familiar store purchase experience for part of the user base
  • Creates an opportunity to reduce payment costs for eligible transactions
  • Supports a gradual rollout
  • Allows the team to measure conversion and retention before expanding the external flow

Limitations:

  • It is usually the most architecturally complex option
  • Two billing sources must produce one consistent entitlement state
  • Support and finance teams must work across multiple payment systems
  • Conflicting subscriptions and identities become possible
  • Regional policy requirements must be evaluated continuously

Team responsibility:

  • Building a centralized entitlement service
  • Defining priority rules between billing sources
  • Linking store and web identities
  • Reconciling state across independent systems
  • Monitoring conflicts, delayed events, and subscription inconsistencies

For mid-size and enterprise apps, a hybrid model is often worth evaluating because it supports a controlled and measurable transition instead of a single cutover. It is not automatically the best option. The additional reconciliation and support burden may outweigh the fee savings when subscription volume or internal platform capacity is limited.

If your team is comparing store billing, web checkout, and a hybrid payment model, an early architecture review should map regional policy constraints, entitlement ownership, lifecycle events, and rollout risk before implementation estimates are treated as reliable.

If the architecture is already defined but delivery capacity is limited, Aetherius can also provide enterprise team augmentation across iOS, Android, and backend development.

3. Reference Mobile App Payment Architecture

Regardless of the chosen billing model, a system that scales reliably depends on several core architectural principles.

Backend as the Source of Truth

The iOS, Android, or web client should not be authoritative for subscription status. A backend subscription entitlement service should independently validate store transactions and payment-provider events, persist the current state, and expose a consistent access decision to every client.

This matters because client-side state can become outdated, manipulated, or inconsistent across devices. A backend source of truth allows the system to apply the same access rules regardless of where a transaction originated.

Account Linking

A customer may use an Apple ID inside the iOS application, a Google account on Android, and an email address during web checkout. The system needs a reliable mechanism for mapping those identities to one internal user account.

Account linking should be designed before introducing a second billing source. Otherwise, the same customer can appear as two different users, each with a separate subscription entitlement.

Centralized Entitlement Service

The entitlement service determines whether a customer currently has access to a specific product or feature based on all available signals, including store transactions, webhook events, refunds, chargebacks, and internal transaction records.

Premium access rules should not be duplicated across mobile clients. Centralizing the decision reduces platform inconsistencies and makes subscription behavior easier to audit and maintain.

Reliable Webhook Processing

Store notifications and payment-provider webhooks arrive asynchronously and may be delayed, duplicated, or delivered out of order. As with other forms of mobile SDK integration, responsibility for initialization, event ownership, failure handling, and platform-specific behavior should be defined before the integration reaches production.

The processing layer should include:

  • Retry logic
  • Idempotent event handlers
  • A dead-letter queue for events that repeatedly fail
  • Processing-lag monitoring
  • Alerts for unexpected event volume or failure rates
  • A complete audit trail

A temporary webhook failure should not leave a paying customer without access or allow a refunded subscription to remain active indefinitely.

Idempotency

The same event can be delivered more than once. Store platforms and payment providers allow duplicate delivery as part of their reliability mechanisms.

Every handler must therefore be idempotent. Reprocessing the same event should not create a duplicate subscription, grant access twice, produce conflicting state, or trigger an unintended billing action.

Subscription State Machine

Subscription status should be represented as an explicit state machine, with clearly defined transitions between states such as:

  • Trial
  • Active
  • Grace period
  • Billing retry
  • Paused
  • Expired
  • Cancelled
  • Refunded
  • Revoked

This prevents unexpected combinations of events from leaving an account in a state that the product cannot interpret consistently.

Audit Log

Every entitlement change should be recorded with its source, timestamp, previous state, and resulting state.

A reliable audit log is important for:

  • Resolving customer disputes
  • Investigating refunds and chargebacks
  • Debugging delayed or conflicting events
  • Supporting financial reconciliation
  • Understanding why access was granted or removed

Without this history, billing incidents are significantly harder to diagnose after the fact.

Want to see more detailed examples in video form?
Check out our YouTube channel
Check out our YouTube channel
Youtube Logo

4. Subscription Entitlement Management Across the Full Lifecycle

Teams building or migrating a billing system often cover the purchase and activation path well but underestimate how many states a subscription passes through during its lifecycle.

Activation. The initial purchase should create an entitlement only after the transaction has been verified. Trial periods, introductory offers, and delayed payment confirmation require separate handling.

Renewal. The system needs to process recurring payments and account for mid-cycle price changes, offer transitions, and delayed renewal notifications.

Failed payment. A failed charge requires clear dunning logic, including how frequently payment is retried and how the customer is notified.

Grace period. A customer may temporarily retain access after a failed payment. Store platforms and external payment providers may apply different rules, so the entitlement service must normalize those differences.

Cancellation. A cancellation usually stops the next renewal but does not immediately terminate access. The customer typically retains the entitlement until the end of the paid period.

Refund. A refund must be propagated through the entitlement service. The team must define how full and partial refunds affect access.

Chargeback. A chargeback is different from a normal refund because it originates through the customer’s bank and can carry an additional merchant penalty. The entitlement and risk systems should respond appropriately.

Restore purchases. Customers who reinstall the application, change devices, or move between platforms need a reliable way to restore access without purchasing the subscription again.

Each lifecycle state has different implications depending on the platform and billing model. The expected behavior should be documented for every relevant combination rather than assumed to be consistent across iOS, Android, and web.

The entitlement rules can remain centralized, but StoreKit and Google Play Billing still require platform-specific implementation and testing. Teams without sufficient internal coverage can bring in experienced iOS developers or Android developers without outsourcing ownership of the complete billing system.

5. Migrating Mobile Subscriptions Without Disrupting Existing Users

Moving an existing subscriber base from store billing to a hybrid or external payment model is one of the highest-risk parts of the implementation because the migration affects customers who are already paying for access.

Separate legacy and new subscribers. Existing store subscribers should generally continue to be billed through the store until their subscription expires or they enter a compliant, consent-based migration process. A team should not assume that it can silently transfer an active subscription to another payment method.

Complete identity mapping first. Store transaction identifiers should be connected to the correct internal customer account before a second billing source is introduced.

Run both billing systems in parallel. During the transition, the entitlement service must be able to process state from both systems and determine which one is authoritative for each linked account.

Implement reconciliation. A scheduled process should compare internal entitlement records with the actual state in the App Store, Google Play, and the external payment provider. Differences should be flagged before they become customer-facing incidents.

Define rollout and rollback criteria. Migration should proceed gradually by user percentage, geography, or customer segment. The team should establish measurable stop conditions and a rollback plan before releasing the new payment flow.

Our Hybrid Billing Experience: Duplicate Subscriptions

We joined a subscription app project after the client’s internal team had launched the first version of a hybrid billing model. The application had approximately 40,000 active paying users, all originally billed through the App Store or Google Play.

At that scale, store commissions had become a significant operating cost. The client decided to keep App Store billing as the default while introducing a web checkout for eligible EU users. This approach allowed the team to test external payments for mobile apps without migrating the entire subscriber base at once.

The web checkout took approximately six weeks to implement and was initially released to 10% of users. The first two weeks passed without any obvious problems. Then, over a single weekend, the support team received more than 200 reports from customers who had completed a web payment but were still seeing the paywall inside the mobile app.

An investigation of the subscription entitlement system revealed a second problem: approximately 3% of users who purchased through the web checkout had two active subscriptions. Their previous store subscription was still active, while the external payment flow had created another subscription under a separate account.

Within the limited rollout, this affected approximately 130 accounts. A full rollout could therefore have produced more than 1,000 conflicting subscriptions and a substantial volume of refunds.

What Caused the Entitlement Conflicts?

The checkout itself was working correctly. The failure was in the mobile app payment architecture surrounding it.

The first issue was incomplete account linking. Some customers used Sign in with Apple inside the app and were represented by an Apple private relay address. During web checkout, those same customers registered with their regular email address.

Because the subscription entitlement service could not connect the two identities, it treated them as separate users: one with an active store subscription and another with an active web subscription.

The second issue was the absence of automated subscription reconciliation. No scheduled process compared the internal entitlement state with the current state in App Store Connect, Google Play, and the external payment provider. Conflicts therefore remained undetected until customers contacted support.

How We Corrected the Hybrid Billing Architecture

We did not replace the web checkout because payment processing was not the source of the failure. Instead, we changed the entitlement layer around it:

  • We added an explicit account-linking step to the web checkout. When a customer could be matched to an existing store-linked account, the system merged the identity and entitlement state instead of creating another user.
  • We made the webhook handlers idempotent and added a check for an existing active entitlement before processing a new subscription event.
  • We introduced clear conflict rules into the subscription state machine. When two active billing sources appeared for the same linked account, the latest entitlement controlled access while the older subscription was flagged for investigation. The system did not silently cancel either subscription.
  • We implemented a daily reconciliation job that compared the internal database with App Store, Google Play, and payment-provider records. Alerts were triggered when the number of conflicting accounts crossed a defined threshold.

The rollout then resumed in controlled stages: 10%, 25%, 50%, and finally the remaining eligible users. At each stage, the team monitored entitlement conflicts and reconciliation results alongside checkout conversion.

The additional work extended the rollout by approximately five weeks, but the duplicate-subscription incident did not recur. The reconciliation process later identified two smaller inconsistencies before they affected customers.

The Practical Lesson

Implementing web checkout is only one part of a hybrid billing model. The more difficult work is ensuring that every store and external payment belongs to the correct customer, produces one consistent subscription state, and can be verified against every billing source.

For an existing subscription app, account linking, idempotent event processing, entitlement priority rules, and automated reconciliation should be designed before the first external payment is accepted. Otherwise, lower payment fees can be offset by duplicate charges, refunds, support costs, and loss of customer trust.

If your team is planning a move from store-only billing to a hybrid payment model, Aetherius can perform a free project estimate before rollout. We can identify account-linking, subscription entitlement management, reconciliation, and migration risks, then provide a practical implementation plan.

If additional delivery capacity is required, our engineers can join the existing team through a team augmentation engagement and help implement the mobile and backend changes.

Discuss your billing architecture with our team.

6. External Payments, App Store Compliance, and Google Play Policy

This is an area where the technical and policy decisions need to move together because platform rules directly determine what can be implemented.

Rules by digital service type. Apple and Google treat digital content consumed within the application differently from physical goods and services consumed outside it. External payment eligibility depends on that classification.

Regional differences. Rules for external purchase links and alternative billing vary by storefront, jurisdiction, application type, and enrollment program. Apple distinguishes between storefronts and provides specific entitlements for certain use cases and regions, while Google operates regional alternative billing and external offers programs.

Permitted links and messaging. Platform requirements may define whether an application can mention an alternative payment method, where a purchase link can appear, what language can be used, and which disclosures must be displayed. Violating those requirements can result in app review rejection or removal.

Rules must be checked before implementation and release. Store payment policies can change during a normal mobile release cycle as regulations, programs, and legal decisions evolve. Eligibility and UX requirements should therefore be checked against the current Apple App Review Guidelines and Google Play Payments policy during discovery and again before submission.

Product counsel should review legal and tax interpretations. An engineering article is not a substitute for that assessment.

7. Build vs. Buy for Subscription Billing Infrastructure

Once the team decides to introduce a hybrid or external model, the next question is whether to build the billing and entitlement infrastructure internally or use an existing subscription platform.

Third-Party Subscription Layer

Platforms such as RevenueCat can reduce implementation time, abstract differences between store APIs, and provide an existing entitlement model.

The tradeoff is an additional vendor cost and a degree of dependency on that vendor’s data model, pricing, and product roadmap. Migrating away from the platform later can require significant engineering effort.

Custom Entitlement Backend

A custom backend provides complete control over subscription state, identity mapping, data access, and business rules. It may also avoid an additional revenue-based platform fee.

However, the company needs dedicated capacity to build and maintain that system. The team becomes responsible for monitoring store API changes, updating integrations, resolving lifecycle edge cases, and maintaining reliability over the long term.

Direct Store and Payment Provider Integrations

Direct integration provides the greatest flexibility and can reduce direct transaction infrastructure costs.

It also creates the highest engineering and maintenance burden. This approach is usually justified when subscription volume is large enough to support the investment or when the product has requirements that existing platforms cannot satisfy.

Long-Term Cost and Vendor Lock-In

The decision should not be based on initial implementation cost alone.

The evaluation should include:

  • Ongoing platform and processing fees
  • Internal maintenance requirements
  • Availability of subscription data
  • Migration complexity
  • Dependency on vendor pricing and uptime
  • Support for current and future markets
  • Ability to implement product-specific entitlement rules

A solution that is inexpensive during the first release may become costly or restrictive as revenue, platform coverage, and subscription complexity increase.

8. App Store Billing vs External Payments: Decision Framework

The following framework can help position the decision before a more detailed architectural and financial analysis.

Stay on Store Billing When

  • MRR is below the threshold at which fee savings would outweigh the cost of building and maintaining a custom system.
  • The user base is concentrated in regions or application categories where external payment rules are restrictive.
  • The internal team does not have the capacity to take on additional responsibility for fraud, dunning, compliance, and billing support.
  • Checkout conversion is critical to growth and additional payment friction carries a high opportunity cost.
  • The organization prefers predictable operational complexity over greater payment control.

Introduce a Hybrid Billing Model When

  • MRR is high enough to justify the added architectural complexity.
  • Platform and regional rules allow an external option to be offered to eligible users.
  • The team wants to measure the actual effect on conversion and retention before expanding the rollout.
  • The application has, or can introduce, a centralized entitlement service.
  • Identity linking and reconciliation can be implemented before the external payment flow is scaled.
  • The organization has clear rollout, monitoring, and rollback procedures.

Consider a Full External Payment Flow When

  • Subscription revenue and user volume are large enough for the savings to substantially exceed the cost of operating the payment infrastructure.
  • The relevant platform and regional rules allow the planned payment flow.
  • The organization has dedicated capacity for compliance, fraud prevention, payment operations, and billing support.
  • The team has a clear migration strategy for existing users.
  • The payment architecture includes reliable reconciliation and recovery procedures.
  • Direct control over pricing, customer data, and checkout behavior is strategically important to the business.

Final Considerations

The choice between App Store billing, a hybrid model, and a full external payment flow is rarely binary. It depends on subscription revenue, customer geography, checkout behavior, engineering capacity, and tolerance for operational risk.

Before committing to a migration, the team should:

  • Model the total cost of ownership
  • Document the complete subscription state machine
  • Validate storefront and program eligibility
  • Establish one authoritative entitlement service
  • Resolve account-linking requirements
  • Implement reconciliation and operational monitoring
  • Test the new flow on a limited segment
  • Define explicit rollback criteria

Reducing store commissions can improve subscription margins, but only when the external payment architecture remains reliable across payment providers, platforms, user identities, and lifecycle events.

If your team is evaluating external payments for an existing subscription app, Aetherius can review the current mobile payment architecture, identify migration and entitlement risks, and provide a realistic implementation plan or project estimate.

Talk to our mobile engineering team, review our enterprise mobile development approach, or visit the project pricing and estimation page.

Frequently Asked Questions

What Is the Difference Between App Store Billing and External Payments?

App Store billing uses Apple or Google infrastructure to process purchases and manage platform subscription events. External payments use a web checkout or another eligible payment flow, giving the business greater control while shifting more responsibility for fraud, tax, customer support, subscription state, and compliance to its own systems and providers.

Can an iOS App Link to an External Payment Page?

It depends on the storefront, application category, and applicable Apple entitlement or program. Apple permits external purchase communication in specific circumstances, but the eligibility and implementation requirements vary. Teams should verify the current App Review Guidelines for the exact application and storefront before implementation.

Does Google Play Allow Alternative Billing?

Google provides alternative billing and external offers programs in eligible regions, subject to enrollment, API, reporting, UX, and fee requirements. The applicable program and obligations depend on the user’s location, application category, and type of offer.

What Should Be the Source of Truth for Cross-Platform Subscriptions?

A backend entitlement service should be authoritative for access. It should validate and reconcile events from StoreKit, Google Play Billing, and the web payment provider, then expose a consistent entitlement state to iOS, Android, and web clients.

For enterprise applications, this service also needs clear operational ownership, auditability, monitoring, and recovery procedures. Learn more about our approach to enterprise mobile application development.

When Is a Hybrid Billing Model Worth Considering?

A hybrid model is worth considering when the expected margin improvement justifies two billing integrations, ongoing policy monitoring, reconciliation, and additional support complexity.

The decision should be based on total cost of ownership rather than store commission alone. This includes implementation, payment processing, compliance, infrastructure, maintenance, customer support, and the potential effect of web checkout on conversion.

If your team already has a defined scope, review our pricing and project estimation approach to understand the factors that influence the implementation estimate.

A staged rollout remains essential because the business needs to measure checkout conversion and subscription lifecycle reliability rather than assume that lower transaction fees will automatically produce higher net revenue.

Need Experienced Devs
to Build Your App?
Hire Us
Hire Us
CTO’s newsletter
Stay informed with the latest tech updates.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Want to know the price of your project development?
Calculate Costs Now
Calculate Costs Now

Let’s Understand Your Current Setup

Tell us more about the project needs