Discount Priority

You give every discount a priority that determines when it should be applied relative to other discounts that might also apply to a product. (Unlike ads, discounts do not use weights to determine when they are delivered.) Discounts are applied from the lowest numerical number to the highest. For example, a discount with a priority of 10 will be applied before a discount with a priority of 20. This is true even if the discounts apply to the same award item.

For example, the beverage department of your online store has a special offer for summer: buy one case of juice; get the second case for half price. However, your online store has another special offering a 10 percent discount on each product in the beverage category. Assume you prioritize these discounts as shown in the following table.

Discount Priority
Buy one case of juice, get the second case at a 50 percent discount 10
10 percent discount on each product in the beverage category 20

If a user buys four cases of juice, the discounts are applied as follows:

  • Case 1: No discount
  • Case 2: 50 percent discount
  • Case 3: No discount
  • Case 4: 50 percent discount, only if no limit was placed on the "Buy one get second half price" discount. The 50 percent discount would apply again instead of the 10 percent discount because you gave it a higher priority.

If a discount item receives multiple offers and the offers have the same priority and are the same discount type (percentage off discount or dollar off discount), the discounts will be combined. For example, in the following scenario, two discounts will be combined into a single 30 percent discount because they have the same priority (10) and the same discount type (percentage off at the item level).

For example, you create two discounts and assign each a priority 10 as shown in the following table.

Discount Priority
Buy a telephone, get 10 percent off a radio. 10
Buy a video game, get 20 percent off a radio. 10

The two discounts will be combined into a single 30 percent discount because they have the same priority (10) and the same discount type (percentage off at the item level).

User Basket:

Product Price Discount Adjusted total
Telephone 40   40
Video game 50   50
Radio 30 9 (30*.30) 21
    Total 111

Dollar off discounts work the same way. The discounts will be combined if the discount priorities are the same.

If discounts have the same priority, but are not the same discount type, then the OrderDiscount pipeline component determines which discount type to apply first. For information about the OrderDiscount pipeline component, see How Discounts Are Applied Programmatically.

Copyright © 2005 Microsoft Corporation.
All rights reserved.