Discounts in commerce
Discounts play a multi-faceted role in commerce and significantly impact the success of a business, some of which include:
- Attracting customers
- Increasing sales
- Clearing inventory
- Establishing and maintaining customer loyalty and retention
- Setting up seasonal and promotion campaigns
- Competing with competitors
- Upselling and cross-selling
- Collecting and managing data
Understanding how to use discounts in day-to-day operations is crucial for digital commerce administrators and coordinators. Some of the most common discounts used by businesses are as follows:
- 10% off items in a special category like tops, pants, shoes and don't already have a special price
- 5% off items in any sale category
- $10 off specific SKUs or attributes
Discounts in Composable Commerce
Composable Commerce offers the following types of Discounts:
- Product Discounts are applied directly to specific Products or Product Variants even before they are added to the Cart. For example, take $5 off a single variant's price.
- Cart Discounts are applied to the entire Cart value based on certain conditions like Cart subtotal, specific Product Variants in the Cart, or customer segments. Cart Discounts affect the overall Cart value rather than individual Products. For example, you can apply a discount when a customer purchases multiple items of the same variant, and only then.
- Discount Codes are customer-specific or general codes that customers can enter during the checkout process to receive a discount. When entered at checkout, Discount Codes trigger the associated Cart Discount.
Product Discounts vs Cart Discounts
Product Discounts share some common features with Cart Discounts:
-
Flexible Discount Predicates: Both types use Discount Predicates to define the conditions under which a Discount applies.
-
Discount ranking: Each Discount has a
sortOrdervalue that determines its priority relative to other Discounts in the Project. -
Relative and absolute Discounts: Both types support relative (percentage-based) and absolute (fixed-value) discount amounts.
Although some similarities exist between Product Discounts and Cart Discounts, some noteworthy differences exist too:
- Only one Product Discount can apply to a Product at any given time (the highest ranked active Product Discount) as opposed to multiple Cart Discounts that can apply simultaneously at any given time.
- While Product Discounts can be applied directly to a Product, Cart Discounts offer more variety. For example, Cart Discounts can be applied to the Cart Total, to Shipping Methods or even to offer free gifts.
Discount interaction configuration
discountCombinationMode to either Stacking (apply both discount types sequentially) or BestDeal (apply only the discount type offering the lowest Cart total).-
Stacking: Maximizes customer savings by applying Product Discounts first, then Cart Discounts to reduced prices. Use for customer acquisition campaigns or loyalty programs. Trade-off: higher discount costs and complex interaction planning.
-
BestDeal: Applies only one discount type per Cart (whichever yields lower total). Use for controlled discount budgets or simplified discount strategies. Trade-off: some Line Item prices may be higher if switching discount types provides overall better deal.
Stacking. Learn more about discount interaction in the Cart Discounts module.What are Predicates?
Discounts require conditions specified through Predicates, which evaluate whether specified conditions are true or false for Product and Cart Discounts.
A predicate comprises of a field identifier, an operator, and a value, for example:
| Field identifier | Operator | Value |
|---|---|---|
| SKU | = | AB-123 |
In the above case, if a Product Variant matching the specified SKU exists, its Price would be discounted according to the rest of the Product Discount.