This feature introduces new functionality to the Provisioning application called Variables. Variables let you dynamically update provisioning properties on the service based on other products assigned to the order. For example, if a Voicemail MRC is assigned to the service, the system will automatically update the Voicemail provisioning parameter to True.
By updating provisioning properties based on assigned products, Variables will reduce the need to assign provisionable objects at the product level, decreasing the amount of configuration required to provision a service. Variables also improve order accuracy by ensuring the values sent on the provisioning request match the SKUs and MRCs assigned to the service.
Variable is a new data type (similar to List) that you can select when adding a Provisioning Object Definition (POD) property. As with Lists, Variables are configured in the Provisioning web module. You can track Variables on provisioning requests via the Request Detail view in Provisioning.
Note:
Variables functionality requires CostGuard client version 22.3 or higher.
Configuring Variables
With this release the MANAGE menu in the Provisioning web module has a new option for adding/managing Variables.

Selecting Variables displays a page that lists existing Variables. From here you can choose an existing Variable to edit or click + NEW VARIABLE to create a new Variable.

Selecting an existing Variable opens a right-hand pane that displays the configured parameters.

To create a new Variable, click + NEW VARIABLE. The page opens the right-hand pane for configuring the Variable parameters. Creating a Variable is similar to adding a List in Provisioning or Workflow. You’ll start by naming the list, providing a descriptive Code, setting the value’s data type, and setting whether or not the Variable should be active.
Next you’ll assign Outcomes. Outcomes contain the value sent in the provisioning request based on the SKU on the order.

Variable parameters marked with an asterisk are required.
Parameter | Description |
|---|---|
Name | Enter a unique name for the Variable. The value can be any combination of alphanumeric characters. |
Code | Enter a unique code or description for the Variable. The value can be any combination of alphanumeric characters. These codes are displayed on the Provisioning Request Detail view to facilitate troubleshooting provisioning errors. |
Type | Select a data type from the drop-down menu. For example: Date & Time, Integer, Text, etc… |
Active | This check box lets you specify whether or not the variable will be available for selection when you add a new property to a POD. Check to make the Variable available or leave unchecked to defer availability. |
Outcomes Filter | This field lets you filter the Outcomes list (after adding Outcomes). This can be handy when you have a long list of Outcomes. |
Add Outcomes | Click to add a new Outcome. See details below. |
Adding Outcomes
Configuration requires two steps. First, add and save the Outcomes. Then, associate one or more SKUs to each Outcome. As with Lists, the Value field on the Outcome will be sent in the provisioning request when the SKU(s) is assigned to the order.
Step 1 – Add one or more Outcomes.
Click + ADD OUTCOME to add a new row and fill in the required information. Each Outcome maps a value to one or more SKUs. Create a new Outcome each time you add a new value. Multiple Outcomes may be needed to cover the various SKU and value combinations.

Outcome parameters marked with an asterisk are required.
Parameter | Description |
|---|---|
Rank | Rank applies when multiple SKUs and Variable Outcomes are assigned to the order. The system will choose the Outcome with the highest rank. This can aid in handling order assembly errors where a user mistakenly assigns multiple SKUs or where one SKU should take precedence over another. |
Description | The value can be any combination of alphanumeric characters. |
Value | Enter a value based on the selected data type. The value is what will be sent in the provisioning request. |
Code | Enter a unique code for the Outcome. The value can be any combination of alphanumeric characters. These codes are displayed on the Provisioning Request Detail view to facilitate troubleshooting provisioning errors. |
Step 2 – Manage SKU Associations
Once the Outcomes are saved, you’ll see additional controls at the right end of each row.
The blue edit icon lets you update the Outcome’s Code.
The ellipsis icon is for managing SKU associations. This is where you associate one or more SKUs with the value you entered in this row.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
Click the ellipsis then select Manage SKU Association.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
This displays a form for adding SKUs to associate to the value.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
Clicking +Add displays a list of SKUs in your Product Catalog.
The system returns your entire Product Catalog and is presented over multiple pages. You can use the controls on the bottom of the form to page through the content, or you can use the Search field to zero in on specific products.
Select one or more SKUs by checking the associated check box(es) and then click Associate to add the selected SKUs.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
The next time you open the Manage SKU Associations form you’ll see the SKUs you added.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
Note:
If you need to delete an Outcome from the list of added Outcomes, hover over the row to display the delete (red X) icon at the right end of the row and then click on it.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
If you have a long list of Outcomes, you can use the Search field to filter the list.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
Once all your Outcomes are created, you can rank the order of precedence by simply dragging and dropping the Outcome within the list. The system will apply the value with the highest rank if multiple SKUs appear for the same provisioning property.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
Adding a Variable Definition to a Provisionable Object
When you add a definition to a Provisionable Object (POD), you can select Variable as the data type.

You can choose an existing Variable, or create a new Variable on-the-fly.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
Note:
When you add a new Variable here, you can complete nearly all of the definition, except that you’ll need to go back to MANAGE > Variables to manage the SKU Associations.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
A completed Variable definition is shown below.

Notes:
The Default Value is only used if none of the outcomes defined on the Variable match. If no matching SKUs are assigned to the service, the system will assign the default value. For example, if no Voicemail SKUs are assigned to the order, set the Voicemail parameter to False.
The Always Visible check box is disabled to ensure the Variable is not displayed on Orders to prevent users from altering it.
Tracking Variables on a Provisioning Request
The Provisioning Request Detail view has been updated with two enhancements for Variables.
The Extended Information tab has a new Computation Type column that indicates whether the system computed a property value.
A computation type of Variable indicates the system computed the value from a Variable list.
A computation type of State indicates the value was previously stored in the provisioning state system and populated on the request.
A NULL value indicates the value was populated on the order or the protection plan.
Future releases will indicate the source of all extended information items.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
The new Variable Outcomes tab aids in troubleshooting. The system will display the Variable list and Outcome used to compute the value sent in the provisioning request. .
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
Variable Walk-Through
This section walks you through a high-level example. It covers configuring the Variable, creating the order, and generating the provisioning request.
VariableConfiguration:
The Variable definition Update Bandwidth is configured to assign a value of 21 on the provisioning request when SKUs associated with the Outcome Code of 100/100 are assigned to the order.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
The Outcome code 100/100 has SKU 100U100D associated with it. When SKU 100U100D is assigned to the order, the provisioning system will send 21 as the parameter value.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
Provisionable ObjectConfiguration:
The Provisioning Property BW Profile – Variable is assigned a data definition type of Variable and is assigned the Variable definition Update Bandwidth.
If the system finds a matching Outcome/SKU combination on the order, it will assign the configured value to the BW Profile – Variable property.
If no Outcome/SKU combination is detected, the system will default the property to the value associated with 30 MB Up and 5 MB Down.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
Profile Configuration:
The BW Profile -Variable POD property is mapped to the BW Profile parameter on the Calix – xDSL Add Data Service provisioning action.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
OrderCreation:
An order is created and submitted with SKU 100U100D assigned to the service.
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)
Provisioning RequestGeneration:
Once the workflow provisioning action is submitted for the order, the system will evaluate the assigned SKUs on the service and update the provisioning property values based on the Outcomes configured on the variable.
SKU 100U100D was assigned to the service in the example above.
The value 21 is sent in the provisioning request for the BW Profile -Variable property
.png?sv=2026-02-06&spr=https&st=2026-08-05T22%3A22%3A08Z&se=2026-08-05T22%3A38%3A08Z&sr=c&sp=r&sig=wVNc90sSRD43AH8UbX5U49dUh6PcFHj84xH5lu1yKz8%3D)