Creating a Product App Store or BSS integration

This tutorial will show you how to create a Product App Store or setup an BSS integration to toggle Products for Subscribers on the WG2 core network.

Prerequisites

This tutorial assumes you are able to create an OAuth 2.0 client and get an access token. See Get client access token for detailed instructions.

Required scopes

  • subscription.consent:read
  • subscription.consent:write
  • products.list_for_tenant:read

Introduction

This tutorial shows you how to create your own App Store which will allow your Subscribers to enable Products, or to integrate Product bundling into your BSS.

Since all API consumers on the WG2 platform are referred to as "Products", this becomes a little meta. This guide will show you how to create a Product, which, when used by your Subscribers, will allow them to enable Products. Let's get started.

Join the metaverse

As mentioned, we need to create a Product with the power to enable Products. Head on over to developer.wgtwo.comopen in new window, select your organization, and create a new Product. If you are creating a white-label App Store, you would typically call your Product something like "MyCompany General App Store" and select full market availability. If you are working on behalf of an operator to enable WG2 Products for just your Operator's Subscribers, you would typically call your Product something like "OperatorName App Store", "OperatorName BSS", "OperatorName MyPages", etc, and only make it available to your operator.

Once you have created the Product, you need to toggle the required scopes in the "Technical integration" tab. The required scopes are: subscription.consent:read, subscription.consent:write, and products.list_for_tenant:read.

With the scopes configured, you can now create an OAuth client , and get an access token .

Querying the Products API

The products.list_for_tenant:read scope that you enabled will allow the caller to list all the Products that the operator has approved for use on their platform. If you are calling this API and getting an empty result, it means that the operator has not approved any Products.

For a code example of the Products API, please see how-to-list-products-for-tenant.

The subscription.consent:read and subscription.consent:write scopes that you enabled will allow you to list all the consents for a subscription (read), as well as add or remove a consent (write).

This API needs to be used in conjunction with the Products API. The Products API will list all the Products that the operator has approved for use on their platform. The Consent API will allow you to toggle the Products for a Subscriber.

For code examples for the Consent API, please see how-to-create-consent-for-subscription, how-to-get-consents-for-subscription, and how-to-revoke-consent-for-subscription.

Example project

We have an example project of a Product App Store that connects to the Products API, lists the available products, and allows the Subscriber to toggle the products using the Consent API: https://github.com/working-group-two/storefront-exampleopen in new window

Enable distribution and distributable Products

This section is intended for integrators who are working for an operator. If you are an external third party creating Products for operators, you can skip this section.

Enabling distribution (App Store, BSS, etc):

  1. Head over to your WG2 Console and find your Product in the Products section.
  2. Click the "More" button to open the Product page.
  3. You'll find an "Enable" button in the top right corner. Click this button.
  4. You will be prompted to enable the Product for either "All subscribers" or "Individual provisioning." Select "All subscribers" to make sure that your App Store, My Pages, or BSS integration works for your entire Subscriber base.
  5. Now the Enabler Product is able to enable Products on behalf of your Subscribers.

Enabling distributable Products (Products available in App Store, BSS, etc):

  1. Head over to your WG2 Console and find your Product in the Products section.
  2. Click the "More" button to open the Product page of the Product that you want to make available.
  3. You'll find an "Enable" button in the top right corner. Click this button
  4. You will be prompted to enable the Product for either "All subscribers" or "Individual provisioning." Select "Individual provisioning". This will make the Product you enabled appear in the Products API, as described in Querying the Products API.
  5. Now the Enabler product is able to find this Product and can present it to your Subscribers.