Implement Restore Purchases for Your Base44 App

    Quick answer

    Base44 apps can ship to the Apple App Store with real Restore Purchases — Wanilla wraps the existing Base44 web app in a native iOS shell and wires up the native framework, so nothing has to be rebuilt in Swift.

    • Apple rejects thin web wrappers under Guideline 4.2 — native Restore Purchases is what clears review.
    • Most apps are submitted to Apple within 24 hours of kickoff; review typically takes another 24–48 hours.
    • Digital subscriptions must run through Apple in-app purchase (StoreKit 2), not web-only Stripe billing.
    Wanilla bridging Base44 web apps to native iOS with Restore Purchases

    Stop losing revenue. Wrap your AI-coded Base44 project natively and deploy to the App Store in minutes.

    Read the Docs

    The Limits of Base44 for Mobile Monetization

    Apple requires all apps with in-app purchases to include a "Restore Purchases" button. Without it, your Base44 app will be rejected during App Review. But implementing receipt validation and purchase restoration requires server-side logic and StoreKit expertise.

    How to Implement Restore Purchases in Base44 using Wanilla

    Wanilla automatically includes restore purchase functionality in every app. Users can restore their purchases on new devices or after reinstalling — and it's already App Review compliant.
    Your Base44Web AppWanilla EngineInjects Restore PurchasesNative BuildApp Store ReadyExport / ConnectStoreKit · WebKit · PushiOS App Store
    How Wanilla converts your Base44 web app into a native app with Restore Purchases

    Code Integration Example

    Wanilla handles purchase restoration end-to-end:

    • Automatic compliance — the Restore Purchases button is included in every Wanilla app, meeting Apple's requirement
    • Server-side receipt validation — Wanilla validates App Store receipts server-side to prevent fraud
    • Cross-device sync — users switching to a new iPhone or iPad can restore all their purchases instantly
    • Subscription status tracking — expired, cancelled, and active subscriptions are all handled correctly

    This is a common App Store rejection reason — Wanilla eliminates it automatically.

    Earning under $1M/year on the App Store? You qualify for Apple's reduced 15% commission. Read our full Apple Small Business Program guide →

    Why Base44 apps fail this check

    Apple's guideline 3.1.1 requires any app selling a subscription to offer a way to restore that subscription on a new device, without signing in again. A Base44 app has no concept of an Apple receipt, so out of the box there is nothing to restore and reviewers flag it.

    1. A Restore Purchases control is added to your account or settings screen — the same Base44 page you already have, so nothing in your layout is rebuilt.
    2. Tapping it queries Apple for every transaction tied to that Apple ID, including purchases made before the person created an account with you.
    3. The result is written into your Base44 user record, so the app unlocks immediately and your existing plan checks behave normally.
    4. Anonymous purchases are reconciled when the user later signs in, which is the case reviewers most often test.

    Edge cases worth knowing about

    • Family Sharing: if you enable it on a product, a family member's device must also unlock — handled in the same flow.
    • Refunds and chargebacks revoke access automatically rather than leaving a permanently unlocked account in your Base44 database.
    • A user who paid on the web through Stripe and then installs the app restores through their account rather than through Apple, and both paths land on the same entitlement.
    <!-- Add Restore Purchases to your Base44 app -->
    <script src="https://cdn.wanilla.com/sdk.js"></script>
    <script>
      Wanilla.init({
        appId: "your-app-id",
        platform: "base44"
      });
    </script>

    Related Guides

    Once you've set up Restore Purchases, you might also want to add Adapty Alternative to Base44 or add App Store Publishing to Base44.

    Working with other AI builders? See our guide on Restore Purchases for Lovable or Restore Purchases for Replit.

    Explore our full breakdown of Base44 App Integration.

    How to publish your Base44 app with Restore Purchases

    Submitted to Apple within 24 hours$2,995 managed launch + $199/month
    1. 1

      Connect your Base44 app

      Share the live URL of your Base44 app. Nothing is rebuilt — the existing build stays the source of truth.

    2. 2

      Wire up native Restore Purchases

      Wanilla wraps the app in a native iOS shell and injects real native Restore Purchases support, so the app is not a thin web wrapper under Apple Guideline 4.2.

    3. 3

      Prepare the App Store listing

      Bundle ID, App Store Connect record, privacy nutrition labels, screenshots, description and keywords are prepared for submission.

    4. 4

      Configure pricing and paywall

      Subscriptions and in-app purchases are created in App Store Connect and wired to StoreKit 2, with the paywall configured remotely so pricing changes need no new review.

    5. 5

      Submit to Apple and go live

      The build is submitted to App Review — typically within 24 hours of kickoff — and Wanilla handles any reviewer feedback until the app is approved.

    Base44 + Wanilla vs. Custom Native Development

    FeatureBase44 Web AppCustom React NativeBase44 + Wanilla
    Development TimeMinutes (AI Generated)Weeks / MonthsMinutes
    App Store Ready No Yes Yes
    Restore Purchases Support❌ Web only (Stripe)✅ Native IAP✅ Native IAP
    Developer CostLowVery HighLow (SaaS)

    Frequently Asked Questions

    Is restore purchases required by Apple?▾
    Yes. Apple requires a visible "Restore Purchases" mechanism in all apps offering non-consumable purchases or auto-renewable subscriptions. Without it, your app will be rejected.
    Does it work across devices?▾
    Yes. Purchases are tied to the user's Apple ID and can be restored on any device signed into the same account.
    What about subscription expiration?▾
    Wanilla correctly identifies active, expired, and cancelled subscriptions during restore, only unlocking content for valid entitlements.
    Do I need to build anything?▾
    No. Wanilla includes restore functionality automatically. It's already configured and App Review compliant.

    Official Resource

    Start adding restore purchases to your Base44 app today — no native code required.

    Sign up and connect your repository today. Go from web app to the App Store in under 24 hours.

    Or see the managed launch offer — $2,995 + $199/month
    Samuel Olsson, Co-founder of Wanilla

    Samuel Olsson

    Co-founder, Wanilla

    Connect on LinkedIn