Lovable · StoreKit 2 · Google Play Billing
In-app purchases and subscriptions for your Lovable app
Apple rejects apps that sell digital goods through Stripe. AppNative wraps your Lovable app with real StoreKit 2 and Google Play Billing: it creates the products in App Store Connect, presents a native paywall over your web UI, validates purchases, and exposes the entitlement to your Lovable code so premium routes unlock instantly.
Can a Lovable app sell subscriptions through Apple in-app purchase?
Yes, with AppNative. Guideline 3.1.1 requires digital goods to be sold through Apple, so AppNative compiles StoreKit 2 into the native wrapper around your Lovable app, creates the subscription products in App Store Connect, shows a native purchase sheet when the user hits a route you choose, verifies the transaction, and reports the entitlement to your web app so it can unlock premium features.
- iOS billing
- StoreKit 2 — native purchase sheet, Apple handles payment
- Android billing
- Google Play Billing
- Product creation
- Automated in App Store Connect, including pricing and localizations
- Trigger
- Any route (e.g. /upgrade) or a bridge call from your Lovable code
- Entitlement in web code
- window.AppNative.iap.hasFeature('pro') and premium route gating
- Web payments
- Keep Stripe on the web — only the native app must use StoreKit
How to turn a Lovable app into a native mobile app, step by step
Six steps, one codebase, no native development. Each step happens inside AppNative except the first.
- 1
Wrap your Lovable app
Connect the GitHub repo Lovable syncs to and get a signed native iOS and Android app around your live web app.
- 2
Define your products
Add monthly, annual, lifetime or consumable products with prices and trial lengths. AppNative creates them in App Store Connect (and Google Play), uploads the review screenshot, and tracks approval status.
- 3
Design the paywall
Pick a native paywall style — full screen, modal, carousel, comparison, tiers — and let the AI paywall designer write the copy, benefits and layout to match your brand colors.
- 4
Choose what unlocks
Mark premium routes and feature flags. AppNative intercepts those routes in the native app, shows the purchase sheet, and hides gated navigation until the user is entitled.
- 5
Read entitlements in your Lovable code
Check window.AppNative.iap.hasFeature('flag') to render pro UI. Apple server notifications keep renewals, cancellations and refunds in sync with your own database.
Native capabilities your Lovable app gains
These are real native implementations compiled into the binary — not browser fallbacks — and they're what moves an app past Apple's "minimum functionality" bar.
- Real StoreKit 2 purchase sheet and Google Play Billing inside your wrapped Lovable app
- Auto-renewable subscriptions, consumables, non-consumables and free trials
- App Store Connect product creation, pricing tiers and localizations automated
- AI-designed native paywalls in multiple layouts, themed from your app colors
- Premium route gating and feature flags readable from JavaScript
- Restore purchases, upgrade/downgrade and grace-period handling
- Apple server-to-server notifications for renewals, cancellations and refunds
- RevenueCat supported if you prefer it over native StoreKit
Lovable to mobile: the alternatives, compared
Why Stripe inside the app gets rejected
Guideline 3.1.1 requires digital content and subscriptions to be purchased with Apple's in-app purchase. A Stripe checkout inside a wrapped web app is the single most common rejection for AI-built apps. Keeping Stripe on the web and StoreKit in the native app satisfies Apple while preserving your web funnel.
AppNative vs Median.co and Despia for IAP
Basic wrappers expose a purchase bridge and stop there. AppNative also creates the products on Apple's side, designs the paywall, gates routes, verifies receipts, and wires Apple's server notifications into your data — so entitlements are correct without you writing StoreKit code.
Native StoreKit vs RevenueCat
Native StoreKit keeps everything in your Apple account with no third-party fee. RevenueCat adds cross-platform analytics and entitlement management for a cut. AppNative supports both — pick per app.
Lovable to mobile app: every question, answered
The exact questions people ask before shipping a Lovable project to the App Store and Google Play.
How do I add in-app purchases to a Lovable app?
Wrap it with AppNative, define your products, design the native paywall, mark the premium routes, and read the entitlement from JavaScript. AppNative handles StoreKit, product creation and verification.
Can I keep Stripe for web customers?
Yes, and you should. Apple only requires in-app purchase for what is bought inside the app. Your website and browser users can continue paying with Stripe.
How does my Lovable app know a user is subscribed?
The native layer exposes the entitlement to JavaScript, and Apple server notifications can write the subscription state into your own database so it's consistent on web and mobile.
Do I need to write Swift for the paywall?
No. The paywall is a native screen generated from your chosen style and AI-written copy, themed from your app's colors — configured entirely in AppNative.
What about Android?
The same products map to Google Play Billing, so a single configuration serves both stores.
Web app to mobile app: key terms defined
- Native app wrapper
- A native app wrapper is a compiled iOS or Android application that renders your existing web app inside a native web view (WKWebView on iOS, WebView on Android) while exposing real device capabilities — push notifications, biometrics, camera, in-app purchases — to that web code through a JavaScript bridge.
- Hybrid app
- A hybrid app ships web technologies (HTML, CSS, JavaScript) inside a native binary that can be distributed through the App Store and Google Play. It differs from a progressive web app, which is installed from the browser and cannot be listed in either store.
- App Store guideline 4.2 (minimum functionality)
- Apple's rule that an app must do more than repackage a website. Apps that add native capability — push notifications, biometric login, camera use, offline support, widgets, in-app purchases — satisfy it; a bare website in a shell does not.
- Bundle ID / package name
- The permanent reverse-domain identifier for your app (for example com.yourcompany.yourapp). It's registered once with Apple and Google and can never be changed for a published app, so it must be decided before your first submission.
- Code signing and provisioning profile
- Apple requires every binary to be signed with a distribution certificate and matched to a provisioning profile tied to your bundle ID and team. Android requires an upload keystore. Without them a build cannot be installed or submitted.
- TestFlight
- Apple's beta distribution service. Uploading a signed build to TestFlight lets up to 100 internal testers install the app immediately, before public App Store review — the fastest way to see your wrapped app on a real device.
- Over-the-air update
- Because a wrapper renders your live web app, deploying your web app updates the mobile experience instantly with no store review. A new native build is only required when something inside the binary changes: icon, splash screen, bundle ID or a native capability.
- StoreKit and Google Play Billing
- The in-app purchase systems Apple and Google require for selling digital goods inside an app. Stripe stays valid on the web, so most apps run both and grant the same entitlement from either payment source.
Lovable to mobile app: frequently asked questions
Does Lovable support App Store in-app purchases?
Not on its own — Lovable produces a web app, and StoreKit only exists in a native binary. AppNative supplies that binary with StoreKit 2 compiled in.
Will Apple approve a subscription in a wrapped web app?
Yes, when digital goods are sold through in-app purchase and the app offers real native functionality. Both are what AppNative adds.
Can I offer free trials and introductory pricing?
Yes — 3-day, 7-day, 14-day or 1-month trials and introductory offers are configured per product and created on Apple's side for you.
How do refunds and cancellations reach my database?
Apple's server-to-server notification endpoint is wired up during setup, so renewals, cancellations, refunds and billing retries update your records automatically.
Does this work for Base44, Bolt.new and Replit apps too?
Yes — the same in-app purchase pipeline works for any web app AppNative wraps.
Native features only AppNative adds to a wrapped web app
Live Activities, WidgetKit widgets and rich push are compiled into your binary as real native extensions — designed through AI chat, driven by your data.
Ship from your AI app builder
In-app purchases pair well with push, widgets and Live Activities. Explore those, or read the full Lovable → native app guide.
Deep dives by builder and feature
Step-by-step guides for the specific thing you're trying to ship — push, in-app purchases, widgets, store submission — for Lovable and Base44 apps, plus how AppNative compares to Median.co and Despia.
Ship your Lovable app to the App Store and Google Play
Connect your repo, toggle the native features you need, press Build. Your first TestFlight build can be in testers' hands today — and your Lovable workflow doesn't change at all.