This article was originally published on Jo4 Blog . I had Stripe working perfectly. Web dashboard payments, team billing, subscription upgrades and downgrades - all handled. Users happy. Revenue flowing. Then I submitted my React Native app to the App Store. The Problem Apple's App Store Review Guideline 3.1.1 is clear: if your app offers subscriptions and the user can subscribe in the app, you must use Apple's In-App Purchase system. No exceptions. No "just link to your website." If you show a paywall, it goes through Apple. This means: Apple takes 15-30% of every transaction You can't use your existing Stripe flow on iOS You need a second billing system running in parallel Both systems must keep the same user's subscription state in sync I'd heard of RevenueCat as the standard way to handle this. What I hadn't heard was how many moving parts are involved when you already have a working billing system. The Architecture Decision The core question: where does the source of truth live?…