Develop > Presentation layer > Customize promotions > Promotion engine customization


Example: Adjustment XML fragments

Review the XML representation of some common adjustments in the runtime promotion XML for a promotion type can help you understand how to customize an adjustment.

This file contains .


Bonus point adjustment

<!-- This adjustment is not be handled by the order subsystem. -->
<Adjustment impl="com.ibm.commerce.marketing.promotion.reward.CustomNumericValueAdjustment">   
<CustomNumericValue>12</CustomNumericValue> 
  
<!-- Possible values are 
      wholeOrder: This adjustment is applied to the entire order as a whole.
      IndividualAffectedItem: This adjustment is applied to each and every 
          one of the affected order items.
      AllAfftectedItems: This adjustment is applied to all affected order 
          items as a whole.
             
      This attribute is common to all Adjustments.
        -->   
<AdjustmentType>wholeOrder</AdjustmentType>
</Adjustment>


Simple fixed amount off adjustment

<Adjustment impl="com.ibm.commerce.marketing.promotion.reward.FixedAmountOffAdjustment">   
<AmountOff>15</AmountOff>   
<Currency>USD</Currency>   
<AdjustmentType>wholeOrder</AdjustmentType>
</Adjustment>


Complex fixed amount off adjustment

<!-- Applies to a set of order items, based on the quantity in the set, this assigns 
     different discount amounts to the items.
     -->
<Adjustment impl="com.ibm.commerce.marketing.promotion.reward.FixedAmountOffVolumeAdjustment">   
<AdjustmentType>IndividualAffectedItems</AdjustmentType>   
<Range>      
<AmountOff>15</AmountOff>      
<Currency>CAD</Currency>      
<LowerBound>1</LowerBound>      
<UpperBound>5</UpperBound>      
<LowerBoundIncluded>true</LowerBoundIncluded>      
<UpperBoundIncluded>true</UpperBoundIncluded>   
</Range>   
<Range>      
<AmountOff>25</AmountOff>      
<Currency>CAD</Currency>      
<LowerBound>6</LowerBound>      
<!-- -1 indicates unlimited -->      
<UpperBound>-1</UpperBound>      
<LowerBoundIncluded>true</LowerBoundIncluded>      
<UpperBoundIncluded>false</UpperBoundIncluded>   
</Range>
</Adjustment>


Fixed amount off shipping adjustment

<Adjustment impl="com.ibm.commerce.marketing.promotion.reward.FixedAmountOffShippingAdjustment">   
<AmountOff>15</AmountOff>   
<Currency>CAD</Currency>   
<AdjustmentType>wholeOrder</AdjustmentType>
</Adjustment>


Fixed cost adjustment

<Adjustment impl="com.ibm.commerce.marketing.promotion.reward.FixedCostAdjustment">   
<FixedCost>45</FixedCost>   
<Currency>CAD</Currency>   
<AdjustmentType>wholeOrder</AdjustmentType>
</Adjustment>


Fixed cost shipping adjustment

<Adjustment impl="com.ibm.commerce.marketing.promotion.reward.FixedCostShippingAdjustment">   
<FixedCost>15</FixedCost>   
<Currency>CAD</Currency>   
<AdjustmentType>wholeOrder</AdjustmentType>
</Adjustment>


Free gift with purchase adjustment

<Adjustment impl="com.ibm.commerce.marketing.promotion.reward.FreePurchasableGiftAdjustment">    
<GiftItem>        
<CatalogEntryKey>            
<SKU>SKU-20101099</SKU>            
<DN>o=Root Organization</DN>        
</CatalogEntryKey>    
</GiftItem>    
<Quantity>1</Quantity>    
<!-- Possible values are:         0: As needed: If there are any items in the shop cart that satisfy free 
                      gift description, that item will be marked down by 100%. 
                      If there is not or there is not enough, free gifts will be 
                      added.

        1: Always add: Regardless of what is in the shopcart add the free gifts.
        2: Never add: Never add free gift, if the shoppers are to get the free 
                      gifts, they have to put the gifts into the shop cart by 
                      themselves.
         -->    
<AddStrategy>0</AddStrategy>    
<AdjustmentType>wholeOrder</AdjustmentType>
</Adjustment>


Percent off adjustment

<Adjustment impl="com.ibm.commerce.marketing.promotion.reward.PercentOffAdjustment">   
<Percentage>15</Percentage>   
<AdjustmentType>wholeOrder</AdjustmentType>
</Adjustment>


Percent off shipping adjustment

<Adjustment impl="com.ibm.commerce.marketing.promotion.reward.PercentOffShippingAdjustment">    
<PercentOff>10</PercentOff>    
<AdjustmentType>wholeOrder</AdjustmentType>
</Adjustment>


Promotion reward issues coupon adjustment

<Adjustment impl="com.ibm.commerce.marketing.promotion.reward.VoucherAdjustment">    
<PromotionKey>        
<PromotionName>20% Off Any Purchase</PromotionName>        
<StoreKey>            
<DN>Root Organization</DN>            
<Identifier>Store 201</Identifier>        
</StoreKey>        
<Version>2</Version>        
<Revision>1</Revision>    
</PromotionKey>    
<AdjustmentType>wholeOrder</AdjustmentType>
</Adjustment>


Fixed amount off on standard offer price, contract price, or discounted price

<Adjustment impl= "com.ibm.commerce.marketing.promotion.reward.FixedAmountOffPriceAdjustment"> 
   
<!-- Possible values are:         -1: Standard offer price
        -2: Contract price 
        -3: Discounted price
         -->    
<PriceAdjustmentBase>-1</PriceAdjustmentBase>    
<AmountOff>15</AmountOff>    
<Currency>CAD</Currency> 
   
<!-- For B2B price adjustments this field is always IndividualAfftectedItems -->    
<AdjustmentType>IndividualAffectedItems</AdjustmentType>
</Adjustment>


Percent off standard offer price, contract price, or discounted price

<Adjustment impl="com.ibm.commerce.marketing.promotion.reward.PercentOffPriceAdjustment"> 
  
<!-- Possible values are:        -1: Standard offer price
       -2: Contract price
       -3: Discounted price 
        -->    
<PriceAdjustmentBase>-1</PriceAdjustmentBase>    
<Percentage>15</Percentage>    
<AdjustmentType>IndividualAffectedItems</AdjustmentType>
</Adjustment>


Related concepts

Customize promotions


+

Search Tips   |   Advanced Search