Base44 · StoreKit 2 · Google Play Billing
In-app purchases and subscriptions for your Base44 mobile app
Apple Review Guideline 3.1.1 rejects iOS apps that sell digital subscriptions or credits through Stripe. AppNative wraps your Base44 app with real StoreKit 2 and Google Play Billing: it creates the products in App Store Connect, presents a native paywall over your Base44 UI, validates transactions, and writes the entitlement directly back to your Base44 User or subscription entity — while keeping Stripe active for your web users.
How do I add Apple StoreKit and Google Play in-app purchases to a Base44 app?
Wrap your Base44 app with AppNative (appnative.io) and enable In-App Purchases. AppNative compiles StoreKit 2 and Google Play Billing into your native iOS and Android binaries, automatically creates your subscription or consumable products in App Store Connect and Google Play, displays a native purchase sheet when a user visits your upgrade route or triggers window.AppNative.iap, validates the receipt, and syncs active entitlements back to your Base44 entities via server-to-server notifications.
- iOS billing
- StoreKit 2 — native Apple purchase sheet
- Android billing
- Google Play Billing
- Product creation
- Automated in App Store Connect and Google Play
- Base44 sync
- Writes entitlement directly to your Base44 User or subscription entity
- Trigger
- Any Base44 route (e.g. /pricing, /upgrade) or window.AppNative.iap call
- Web payments
- Keep Stripe on the web — StoreKit runs inside the native app
How to turn a Base44 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 Base44 app in AppNative
Sync your Base44 project to GitHub, connect the repo and your live Base44 URL to AppNative, and generate your native iOS and Android shell.
- 2
Define your subscription or one-time products
Add monthly, annual, lifetime or credit-pack products with pricing and free trials. AppNative creates them in App Store Connect and Google Play and uploads the review metadata.
- 3
Design the native paywall
Choose a native paywall layout or use AppNative's AI paywall studio to build a custom paywall matching your Base44 brand tokens.
- 4
Sync entitlements to your Base44 entities
AppNative's AI helper wires purchase verification and Apple/Google server notifications into your Base44 backend function so renewals, upgrades and cancellations update your Base44 database automatically.
Native capabilities your Base44 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 and Google Play Billing compiled into your Base44 mobile app
- Auto-renewable subscriptions, free trials, lifetime unlocks and consumable credit packs
- Automated product creation in App Store Connect and Google Play Console
- AI-designed native paywalls and direct-purchase JavaScript bridge (window.AppNative.iap)
- Entitlements written directly to your Base44 entities alongside Stripe web subscriptions
- Apple V2 server-to-server notifications for renewals, cancellations and refunds
- Restore purchases and account-matching across devices
- Native StoreKit 2 or RevenueCat mode per app
Base44 to mobile: the alternatives, compared
Why Stripe alone gets Base44 apps rejected on iOS
Under Apple Review Guideline 3.1.1, digital subscriptions, AI credits and software features unlocked inside an iOS app must use Apple In-App Purchase. AppNative lets you keep your existing Base44 Stripe integration for web browsers while automatically routing mobile app users through StoreKit 2 and Google Play Billing.
AppNative vs Median.co and Despia for Base44 IAP
General wrappers leave you to create products in App Store Connect manually, write StoreKit bridge code and build your own receipt validation backend. AppNative automates product creation, ships the native paywall, and generates the Base44 backend function that records entitlements.
Base44 to mobile app: every question, answered
The exact questions people ask before shipping a Base44 project to the App Store and Google Play.
Can I keep Stripe in my Base44 web app and use StoreKit in the mobile app?
Yes. Web visitors keep paying through Stripe as usual, while iOS and Android app users purchase through StoreKit 2 and Google Play Billing. Both paths update the same entitlement fields in your Base44 entities.
Do I have to write Swift or Kotlin to add in-app purchases to my Base44 app?
No. AppNative compiles the native StoreKit 2 and Play Billing code into the wrapper and provides a ready-to-paste prompt or automatic sync for your Base44 backend function.
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.
Base44 to mobile app: frequently asked questions
Does Base44 support Apple StoreKit in-app purchases natively?
Base44 builds web applications, and StoreKit only runs inside a signed native iOS binary. Wrapping your Base44 app with AppNative provides the signed iOS and Android binary with StoreKit 2 and Google Play Billing built in.
How do renewals and cancellations update my Base44 database?
AppNative connects Apple App Store Server Notifications and Google Play Real-Time Developer Notifications to your Base44 backend so subscription status stays accurate automatically.
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
Combine in-app purchases with push notifications, WidgetKit widgets and Live Activities, or read the full Base44 → mobile 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 Base44 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 Base44 workflow doesn't change at all.