This article describes the pricing logic, including how items appear in the pricing list, how they are grouped, and what an item needs to have to appear in the pricing engine.
Requirements for items to appear in pricing
The main rule for an item to appear in the pricing engine is to have a refCode.
The refCode used is the one set in the task configuration. This determines whether the item will be sent to the item list. For more information on task configurations, see this article.
How items are grouped
Items are grouped in the pricing list based on:
- refCode (set on the item)
- attribute values (for attributes that have refCodes)
Grouping rules
| Condition | Result |
| Same refCode + same attribute values | Items are grouped |
| Same refCode + different attribute values | Items are not grouped |
| Different refCodes | Items are not grouped |
Note: Names and descriptions are not considered for grouping. Items with different names or descriptions but the same refCode and matching attributes will still be grouped.
For items to be grouped, all attributes must match. Since attributes can affect the price, different attribute values result in separate line items.
Attributes and refCodes
Only attributes with refCodes are sent to the pricing engine.
- If an attribute does not have a refCode, it is not sent to the pricing engine.
- If an attribute has a refCode, it appears in the Commercial Item List.
- If an attribute is used in a price rule formula, it must have a refCode. Without a refCode, the pricing engine cannot access the attribute value.
Note: The attribute code and refCode can be different. The value that appears in the Commercial Item List and is used by the pricing engine is the refCode, not the attribute code.
Attributes in price rules
When using attributes in price rules or formulas:
- The attribute must have a refCode defined.
- The formula uses the refCode, not the attribute code.
- Any attribute referenced in a formula must have a refCode; otherwise, its value cannot be evaluated by the pricing engine.
For example, to use a width value in a formula, the width attribute must have a refCode. The formula then uses that refCode to retrieve the value during pricing calculations.
For more information on price rules, see this article.
Why use attributes with refCodes?
Attributes with refCodes may be needed for:
- Price rules – to vary pricing based on attribute values
- Integrations – to export data to third-party systems
- Item differentiation – to prevent grouping of items that should be priced separately