Attribute-Based Configuration helps you customize the product configuration on your cart on the basis of the selection of product attributes. The attributes define characteristics or the desired features of the product. The attribute configuration may or may not affect the price of the product. Each attribute value selection ensures that the rest of the attributes get filtered based on selected attributes and the result set is narrowed.
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. For more information on how to set up and manage Attribute Rules and Attribute Rule Actions using REST APIs, see Catalog Setup APIs.
Attribute Rules
You can execute the Attribute rules on the template for standalone products and bundles with attributes. This enables you to select the right configuration.
You can use one or more of the following Attribute Rules:
Attribute Rules for Standalone products with attributes
Attribute Rules for Bundle level attributes
Attribute Rules for Bundle Option level attributes
The scope types for Attribute-Based Configuration Rules are:
- Product Family
- Product Group
- Product
- Criteria
The action types (constraint type) for Attribute-Based Configuration Rules are:
Action Type | Data Type Supported | Description |
---|
Allow | | 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. |
Hidden | To hide the target attribute. |
Disabled | To make the target attribute a read-only field. |
Required | To make the target attribute a required field. |
Reset | To auto-populate a default value on the target attribute if the field is left blank. |
Attribute Value Matrix
You can execute the Attribute Matrix-based constraint rules on the template for Standalone products and bundles with attributes. This enables you to select the right configuration.
For example, ABC IT Company, a leading laptop manufacturer, wants to use attributes to drive the product selection of their users. A laptop has five attributes: Color, HDD, RAM, Screen Size, and Fingerprint Reader. The following table describes the products and its attributes.
Product | A-560 | A-560m | A-440 | A-440m | A-320 | A-320m |
---|
Color | Black | Black | White | White | Black | White |
HDD | 1 TB | 2 TB | 500 MB | 500 MB | 1 TB | 1 TB |
RAM | 8 | 16 | 4 | 8 | 8 | 16 |
Screen Size | 14 HD | 14 HD | 15 | 15 HD | 14 | 14 HD |
Fingerprint Reader | Yes | Yes | Yes | Yes | No | Yes |
After you create an attribute value matrix, when the user selects Black from the Color picklist menu, the HDD picklist menu will contain only 1 TB and 2 TB as options. RAM picklist menu will contain 8 and 16 as options. Screen Size will contain 14 and 14 HD as options. The Fingerprint Reader picklist menu will contain Yes and No as options.
You can use one or more of the following Attribute Value Matrix criteria:
- Attribute Value Matrix for Standalone product with attributes
- Attribute Value Matrix for Bundle level attributes
- Attribute Value Matrix for Bundle Option level attributes
The scope type for Attribute Value Matrix is:
- Product Family
- Product Group
- Product
The application type for Attribute Value Matrix is:
- Default: Sets the default value of an attribute when criteria are met and the user selects the attributes
- Constraint: Restricts picklist, Multi-picklist values of attributes based on the matrix
- ForceSet: Sets single or multiple values of the attributes based on the matrix