Elements Manual
Elements 2 Manual
Elements 2 Manual
  • Welcome 👋
  • QUICK START
    • Elements in Five Minutes or Less
  • General
    • General Concepts
    • N-Tier Architecture
    • Security Model
  • SCRIPTING ENGINE
    • Scripting Engine Overview
      • Intro to Resources and Cloud Functions
      • Horizontal Scaling Model
      • Database Access
      • Server-to-Server API Calls
      • Deploy Cloud Functions via Git
      • Creating and Destroying Resources
      • Cross-Resource Invocation
      • Indexing Resources
      • Coroutines
      • Manifest
  • Core Features
    • Core API Overview
    • Sessions
    • Applications
      • Facebook Application Configuration
      • Firebase Application Configuration
      • Amazon GameOn Application Configuration
      • iOS Application Configuration
      • Android Application Configuration
      • Matchmaking Application Configuration [deprecated]
    • Users and Profiles
    • Digital Goods
    • Progress and Missions
    • Leaderboards
    • Matchmaking
    • Followers
    • Friends
    • Reward Issuance
    • Push Notifications
    • Auth Schemes
    • Save Data
    • Schemas and Metadata Specifications
    • Queries
      • Base Query Syntax
      • Boolean Queries
      • Object Graph Navigation
      • Advanced Operators
        • .ref
        • .name
  • Web 3
    • Omni Chain Support
    • Vaults
    • Wallets
    • Smart Contracts
      • Smart Contracts: Ethereum
      • Smart Contracts: Flow
      • Smart Contracts: Solana
      • Smart Contracts: Neo
    • Know Your Customer
      • Formidium
  • CONFIGURATION
    • Using the Web Console
    • iOS and Android Product Bundles
    • Direct Database Access and Batch Configuration
  • UNITY PLUG-INS
    • Unity Plugin
    • Content Delivery Management and Unity CDN Plugin
  • DEPLOYMENT
    • Deployment Overview
      • Docker Containers
      • AWS Deployment
      • Standalone docker-compose
  • LUA SAMPLES
    • lua Samples
      • main.lua
      • event.lua
      • hello_world.lua
      • model.lua
      • startup.lua
      • HTTP Manifest
        • Example endpoint handler
        • Example operations table
  • RESTful APIs
    • Swagger and Swagger UI
    • Elements 3.0.X (Preview)
      • Applications
      • Friends and Followers
      • Digital Goods and Inventory
      • Leaderboards
      • Missions and Rewards
      • User and Profiles
      • Save Data
      • Custom Metadata
Powered by GitBook
On this page
  • Editing a Product Bundle
  • Product Bundle Structure
  • JSON Structure of Product Bundle
  1. CONFIGURATION

iOS and Android Product Bundles

Sell groups of products as packages through the Apple App Store or Google Play Store via your Elements application or game.

PreviousUsing the Web ConsoleNextDirect Database Access and Batch Configuration

Last updated 2 years ago

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

Product bundles exist under the and 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 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.

Editing a Product Bundle

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
}
]

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

Editing the product bundle rewards works much like adding rewards in . 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 .

mission steps
below
iOS
Android
here
Product Bundle List
Product Bundle Editor
Editing Item Metadata