Setting Up Payments

Add subscription-based monetization to your a0 app with our integrated payment system.
a0 supports subscription plans that work seamlessly across iOS (App Store) and Web/Android (Stripe). Play Store support, One-time purchases and consumables are coming soon.

Overview

The payment system consists of three main components:
  1. Features - Entitlements users get (e.g., PRO, AD_FREE, UNLIMITED_STORAGE)
  2. Subscription Plans - Pricing tiers that include one or more features
  3. Offerings - Bundles of plans presented to users (REQUIRED for paywalls)

Step-by-Step Setup

1. Navigate to Payments

1

Open Project Settings

In your a0 dashboard, go to your project and click on your App Name to access the settings.
2

Access Payments Tab

Click on the Payments tab to access the payment configuration.

2. Create Features

Features represent the entitlements or capabilities users get when they subscribe.
1

Add Your First Feature

Click Add Feature and create features like:
  • PRO - Access to premium content
  • AD_FREE - Remove all advertisements
  • UNLIMITED_STORAGE - No storage limits
  • PRIORITY_SUPPORT - 24/7 support access
2

Name Features Clearly

Use descriptive names that make it easy to understand what each feature provides.
Features can be reused across multiple subscription plans, so think of them as building blocks.

3. Create Subscription Plans

1

Add New Plan

Click Create Plan to set up your first subscription tier.
2

Configure Plan Details

Each plan requires:
  • Plan Name: e.g., “Pro Plan”, “Premium Subscription”
  • At least 1 Feature: Select from your created features
  • At least 1 Pricing Tier: Choose from weekly, monthly, or annual
3

Set Pricing

Enter prices for each tier you want to offer:
  • Weekly: Best for short-term trials
  • Monthly: Most popular option
  • Annual: Offer discounts for long-term commitment

4. Sync to Payment Providers

Critical: Your payments will NOT work until you sync your plans to the appropriate payment provider. This is the most common setup mistake.
1

Click Sync Plan

Under your created plan, click the Sync Plan button.
2

Choose Provider

Select your payment provider:
  • Stripe: For Web and Android (APK)
  • Apple App Store: For iOS (IPA)
3

Configure Sync Settings

For Stripe:
  • Toggle “Use Stripe sandbox environment” for testing
  • Must link your Stripe account first
  • Sync to sandbox for testing, production for live apps
For Apple App Store:
  • Ensure your app is linked with valid Team ID
  • Syncs to both sandbox and production automatically
  • Invalid Team ID will cause sync to fail
4

Start Sync

Click Start Sync to create the products in your payment provider.
Once synced successfully, you’ll see a confirmation and your products will be created in Stripe/App Store Connect.

5. Create Offerings

Important: Offerings are REQUIRED for your paywall to display products. Without offerings, your paywall will be empty.
1

Create New Offering

Click Create Offering to bundle plans for your paywall.
2

Configure Offering

  • Name: e.g., “Standard”, “Launch Special”, “Black Friday”
  • Description: Explain what’s included
  • Select Plans: Choose which subscription plans to include
3

Set as Current

Mark which offering should be presented to users by default. This will be available as offerings.current in your code.

Testing Your Setup

Stripe Test Cards:
  • Success: 4242 4242 4242 4242
  • Decline: 4000 0000 0000 0002
Apple Sandbox:
  • Use App Store Connect sandbox tester accounts
  • Subscriptions auto-renew rapidly for testing

Implementation

Ready to integrate payments into your app? See the Payment Implementation guide for code examples and best practices.

Troubleshooting

Next Steps