Skip to content
English - United States
  • There are no suggestions because the search field is empty.

How to manage in-app purchases in the Control Panel

Create in-app purchases and subscriptions in the Control Panel so they can be connected to Apple App Store and Google Play and see which plugins are using a product/subscription, prevent accidental deletion, apply preset configurations across multiple plugins, and show localized store pricing on user devices.

How to manage in-app purchases in the Control Panel

In-app purchases

In-app purchases allow you to monetize your app by selling one-time access, repeatable items, or ongoing subscriptions. We support three types of in-app purchases, each designed for a different use case.

Purchase type

What it’s used for

Example use cases

Consumable

Can be purchased repeatedly

Credits, tokens, tips, one-time actions

Non-consumable

One-time purchase with permanent access

Premium content, feature unlocks

Subscription

Recurring access while active

Memberships, courses, gated content

Before purchases can be used in your app, they must be created in the Control Panel and then mirrored in your Apple and Google developer accounts.

Requirements

You must be on the Growth or Scale plan to leverage in-app purchases

You must have an Apple App Store Connect and/or Google Play Console account configured for in-app purchases

How to create purchases in the Control Panel

  1. Log in, go to Purchases in the left navigation menu

  2. Click in the Purchases tab

  3. To add a consumable/non-consumable products:

    1. Enter product name

    2. Enter a Product ID

    3. Consumable products must use the prefix c_

      1. Example: c_credits_10

    4. Click Add

  4. To create a subscription

    1. Enter product name

    2. Enter a unique Product ID

    3. Click Add

  5. Verify your products

    1. Confirm all Product IDs are final and correctly named

    2. These Product IDs must match exactly when created in Apple App Store Connect and Google Play

How to manage subscription details, presets, and localized pricing

  1. Log in, go to Builder in the left navigation

  2. Open Purchase Settings for any subscription product

  3. Click View Details

    1. See all plugins currently using this subscription

    2. Click any listed plugin to jump directly to it

  4. Attempting to delete a subscription will show a warning

    1. You cannot delete a subscription if any plugins are still using it

  5. To remove a subscription from a plugin

    1. Open the plugin’s Purchase tab

    2. Either uncheck Require Purchase or remove the subscription from the list

  6. Create a preset from an existing subscription

    1. Open the subscription and click Convert to Preset

    2. Save the preset

  7. Apply a preset to multiple plugins

    1. Go to Presets

    2. Select a preset and apply it to any number of plugins

    3. This prevents repeating subscription setup for each plugin

  8. Understand localized pricing behavior

    1. App stores require localized pricing per region

    2. Prices shown on the device use the user’s local currency and store values

  9. Store Price behavior

    1. On user devices, the app reads the official App Store / Google Play price and displays it in local currency

      1. Example: users in Jordan may see JOD pricing, while US users see USD

  10. Control Panel fallback pricing

    1. The Control Panel does not receive store pricing

    2. It always displays the fallback price you configure

  11. Understand Initial Price behavior

    1. Initial Price represents the introductory promotional price of a subscription

    2. Devices show the introductory price only during the valid offer period

  12. After the initial offer ends

    1. If store data is not returned for the initial price, the device displays Not eligible

    2. The fallback price is always shown in the Control Panel

  13. Use placeholders to ensure the Control Panel always shows a price

    1. CP displays a fixed placeholder because localized store pricing is not available in the CP

  14. Save changes and verify pricing behavior on both the device and in the Control Panel

In App Purchases with User Login

Disclaimer: In-app purchases are not directly linked to your user account. They’re linked to the Apple App Store account or Google Play account on the device (this is how Apple and Google purchases work). This means a user doesn’t have to be logged in to access paid content, as long as the device has an active, valid subscription on the App Store or Google Play.

Apps behave in a different way from websites. In websites your purchases or subscription are tied to your login email while on apps they are tied to your Apple ID on App Store or Google Account on Google Play.

Tags

$$purchase tags

These are the protected tags (you cannot manually assign to user) that a user receives when they make a purchase.

bypass tags

These are tags manually specified in a plugin In App Purchase settings or In App Purchase presets page. When the app owner assigns users manually, they will be able to access paid content for free and hence, bypassing paying.

User Cases

Subscribed on device App Store / Google Play:

  1. Not logged in: You’d have access to any content with require purchase (assuming you don’t require login)

User logged in:

  1. Has the $$purchase tag already: Nothing changes, they have both tags and can access the content.

  2. Has bypass tag: Adding or removing bypass tag won’t have any effect since they can access the content.

  3. Without tag: $$purchase Tag will be automatically added once they open the app.


Not Subscribed on device App Store / Google Play:

  1. Not logged in: Won’t be able to access the content

  2. User logged in:

    1. Has the $$purchase tag already: It won’t persist. It will be automatically removed and denied access on subsequent runs.

    2. Has bypass tag: Will keep having access to the content as long as the tag is assigned (has to be removed manually to stop access).

    3. Without $$purchase tag: Nothing changes, they will not have access.

Pro tips

  • iOS apps must be resubmitted every time a new product or subscription is added

  • Android apps only require one resubmission, even when adding additional products later

  • Plan your purchase structure early to minimize App Store resubmissions

  • Keep Product IDs consistent and descriptive to avoid store mismatches

  • Always remove subscriptions from plugins before deleting them

  • Use presets to standardize subscription settings across large apps or multi-plugin setups

  • Test pricing on a physical device to confirm localized currency and introductory pricing display correctly