Product parameters enable Vendors to collect data from customers that ordered their product and to store product data that is essential for the fulfillment operations. Parameters can also be used to pass required information to Distributors and customers.
Three different phases of Parameters can be configured within the Parameters section as schematically illustrated and described below:
Ordering phase Parameters are specified during the ordering phase by Customers. The customer is asked to provide value for the parameter unless it is hidden. In most cases, such value will be collected by Distributor’s commerce system.
Fulfillment phase Parameters are set during the fulfillment phase by the Vendor. Typical examples of such parameters are service IDs like “tenant id”, “customer id” or any otherdata that isused to identify a particular subscriptionfor Vendor’s system. If fulfillment automation is implemented using the Subscription API, such parameters can be used to handle multi-step asynchronous provisioning. For example, Vendors create a parameter that stores information on the provisioning stage and corresponding data attributes.
Configuration phase Parameters are defined and managed even before any order is placed.
Note that parameter attributes are localized and not versioned.
The following describes all parameter aspects and showcases how to create a parameter on the CloudBlue Connect platform.
Parameter Creation
Proceed to your product profile page and navigate to one of the following menu items in the left navigation pane depending on the phase you need to configure your parameter for:
Ordering Parameters
Fulfillment Parameters
Configuration
Scope
Before creating ordering and fulfilment parameters, choose the parameter scope by navigating to one of the following tabs:
Subscription: Select this scope to associate your parameter with provided subscriptions.
Tier 1 – Choose this scope to collect or store reseller authorization details of your first tier reseller (direct reseller).
Tier 2 – Select this scope to collect or store reseller authorization details of your second tier reseller (reseller of the reseller)
Information
Enabled Capability is required! Note that selecting Tier 1 or Tier 2 scopes for Ordering and Fulfillment phases is available only in case Tier Config capability is enabled.
The scope of configuration parameters is specified during the Create Configuration Key wizard. Configuration parameters can have the following scopes:
Product: Such configuration parameters are created in the scope of the whole Product and thus are handy to store some constant values used by the fulfillment automation middleware.
Marketplace: This scope is useful to store configuration parameters that vary per Marketplaces, like API Endpoint URLs and access information.
Item: Use this scope when Item’s MPN attribute is not enough and there is a need to store additional configuration values associated with an Item.
Item x Marketplace: When there is a need to store additional information associated with an Item in each Marketplace, Item x Marketplace scope will make this process simple for you by managing them in a uniform way.
Launch the parameter creation wizard by clicking the respective button with the plus icon:
Follow the wizard steps to successfully configure a new parameter.
Type
First, the system requires to specify your parameter type. Choose between email addresses, objects, passwords, choices and other types. Thus, for example, in case your customers should specify email address before ordering your product, select the email parameter type.
Information
The Object type is not displayed in the UI and can be used only in API requests. The structured_value field should be used to provide json structures for the object type parameters.
Vendors can group several ordering parameters into one logical section under the same name by adding the Group and Text content parameter types. The Group type parameter allows vendors to group logical parameters together under one name, for example, Partner information, Administrative information, Shipping information, etc. The Text content type parameter allows vendors to provide context for the group: it can be a text, information, warning, or an error:
Information
Parameters are linked to groups and groups to content text parameters based on the order of parameters created in the Ordering parameters section.
For example, to group parameters like on the inquiring form below, you need to create parameters of the group, text content, and inline text types in the following order:
Constraints
Constrains define the following parameter characteristics and the number of available constraints will vary depending on the parameter phase:
Required: Mandatory parameters marked as required are enforced by the system in the corresponding phase and scope. Therefore, your subscription request will not be fulfilled until all of the required fulfillment-phase parameters are specified.
Unique: Parameters marked with this attribute are checked by the system for uniqueness while storing them in the corresponding scope and phase. This enables to provide passwords, identifiers, or any other parameters that should not be specified more than once. If a parameter has a Unique constraint, its uniqueness will be checked in all requests, except for the requests in the Failed status or linked to a terminated subscription.
Read-only (Ordering Parameter): Enable this constraint to make your parameter non-modifiable, so it cannot be altered in any way. Thus, your parameter will be displayed to your customers, and in turn, your customers will not be able to edit such parameters. This constraint can be useful to display your static emails, addresses, phone numbers or any other pre-defined parameters that should not be changed.
Hidden (Ordering Parameter): This constraint is used to apply your conditional logic that is required for a given phase and scope. It can be especially helpful to hide certain parameters until a certain condition is met. For example, the system can ask to enter an identifier or a valid phone number without need to specify error values for such cases.
Visible by Distributor: In case your configuration parameter should be visible for the Distributors, this constraint should be activated. For example, a “partner code” can be used for the subsequent fulfillment operations or similar scenarios.
Editable by Distributor: If your configuration parameter should be editable for Distributor, this constraint can be used. For instance, “partner access configuration” and other similar scenarios.
Primary Vendor Reconciliation ID (Fulfillment Parameter): Value of this parameter can be used as a primary reconciliation ID for matching the data within the Vendor systems. Only one fulfillment phase parameter can be marked as reconciliation ID for a given product.
The Required, Hidden, and Read-only constraints can be later redefined per a subscription request on the Parameters tab by clicking the Edit button and selecting the required checkboxes under Attributes. For example, a Vendor can ask the customer to provide a valid email-address and show them an error message:
Information
The Editable by Distributor constraint applies only to Configuration phase parameters with Marketplace and Item x Marketplace scopes because marketplaces are specific to distributors, and they can edit only parameter values for their own marketplaces.
Dependencies
Parameter dependencies allow you to define how one parameter visibility or configurability depends on the options or values selected for other parameters.
Information
Only ordering parameters support the dependency configuration.
For example, you may need to dynamically display the input field to enter the promo code if users select I have Promo code checkbox when placing an order in the customer portal. As another example, you may want to showthe Account ID input field (hidden by default) if the Are you an existing customer? checkbox is selected:
Information
The parameter indicated in the Dependency section must have Choice, Drop-down, or Checkbox type.
Custom Choice for RTV
Ordering parameters support real-time validation on the vendor’s side. Unlike parameter dependencies, real-time validation allows vendors to instantly validate the data in their system and return options or an error message to customers based on the input field value entered when purchasing a subscription.
For example, customers will see a list of American datacenters if they purchase their subscription in the US marketplace and will see a list of European datacenters if they purchase the same subscription in the European marketplace.
The list of choices returned by the Vendor to Connect with the purchase request will be displayed to the customer:
The choices returned with the API call will override the static parameters configured in Connect (if any).
Details
Specify your parameter details in the following form:
ID: Unique identifier of the parameter in the context of a product. Specific IDs are also required to identify parameters using the Subscription API.
Title: This text will be shown within the different system inputs. Note that in case that an ordering phase parameter is specified (and not hidden by using constraints), this title will be visible to a customer.
Description: This text allows providing meaningful information for what the parameter is used for.
Click the Create button to finalize your parameter configuration.
Summary
As a result, your parameter will be successfully created. The system will also display the parameter summary.
Click Go to Details to review your parameter configuration. Otherwise, click Close to close the summary.
Removing Default Parameters
If you try to delete the product default parameters, your attempt will be rejected because the default parameters are used in the system Subscription Approved template that can be configured within the Embedding section. To delete the parameters, you need to edit the templates that use these parameters as follows:
Access the Embedding section from the product profile page.
Under Approved Templates, click the pencil icon next to the Default Activation Template to edit it.
Proceed to the Parameters section and remove both default parameters.
Click Save.
As a result, default parameters will be successfully deleted.