Schema-based promotion assets

The following diagram illustrates the schema-based promotion structure in the HCL Commerce Server.

High level schema-based promotion diagram
Calculation code
A promotion is represented by and calculated by using a promotion calculation code. A promotion calculation code indicates how the promotion is calculated for order items.

A calculation code belongs to a store entity. Multiple calculation codes can be defined within a store entity. If the store entity is deleted, the calculation codes that are defined within that store entity are also deleted.

Each promotion calculation code can have a start date and an end date, which define the time period in which the promotion is effective. The promotion calculation code can also be associated with one or more member groups, which define the eligible member groups.

The promotion calculation code can be attached to one or more catalog entries, and catalog groups. Attaching a calculation code to a catalog group has the same effect as attaching it to all the catalog entries directly in the catalog group. However, promotion calculation codes that are attached to catalog group A are not attached to products and items in catalog group B if catalog group A contains catalog group B.

Catalog entries or catalog group can have more than one promotion that is associated with them. When more than one promotion calculation code is applicable to an order, promotion calculations are performed in ascending sequence of their calculation code sequence attributes.

Note: Define promotion sequence orders to implement promotions on promotions.

The order items are grouped for calculation in one of the following ways:

  • Per trading agreement
  • Per product
  • Per offer
  • Per shipping address
Calculation rules

Each calculation code has a set of calculation rules, which define the conditions under which the calculation is done. Each promotion calculation rule is associated with one or more member groups, for whom the promotion is effective. Member groups can be eligible for more than one promotion at a time.

Note: If an eligible member group is defined at the calculation code level, it does not need to be defined again at the calculation rule level.