You can reconfigure any attributes or options associated with your products from the Product Details > Configuration tab.

The Attribute Rules and Attribute Value Matrix feature settings are stored under Configuration Management using "Category": "cpq", and "Name": "<EnableAttributeMatrix or EnableAttributeRule>" and they are set to true by default. Use the PUT /api/config-management/v1/configurations API to enable or disable the feature setting.

Product Attribute Rules

Product Attribute Rules allow product configuration according to product attributes that are based on the actions you select. Each attribute value selection should ensure that the rest of the attributes get constrained to allow only valid selections to help narrow the result set. The attributes can also leverage expressions and calculations to derive values that help identify the product variant. This feature simplifies the configuration process, eliminates the need for component-level choices, and provides guided selling at the product configuration level. You can also set multiple actions for the same product attribute rule.

The product attribute rule is applied to the criteria that you define with the Criteria scope type. You can define simple and advanced criteria. In simple criteria, you can select a field, operator, and value. In advanced criteria, you can set a condition, if it is true, then the actions in the Action section are triggered.

Scenario to Use Product Attribute Rules with Criteria

Product Attribute Rule (PAR) effective date based on quote dates

When the effective date of the quote on the product configuration page fulfills the PAR criteria that you defined, a Rule gets executed.

For example,

Rule Criteria: Apply rules where,
Rule Start Date <= Quote Expected Start Date AND Rule End Date >= Quote Expected End Date Date

You can configure product attribute rules for attributes with the following action types and have them displayed on the product details page.

Action TypeData Type SupportedDescription
Allow
  • Picklist
  • Multi-picklist
To restrict the visibility of values on the target field.
Default
  • Number
  • Text
  • Picklist
  • Multi-picklist
To add a default value on the target attribute.
HiddenTo hide the target attribute.
DisabledTo make the target attribute a read-only field.
RequiredTo make the target attribute a required field.
ResetTo auto-populate a default value on the target attribute if the field is left blank.

For more information, see Attributes Based Configuration Rules.

Attribute Value Matrix

You can configure the attribute value matrix with the following application types and have them displayed on the product details page.

The scope must be Product, Product Family, and Product Group.

  • Default - Enables you to select the picklist and multi-picklist values, which you have configured as default values in Matrix View.

  • Constraint - Enables you to select only those picklist and multi-picklist values, which you have configured in Matrix View. All the other values are not visible in the drop-down list. This also works with the multi-select picklist.

  • Force Set - Enables you to automatically set the picklist and multi-picklist values, which you have configured in Matrix View (considering the last user selection). As soon as you change the attribute value for one attribute, the system sets values for other attributes.

For more information, see Attributes Based Configuration Rules.

Option Configuration

When you open the Product Details page > Configuration tab, the minimum and maximum options configuration and default option quantities work at all levels of option groups. Also, the minimum and maximum product quantity and total quantity validation work for 6 levels of option groups and you can also see option group and option level validation messages.

Display Option(s) as a Picklist

The implementor can set the Is Picklist flag when you want to display your options in the form of a picklist, from which the user can select only one option. When you set this flag, ensure that Min Options and Max Options are set to 1.

Hide Option Groups and Option

The implementor can completely hide (refer to the following points) an option group and its options within it from the user interface for the user.

  • Use the Is Hidden flag from the CPQ Admin > Option Group Configuration page to hide option groups.
  • Use the exclusion type constraint rules to hide excluded options from the list.

Modify Option Groups and Options within a Bundle Configuration

The implementor can specify whether the user can change the option quantity for the option group using the Modifiable Type setting with values Fixed and Variable from the CPQ Admin > Option Group Configuration > Bundle Configuration.

  • Selecting Variable enables the user to change the quantity of the option products while configuring the product.
  • Selecting Fixed restricts the user from changing the quantity of the option products inside the parent option group.

Setting the modifiable type setting to Fixed or Variable impacts only on immediate options. There is no impact on the sub-option groups. This setting has to be done on each level. This also overrides minimum and maximum validation. In case you select an option group with Modifiable Type as Fixed, the quantity input box of the immediate option(s) is disabled, and clicking the info icon next to it displays a message Quantity is not modifiable. The quantity displayed is the default value and in case you do not set the default value, the quantity is 1.

Set Required Option(s)

The implementor can set the Is Required flag for an option product in CPQ Admin. The required option product is selected by default in the configuration, and if the user deselects the option product, the Add to Cart button will be disabled.

Exclude Option Product within a Bundle Configuration

