Product ID Context

Product ID Context is used to configure Product ID content in campaigns.

With Product ID Context, you can define what exactly the user receives when using a product: boosters, currency, bonuses, unlocked modes, no ads, and other rewards.

For example, if a consumable Product ID is sold for $3.99, the Product ID Context can define that the user will receive 5 hints. In this case, 5 hints represent the Product ID Context content.

A single Product ID can use multiple different contexts. This allows you to change product content depending on the campaign, offer, or usage scenario without modifying the Product ID itself.

For example, the same Product ID can grant 10 boosters in one campaign and 5 boosters in another, depending on the selected Product ID Context.

Product ID Context stores the reward configuration and is used together with Product ID within campaigns.


How Product ID Context Works

Product ID Context is used together with Product ID in campaigns.

A single Product ID can be linked to multiple Product ID Contexts. The selected context in a campaign defines the current product content.

This allows the same Product ID to be reused across different scenarios without creating additional Product IDs.

For example:

  • Context A → 10 boosters
  • Context B → 5 boosters

To change the reward configuration, simply replace the Product ID Context in the campaign. The Product ID itself remains unchanged.


Where Product ID Context Is Used

Product ID Context is used in the following sections:

  • Campaigns — to configure product content in campaigns
  • Configuration → Context — to create and manage contexts
  • Configuration → Product ID — to synchronize content between Product ID and Product ID Context

Campaigns use the following combination:

  • Product ID
  • Product ID Context

Product ID defines the product itself, while Product ID Context defines its current content.


Product ID Context Types

The Product ID Context type depends on the Product ID type.

In-App Product ID Context

Used for:

  • Consumable Product ID
  • Non-consumable Product ID

Consumable and non-consumable products use the same context type — In-App Product ID Context.


Subscription Product ID Context

Used for:

  • Subscription Product ID

Native Elements Product ID Context

Separate context types are used for:

  • Reward
  • Bonus
  • Cross Promo
  • External
  • Deeplink
  • Info

Each type uses its own Product ID Context.


Customs Structure

The Customs field is used to configure Product ID Context content in JSON format.

By default, the SDK supports the following parameters:

  • items
  • bonus
  • count

Example

Where:

  • items — list of rewards
  • bonus — reward type
  • count — reward quantity

You can also pass any additional custom parameters in Customs that are processed on the client side.

Additional Example

Additional parameters can be used, for example:

  • for UI configuration
  • for offer parameters
  • for client-side logic

Send Customs to Native Element

To synchronize content between Product ID Context and Product ID, use the Send customs to native element function.

The function:

  • copies Customs from Product ID Context to Product ID
  • eliminates manual duplication
  • automatically updates the linked Product ID when the context changes

If one Product ID uses multiple Product ID Contexts, the Product ID stores content from the last context where Send customs to native element was used.

The function is available:

  • in the Product ID Context list
  • inside Product ID Context

For:

  • In-App Product ID Context
  • Subscription Product ID Context

Important Behavior and Requirements

Consumable and Non-consumable

Do not leave consumable and non-consumable Product ID Contexts empty.

The content of Product ID and Product ID Context must match.

This is required for correct reward delivery:

  • after in-app purchase completion
  • when using promo codes
  • when restoring interrupted purchases

Subscription

Subscription Product ID Context can remain empty.

If required, the context may contain:

  • trial
  • non-trial

Content requirements depend on the application or SDK implementation.


Reward and Bonus

For Reward and Bonus Product ID Contexts, reward configuration is typically defined directly inside the context.

In some scenarios, rewards may be configured:

  • inside features
  • on the client side
  • through hardcoded application logic

In such cases, Product ID may remain empty and be used only for campaign validation.


For Deeplink, External, Cross Promo, and Info Product ID Contexts, content may remain empty.

Such Product IDs can be used nominally for campaign saving and validation purposes.


Creating Product ID Context

  1. Go to Configuration → Context
  2. Click Create New
  3. Fill in:
    • Name
    • Application
    • Type
  4. Save the Product ID Context

To create multiple context variations, clone an existing Product ID Context.


To quickly create linked Product ID and Product ID Context entities, use the following workflow:

  1. Create a new Product ID Context
  2. Create a new Product ID inside the context
  3. Fill in Product ID fields
  4. Configure Customs in Product ID Context
  5. Use Send customs to native element to synchronize content

All future changes in Product ID Context will automatically update the linked Product ID.