iOS and Android Product Bundles

Product bundles allow you to group together items from your Elements database into packages that correspond to App Store or Google Play IAPs, allowing you to sell packs of multiple items under a single SKU.

Product bundles exist under the iOS and Android application configurations are identical, but are set separately to allow variations between your goods for each platform. The product bundles are created and editing within the iOS and Google Play application configurations.

To add a product bundle:

  1. Create (or edit) an application
  2. Add an Application configuration in the Application Editor, as seen here for iOS or Google Play, or edit an existing iOS or Google Play Application configuration for the application.
  3. Click the "Add Product Bundle" button
  4. Edit and save the product bundle using the product bundle editor.

You can also edit or delete existing product bundles, as they appear in a list below the "Add Product Bundle" button in the Application Configuration.

Product Bundle List

Editing a Product Bundle

Product Bundle Editor

Fill out the fields in the editor to set up your bundle. See below for details on the function of each field.

Editing the product bundle rewards works much like adding rewards in mission steps. Simply fill out the Reward Item and Reward Quanitity fields and click the "+" button. You can also delete them with "-." It's important to note that Reward Items must be valid items in the Elements database, like when editing mission steps.

Product Bundle metadata is edited identically to how item metadata is edited. See Editing Item Metadata.

Detailed descriptions of each field in the editor are below.

Product Bundle Structure

These are the various fields that make up a product bundle.

  • productId: This is the product id for your IAP as it appears on App Store Connect or the Google Play Console.
  • displayName: This is the display name of your IAP item.
  • productBundleRewards: This is a list of items and quantities:
  • itemId: The name of an included item.
  • quantity: The quantity of the included item.
  • metadata: Metadata is optional. It can be any number of named key-value pairs of strings or integers. This can have many uses, for example secondary descriptions, asset paths, types, or any arbitrary values assigned to your product bundle.
  • display: This boolean controls whether the IAP is visible in your app. This allows you to toggle visibility without removing IAPs from the app stores themselves.

JSON Structure of Product Bundle

    "productId" : "com.example.product",
    "displayName" : "Product Display Name",
    "description" : "This is a description!",
    "productBundleRewards" : [
            "itemId" : "coin",
            "quantity" : 35
            "itemId" : "widget",
            "quantity" : 2
    "metadata" : {
        "metadata_string": "this is a string"
    "display" : true