The implementor can set the Exclude Options Products custom setting in CPQ Admin to exclude options that are marked optional from the min/max criteria validation of the option group. When the user marks the option as optional using the Is Optional checkbox, options as optional are not considered in the Min Options, Max Options, Min Total Quantity, and Max Total Quantity criteria. Whenever you mark any product as optional, the price of the product is not included in the total. If you mark an option in a bundle as optional, the price of that option is not included in the bundle price.

Constraint Rules

Constraint Rules are configuration rules that are applied during the ordering process to a product or set of products. Constraint rules are set up to conditionally add a product to an order or conditionally block product additions to an order. It is supported for the standalone, bundle, and options products for basic inclusion and exclusion rules.

For example, when Product A is added to the cart, Product B may be automatically added based on an auto-inclusion type rule. Similarly, when Product B is added, users may be prevented from adding Product C.

In a Constraint Rules criteria, you can set up multiple AND or OR or a Combination of AND and OR conditions, including a bundle in any of the conditions. You can associate an option with a bundle along with Match in Options, Match in Primary (in the case of bundles), or both. Inclusion and Exclusion rules are also supported. For example, if [Option A] AND [Bundle X] (Parent Bundle] THEN AUTO INCLUDE [Option B].

When you open the Product Details, click Add to Cart, or select any option and option groups, the application triggers the constraint rule for the default product configuration. When you select an option, option groups, or add any product to the cart that has validation or inclusion/exclusion rules, you will see the in-line (popup) and page-level validation message and an alert icon with the number of warnings/errors next to the mini cart icon. You can review the validation message and add/remove the suggested product. You can also see the line item level validation message and disable action when the buyer selects or deselects the option group and/or option within the option group. 

Inclusion Rules

The following are the supported action intent and product types for the scope Product, Product Group (which has both standalone and bundle products), Criteria, Field Set, and Product Family:

1) Auto Include 

  • Standalone → Standalone
  • Standalone → Bundle
  • Bundle → Standalone
  • Bundle → Bundle
  • Bundle → Option
  • Option → Option

Currently, it is supported for the scope Product, Product Group only.

2) Show Message

3) Prompt (as per design, displays an error message) acts similarly to Show Message in the case of Catalog products.

Show and Prompt Messages that are similar and have two types of action disposition:

  • Error: When the action disposition is set to error, the user cannot close the constraint rule message that appears on the user interface.
  • Warning: When the action disposition is set to the warning, the user can dismiss the constraint rule message that appears on the user interface and appears again when you navigate to another page.

The inclusion rule matches when the scope is Product, Product Group, Criteria, Field Set, or Product Family.  For Product Group and Product Family, the rule values of the inclusion type rules must be Include Any, Include All, and Include Min/Max. The minimum and maximum match rule for Inclusion must have Include Min/Max as the rule values.

There is no message for successful product inclusion; however, for the product that is automatically included, you can see an Included badge in the Mini Cart and Active Cart.

Mini CartActive Cart

Error and Warning both are supported. When you add any product to the cart with validation or inclusion/exclusion rules, you will see the in-line (popup) and page-level validation message and an alert icon with the number of warnings/errors next to the mini cart icon. You can review the validation message and add/remove the suggested product.

Exclusion Rules

The following are the supported product types for the scope Product and Product Group:

  • Standalone → Standalone
  • Standalone → Bundle
  • Bundle → Standalone
  • Bundle → Bundle
  • Bundle → Option
  • Option → Bundle
  • Option → Option

The following are the supported types of Action Intent:

  • Disable Selection
  • Show Message
  • Prompt

The exclusion rule matches when the scope is Product or Product Group. For exclusion type rules (Match All, Match Any, and Match Min/Max), the rule values must be Exclude All, Exclude After One, and Exclude After Max. The maximum match rule for exclusion must have Exclude After Max as the rule value. 

Error and Warning both are supported. In the case of all action intents, the Add to Cart button is disabled on the product catalog page and product details page.

Behavior of Constraint Rule when configuring Include Any for Scope = Product Group or Product Family

When you configure Include Any in Constraint Rule for Scope = Product Group or Product Family, an error or warning message is displayed adding more than one option from the selected product group or product family to the cart.

Sub-bundle

Sub-bundles created up to level 6 are performance compliant.

Recommendation Rule

Based on the configuration, recommendation type rules are displayed on the product details page and cart page.

  • Product Details page: You can see the list of recommended products under the Recommended Products tab and you can also add recommended products directly from the list.

  • Cart page: You can see the list of recommended products after line item information and can also add them directly from the list.