Overview

Tier Configuration (Tier Config) is used to assign configuration parameters to certain reseller accounts within the Distributor tiers hierarchy. In case the Reseller Authorization capability is enabled and Tier scope parameter is created, the system generates a Tier Configuration and a Tier Request (also referred to as Tier Configuration request) along with a subscription in the Tier Setup state. Note that the system can generate setup and update requests. Refer to the Tier Config module documentation for more details.

The initial status of a Tier Configuration is Processing, while the initial state of its associated Tier Request is Pending. Once your Tier Request is approved, your Tier Configuration will be automatically activated on the Connect platform.

Vendors can deploy the middleware to process Tier Requests and consequently activate Tier Configurations on the CloudBlue Connect platform. Follow the instructions below to configure the Processor for the aforementioned operations.

Prerequisites

Creating Tier Configurations

The following provides instructions on how to generate a Tier Configuration and its corresponding Tier Request on the CloudBlue Connect platform.

Enable Reseller Authorization

Before generating a subscription and creating a tier scope parameter, make sure that the Reseller Authorization capability is enabled for your specified product.

Proceed to the General section from your product profile page and switch to the Capabilities tab. Click the Edit button and turn on the Reseller Authorization capability.

Select Tier 1 authorization structure. Note that Tier 1 represents direct reseller of your customer.

Click the Save button to enable the required capability and save your specified authorization structure.

Create a Tier scope parameter

Next, it is necessary to create a parameter and select Tier 1 scope within the parameter creation wizard.

Once your tier scope parameter is successfully created, your generated subscriptions require processing Tier Request and activating Tier Configuration.

Generate a Subscription

Subscriptions for your specified product are generated by your customers via Prover marketplaces. However, Vendors can create a preview subscription to configure the Processor.

Create a subscription via the Preview section of your product profile page.

Alternatively, generate a preview subscription by accessing the Subscriptions module and clicking the Create Subscription button.

Follow the Subscription Creation documentation for more details.

Once a fulfillment request is successfully created and assigned to the Tier Setup state, the system generates a Tier Configuration and a Tier Request. Navigate to the Tier Config module to access your Tier Configurations and Tier Requests.

Refer to the Tier Configuration documentation for more information about this module.

Code Snippets

Create a script for processing your Tier Requests as follows:

from connect_processor.app.utils.utils import Utils
from cnct import ConnectClient
from typing import Dict


class TierConfiguration:
    # This class is used to manage setup and update tier requests.

    @staticmethod
    def process_request(request, client):
        # type: (Dict, ConnectClient) -> Dict
        # This method processes tier requests in pending status

        # Check the reseller data in the vendor system by calling the Vendor API
        # Use the Vendor API to check, create or update the reseller data in the Vendor Portal
        # The following provides Mock API and client to check tier scope ordering phase parameters:
        # api_client = APIClient(api_url='',
        #                        api_key='')
        # data = {}
        # reseller_info = api_client.check_reseller(data=data)
        tcr_id = Utils.get_basic_value(request, 'id')

        # The Vendor API response may have some information that should be saved in fulfillment 
        # parameters of tier configuration request:
        TierConfiguration._save_fulfillment_parameters(request, client)

        # In case a tier scope parameter is not valid, the tier request can be switched to the Inquiring status.
        # Therefore, the reseller can check and change provided parameter values.
        # Use the following method to assign the Inquiring status: Utils.set_inquiring_tier_config_request(tcr_id, client)

        return Utils.approve_tier_config_request(request, tcr_id, client)
        # Once the tier configuration is activated, its associated subscription will be switched to the Pending state.

    @staticmethod
    def _save_fulfillment_parameters(request, client):
        # type: (Dict, ConnectClient) -> None
        # This method saves required reseller information in the fulfillment parameters. 
        # The payload params IDs should match your product tier fulfillment parameters ID in Connect.
        # The params values should match values provided by the Vendor API.

        tcr_id = Utils.get_basic_value(request, 'id')

        # Prepare the update parameters payload with the response of the APIClient.create_subscription method
        payload = {
            "params": [
                {
                    # Provide the tier fulfillment parameter id as it is configured on the Connect platform
                    "id": "param_a",
                    "value": "value for param_a in Vendor System",
                    "value_error": "",
                    "structured_value": ""
                },
                {
                    # Add additional parameters if necessary:
                    "id": "param_b",
                    "value": "value for param b in Vendor System",
                    "value_error": "",
                    "structured_value": ""
                }
            ]
        }

Summary

As a result. the Processor can be used to successfully approve your Tier Requests. Once a Tier request is approved, its corresponding Tier Configuration is assigned to the Active state by the system.

Note that your Reseller will also receive your Tier Activation Template message. Customize this message via the Embedding section of your product profile page.

Is this page helpful?
Translate with Google
Copied to clipboard