Oracle Apps Advanced Pricing - Overview of Modifiers

Modifiers enable you to set up price adjustments (for example, discounts and surcharges), benefits (for example, free goods, coupons) and freight and special charges that the pricing engine applies immediately to pricing requests or accrues for later disbursement. Using modifiers, you can:

  • Set up a modifier list with multiple modifier lines.
  • Create eligibility rules for modifiers by assigning list and line level qualifiers.
  • Define modifiers that are incompatible with other modifiers.
  • Create exclusive modifiers.
  • Create cascading modifiers.
  • Accrue monetary and non-monetary benefits.
  • Create monetary or usage limits that a customer can receive for a promotion, deal, or other modifier.
Note: If you are using the multi-currency feature with price lists and modifiers, see: Considerations for Modifiers Using Multi-Currency Price List as a Qualifier.
    • You can only view or update a modifier in your pricing transaction entity. The profile QP: Pricing Transaction Entity must match the pricing transaction entity of the modifier.
    • You can only view or update a modifier in your source system. The profile QP: Source System Code must match the source system of the modifier. Otherwise, the modifier is view-only.

Advanced Promotion and Deals

Modifier list types of Promotion and Deal have a parent-child relationship for reporting purposes. When you create a modifier list type of Deal, you must associate it to a parent promotion by providing the promotion name and version. Since this association is for reporting purposes, information that you define on the promotion is independent of and does not affect the information on the Deal.
You can create ask for promotions or deals; those that pricing engine does not apply unless the customer asks for them. At order entry, you must reference the modifier list name or number or the modifier line number.
You can do the following with promotions and deals:
  • Create versions to retain history
  • Match effectivity dates
  • Use multiple modifier types
  • Issue coupons
  • Offer discounts on other items when a customer purchases one
  • Offer promotional goods
  • Offer upgraded merchandise
  • Substitute favorable payment terms
  • Create both monetary and non-monetary promotional accruals

Modifier Concepts

You use the Advanced Pricing - Define Modifier window to set up price adjustments, benefits, freight and special charges. You can define simple discounts and surcharges as well as more advanced deals and promotions within the same window.
The following diagram shows modifier components and related entities:
  • Modifier lists contain one or more modifiers. Modifiers have list level and line level components. Each list level must have one or more lines associated with it.
  • By defining qualifiers at the list and line levels, you define a customer's eligibility for the modifier.
  • Control features that influence modifiers are products and product groups, pricing attributes, phases, incompatibility groups, levels, and buckets
  • The use of modifiers can result in volume breaks, additional buy/get products, and benefits.
The following diagram provides an overview of modifiers and related concepts such as modifiers, modifier lists and qualifiers.
Figure: Modifier Overview


Modifier List Types

Using modifier lists, you can create groupings of price adjustments, benefits, and freight and special charges that you offer and report together to meet various business needs. At the list level, you define criteria that is common to all of the line level modifiers. You can use the following list types:
  • Discount
  • Surcharge
  • Freight and Special Charges
  • Promotion
  • Deal
For each list type that you define, you associate certain line types.

Modifier Types: Line Level

Use modifier lines to define the type of price adjustments, benefits or freight and special charges that the pricing engine applies to pricing requests. You can associate certain line types with a list type. The following list describes the modifier types available at the line level:
  • Coupon Issue: Issues a coupon on one order for the customer to redeem for a price adjustment or benefit on a later order.
  • Discount: Creates a negative price adjustment.
  • Item Upgrade: Replaces a specific item ordered with another item for the same price.
  • Other Item Discount: Gives a price adjustment or benefit to a specified item on an order when the customer orders one or more other items on the same order.
  • Price Break Header: Applies a variable discount or surcharge price adjustment to a pricing request based meeting the condition of a break type. You can use both point and range type breaks.
  • Promotional Goods: Adds a new item with a price adjustment or benefit when the customer orders one or more other items on the same order.
Note: If you are using Promotional Good (PRG) type of Modifier Line with Multi-Currency, see: Using Promotional Good type of Modifier Line.
  • Surcharge: Creates a positive price adjustment.
  • Term Substitution: Replaces freight charges, shipping charges, and payment terms with typically more favorable charges.
The following table details the modifier line types that can be used with a selected modifier list type. Each row is a modifier line type and each column is a modifier list type. A Yes in a row indicates that you can use the line type in the list type, a No indicates that you cannot:
Table: Modifier Line Type and Modifier List Type Relationships
Modifier Line Type (listed in column below) 
Deal 
Discount List 
Freight & Special Charges 
Promotion 
Surcharge List 
Coupon Issue 
Yes 
No 
No 
Yes 
No 
Discount 
Yes 
Yes 
No 
Yes 
No 
Item Upgrade 
Yes 
No 
No 
Yes 
No 
Other Item Discount 
Yes 
No 
No 
Yes 
No 
Price Break Header 
Yes 
Yes 
No 
Yes 
Yes 
Promotional Goods 
Yes 
No 
No 
Yes 
No 
Surcharge 
Yes 
Yes 
No 
Yes 
Yes 
Terms Substitution 
Yes 
No 
No 
Yes 
No 

Modifier Application Matrix

Use the following tables to help you select an application method when setting up header, line, and group of lines modifier lines.
The following table shows order level modifiers and the application methods available for each. The Value column shows application methods available if entering a value for the modifier. The Formula column shows application methods if you are entering a formula for the value for the modifier:
Table: Modifier Application Method - Order Level
Modifier 
Application Method 
Value 
Discount 
Percent 
Percent 
Surcharge 
Percent 
Percent 
Freight/Special charge List 
Lumpsum 
Lumpsum 

The following table shows line level modifiers and the application methods that you can use for each. The Value column shows application methods if you are entering a value for the modifier and the Formula column shows application methods if you are entering a formula for the value for the modifier:
Table: Modifier Application Method - Line Level
Modifier 
Value 
Formula 
Discount 
Percent, Amount, Newprice, or Lumpsum 
Percent, Amount, Newprice, or Lumpsum 
Surcharge 
Percent, Amount, Newprice, or Lumpsum 
Percent, Amount, Newprice, or Lumpsum 
Freight/Special Charges 
Percent, Amount, or Lumpsum 
Percent, Amount, or Lumpsum 
Other Item Discount (Get) 
Percent, Amount, Newprice, or Lumpsum 
None 
Price Break 
Percent, Amount, Newprice, or Lumpsum 
Percent, Amount, Newprice, or Lumpsum 
Promotional Good (Get) 
Percent, Amount, Newprice, or Lumpsum 
None 

The following table shows group of lines level modifiers and the application methods that you can use for each. The Value column shows application methods if you are entering a value for the modifier and the Formula column shows application methods if you are entering a formula for the value for the modifier:
Table: Modifier Application Method - Group of Lines Level
Modifier Type 
Application Method 
Formula 
Discount 
Percent, Amount, Newprice, or Lumpsum 
Percent, Amount, Newprice, or Lumpsum 
Surcharge 
Percent, Amount, Newprice, or Lumpsum 
Percent, Amount, Newprice, or Lumpsum 
Other Item Discount (Get) 
Percent, Amount, Newprice, or Lumpsum 
None 
Price Break 
Percent, Amount, Newprice, or Lumpsum 
Percent, Amount, Newprice, or Lumpsum 
Promotional Good (Get) 
Percent, Amount, Newprice, or Lumpsum 
None 

Lumpsum/Group of Lines Calculation

The pricing engine applies a modifier based on its application method. When the value Lumpsum is selected as the Application Method for a modifier, the pricing engine creates a price adjustment for the defined lump sum amount based on either the item quantity or item amount.
Two cases are described below that demonstrate how Lumpsum adjustments are applied at the Group of Lines level to calculate adjustments for:
  • group quantity (sum of item quantities) or
  • item amount (a monetary amount)
For each case, a modifier with the following setup is used:
Table: Example of "Lumpsum" Modifier Setup used in Cases 1 and 2
Application Method 
Type 
Level  
Modifier type 
Product Attribute 
Product Attribute Value 
Value 
Lumpsum 
Discount List 
Group of Lines 
Discount 
All Items 
All 
1000 

Case 1: Group Quantity
The following example demonstrates how the adjustment amount is calculated when the "Lumpsum" modifier is applied against Item Quantity on the following price list lines:
Table: Lumpsum Group Quantity Calculation and Sample Price List
Line 
Item 
Quantity 
Price 
Adjustment Amount calculated when "Lumpsum"Modifier Applied 
AS54888 
10 
$80 
20 
AS54999 
40 
$20 
20 

The pricing engine calculates the adjustment amount as follows:
  1. The pricing engine calculates the sum of all item Quantity lines--this is the Group value:
Sum of all Quantity lines = 10 + 40 = 50. Therefore, 50 is the Group value:
    • Group value for Line 1: 50
    • Group value for Line 2: 50
  1. To obtain the adjusted amount, the Value (from the Value field of the modifier--in this case, 1000) is divided by the Group value (50):
    • Line 1: 1000/50 = 20
    • Line 2: 1000/50 = 20
Therefore, the adjustment amount for each line is 20.
Case 2: Item Amount Calculation
The following example demonstrates how an adjustment for lumpsum modifier is calculated based on Item Amount (the monetary amount for each item). The Lumpsum modifier is applied against the following items on a sample sales order:
Table: Lumpsum Item Amount Calculation and Sample Price List
Line 
Item 
Quantity 
Price 
Adjustment Amount that results 
AS54888 
10 
$80 
50 
AS54999 
40 
$20 
12.5 

The engine calculates the lumpsum based on Item Amount as follows: Value divided (/) by Group Value:
  1. Group Value is calculated as follows:
Group Value = Sum of all lines' unit price * quantity/unit price per line:
Total Group Value= $80*10 + $20*40 = 1600
    • Group Value for Line 1 = 1600/80 = 20
    • Group Value for Line 2 = 1600/20 = 80
  1. To obtain the adjusted amount, the Value (from the Value field of the modifier--in this case, 1000) is divided by the Group value for each line:
    • Line 1: 1000/20 = 50
    • Line 2: 1000/80 = 12.5

Manual Modifiers

Manual modifiers are modifiers that the pricing engine returns to the calling application instead of applying automatically. The calling application stores the modifiers in a price adjustments table and displays them so that you can select the adjustments to be applied on an order line.
The following modifier types can be manual:
  • Discounts
  • Surcharges
  • Price break lines
  • Freight and special charges
You can set manual modifiers at the order, line, and group of lines levels and make them overridable.

Incompatibility

Your business needs may require you to use modifiers that you do not want the pricing engine to apply to an order or order line in combination with other modifiers (incompatible modifiers).
You can use incompatibility groups to assign incompatibility levels to modifier lines. When the pricing engine encounters incompatible modifiers, it uses incompatibility processing to resolve the incompatibility.

Incompatibility Processing

Incompatibility processing occurs when a customer is eligible for more than one modifier and you instruct the pricing engine not to use these modifiers together.
You can assign multiple incompatibility levels to each pricing phase. When you create modifier lines, you assign each modifier to a phase and assign it an incompatibility level.
Since the pricing business rules allow the pricing engine to apply only one modifier for each incompatibility level and phase combination, it must resolve incompatibilities.
Base Price
During the phase List Line Base Price, if the pricing engine selects more than one eligible price list line in the desired unit of measure, it resolves the incompatibility by picking the price list line having the highest precedence (lowest precedence number) and uses it as the base price of the item.
Use the Event Phases form to set the incompatibility resolve code for a phase.
Precedence
During the phases List Line Adjustment, All Line Adjustments, and Header Level Adjustments if the pricing engine selects more than one eligible modifier it resolves the incompatibility using the best price feature. The best price feature instructs the pricing engine to select the modifier that offers the lowest price to the customer. For non-monetary modifiers, the pricing engine uses the estimated general ledger value of the modifier as the value of the modifier.
You can create one exclusive modifier in each pricing phase. When the pricing engine encounters an exclusive modifier, it suspends incompatibility pricing for the phase and applies only the exclusive modifier.
The following table shows an example of the pricing engine using precedence to resolve incompatibilities. The Engine Applies column indicates whether the pricing engine selects the modifier.
Table: Incompatibility Processing
Modifier 
Phase 
Incompatibility Level 
Precedence 
Engine Applies 
10% discount 
30 
260 
No 
100 currency unit promotion 
30 
240 
Yes 
Free promotional good 
30 
260 
Yes 
50 currency unit lumpsum 
30 
200 
Yes 
3% discount 
30 
240 
No 
25 currency unit deal 
40 
260 
Yes 

Note: Refer to the phase event mapping discussion to learn how to set phase incompatibility resolution.

Manual Modifiers

To control incompatibility processing for manual modifiers, set a value for the profile option QP: Return Manual Discounts. To view the incompatibility processing options for manual modifiers, refer to the description of the profile option.

Buckets

To create cascading price adjustments, you can place modifiers into different buckets. When the pricing engine calculates price adjustments, it:
  • Calculates percent type modifiers using the previous bucket's subtotal
  • Sums all bucket modifier values to create a bucket subtotal
Null buckets
The pricing engine automatically applies order level modifiers and manual modifiers to the Null bucket. With the Null bucket, the pricing engine:
  • Calculates percent discounts using the list price
  • Sums all bucket modifier values to create a bucket subtotal
  • Applies the subtotal after the last numbered bucket
For all other modifiers, you:
  • Do not have to assign a bucket
  • Can assign the Null bucket
The modifiers in a Null bucket are applied last and always adjust from the list price.
Examples of Null buckets
For example, the list price for an SP ATO Model is $55 with a discount for 50% in the Null bucket.
In Bucket 1, a 10% discount is applied, and the calculated price is:
55-(10%*55) = $49.5
In Bucket 2, a surcharge of 10% is applied, so the calculated price is:
49.5+(10%*49.5) = $54.45
In Null bucket, modifiers are applied last and taken out of the list price, so the calculated price is:
54.45-(50%*55) = $26.95
The following table describes another bucket example. When the base list price is 100 currency units, the pricing engine calculates the final selling price of 66.20. The Price Adjustment column shows the value of each modifier, the Bucket Subtotal column shows the total value of all modifiers for the bucket, and the Selling Price shows the price at the beginning of the calculation and after application of each bucket subtotal. The value Null in a cell means that there is no value for that cell; the value Null Bucket means that the modifier is grouped in the null bucket:
Table: Final Selling Price Calculation
Bucket 
Modifier 
Price Adjustment 
Bucket Subtotal 
Selling Price 
Null 
Null 
Null 
Null 
100.00 
Null 
Null 
Null 
Null 
Null 
2% discount 
(2.00) 
Null 
Null 
5 currency unit discount 
(5.00) 
Null 
Null 
Null 
Null 
(7.00) 
93.00 
Null 
Null 
Null 
Null 
Null 
5 currency unit discount 
(5.00) 
Null 
Null 
Null 
Null 
(5.00) 
88.00 
Null 
Null 
Null 
Null 
Null 
2 currency unit surcharge 
2.00 
Null 
Null 
10% discount 
(8.80) 
Null 
Null 
Null 
Null 
(6.80) 
81.20 
Null 
Null 
Null 
Null 
Null 
Null Bucket 
5% discount 
(5.00) 
Null 
Null 
Null Bucket 
10 currency unit discount 
(10.00) 
Null 
Null 
Null Bucket 
Null 
Null 
(15.00) 
66.20 

Events

Events are points in the process flow of the calling application at which it sends a pricing request to the pricing engine (analogous to a workflow event).The information that the pricing engine returns, for example, base prices, price adjustments, promotions, or freight charges, depends on the pricing phases of the event.
Refer to the pricing lookups information for the details of the predefined pricing events.
For example, if you need to price sales orders at shipment, use the Reprice Line event and insert the Reprice Line workflow activity into the order process workflow to invoke the repricing. The pricing engine uses the price list and modifiers that are in effect at order entry to meet booking requirements such as credit check.

Accruals

You can create monetary and non-monetary accruals, for example, the customer accrues ten airline frequent flyer credits for each item they purchase. The pricing engine uses them in price calculations and passes them to the calling application.
Accruals:
  • Do not affect the selling price of an order line
  • Do not appear as chargeable items on invoices
  • Create an adjustment record in the database
You can:
  • Assign expiration dates to accruals
  • Mark accruals redeemed
  • Use buckets with monetary accruals. Since accruals do not effect the selling price of an order line, the pricing engine does not include them in bucket calculations but uses bucket numbers to determine the price from which to calculate the accrual value.
The following table shows a bucket calculation with accruals; however, it does not show the details of each bucket calculation. The Price Adjustment column shows the value of each modifier, the Bucket Subtotal column shows the total value of all modifiers for the bucket, and the Selling Price shows the price at the beginning of the calculation and after application of each bucket subtotal. The value Null in a cell means that there is no value for that cell; the value Null Bucket means that the modifier is grouped in the null bucket:
Table: Accrual Value Calculation
Bucket 
Modifier 
Price Adjustment 
Bucket Subtotal 
Selling Price 
Null 
Null 
Null 
Null 
100.00 
Null 
Null 
Null 
Null 
Null 
Null 
Null 
(7.00) 
93.00 
Null 
Null 
(5.00) 
88.00 
Null 
Null 
(6.80) 
81.20 
Null Bucket 
Null 
Null 
(15.00) 
66.20 
Null 
Null 
Null 
Null 
Null 
10% accrual 
(10.00) 
Null 
Null 
5% accrual 
(5.00) 
Null 
Null 
10% accrual 
(9.30) 
Null 
Null 

Qualifier Grouping Number Options

You can attach both qualifiers and qualifier groups to modifier lists and lines. When you attach qualifier groups, you are attaching all of the qualifiers in the qualifier group. The qualifier grouping number is important when you attach multiple qualifiers because it indicates to the pricing engine how to evaluate the qualifiers:
  • Qualifiers with the same grouping number are evaluated as a boolean AND condition (an entity must meet all of the conditions to qualify).
  • Qualifiers with different grouping numbers are evaluated as a boolean OR condition (an entity must meet one of the conditions to qualify).
Before you attach multiple qualifier groups, you must indicate how the process should coordinate the grouping numbers. You select one of the following grouping number options:
  • Retain Grouping Numbers Across Qualifier Groups: The grouping numbers of each attached qualifier remains as it appears in its qualifier group. In this case, the collection of attached qualifiers does not mirror the AND and OR combinations within each of the original qualifier groups.
  • Generate Unique Grouping Numbers Across Qualifier Groups: The process maintains the AND and OR combinations within each of the original qualifier groups and then creates OR conditions between the groups. It attaches the first qualifier group with grouping numbers as is, then finds the highest grouping number used, increases it by one, and increases all of the grouping numbers of the second group by this number. It attaches subsequent groups in the same manner, using the highest grouping number used by the just previously attached group.
  • Both: If you attach qualifiers using one option and then reaccess the window and attach additional qualifiers using the other option, the second round qualifiers attach differently depending on the option. If the second round option is Retain Grouping Numbers Across Qualifier Groups, the process attaches those qualifiers among the already existing qualifiers. If the second round option is Generate Unique Grouping Numbers Across Qualifier Groups, the process begins attaching groups using grouping numbers incremented from the highest existing grouping number.
The following tables show examples of how the process sets the grouping numbers when you use each option.
The following table shows the qualifier groups for this example. It presents the qualifiers grouped by each qualifier group:
Table: Selected Qualifier Groups
Qualifier Group 
Qualifier 
Qualifier Grouping Number 
G1 
Q1 
G1 
Q2 
G1 
Q3 
G1 
Q4 
Null 
Null 
Null 
G2 
Q5 
G2 
Q6 
G2 
Q7 
Null 
Null 
Null 
G3 
Q8 
G3 
Q9 
G3 
Q10 

The grouping numbers within group G1, for example, create the qualification that the entity qualifies if it meets condition Q1 OR (condition Q2 AND condition Q3) OR condition Q4.
The following table shows the attached qualifiers when you select the option Retain Grouping Numbers Across Qualifier Groups. It presents the qualifiers grouped by each qualifier grouping number to highlight that it does not retain the original qualifier group relationships:
Table: Option: Retain Grouping Numbers Across Qualifier Groups
Qualifier Group 
Qualifier 
Qualifier Grouping Number 
G1 
Q1 
G2 
Q5 
G2 
Q6 
G2 
Q7 
G3 
Q8 
Null 
Null 
Null 
G1 
Q2 
G1 
Q3 
G3 
Q9 
Null 
Null 
Null 
G1 
Q4 
G3 
Q10 

The following table shows the attached qualifiers when you select the option Retain Grouping Numbers Across Qualifier Groups. It presents the qualifiers grouped by each qualifier group to highlight that it does retain the original qualifier group relationships:
Table: Option: Generate Unique Grouping Numbers Across Qualifier Groups
Qualifier Group 
Qualifier 
Qualifier Grouping Number 
G1 
Q1 
G1 
Q2 
G1 
Q3 
G1 
Q4 
Null 
Null 
Null 
G2 
Q5 
4 (3 + 1) 
G2 
Q6 
4 (3 + 1) 
G2 
Q7 
4 (3 + 1) 
Null 
Null 
Null 
G3 
Q8 
5 (4 + 1) 
G3 
Q9 
6 (4 + 2) 
G3 
Q10 
7 (4 + 3) 

Cross Order Volume

You can provide extra benefits to a customer after they place a certain amount of business with you. The cross order volume feature allows you to create modifiers that are qualified across an accumulation of orders and applied when a customer meets certain volume levels. It accumulates and sums order amount, item quantity, and item amount across the orders of each customer.
Cross Order Volume Profile Options
To use cross order volumes, set up periods in the following profile options:
    • QP: Cross Order Volume Period 1
    • QP: Cross Order Volume Period 2
    • QP: Cross Order Volume Period 3
Assign a default value to each profile option in unit of measure Days. For example, set the profile options as follows:
    • QP: Cross Order Volume Period 1: 30
    • QP: Cross Order Volume Period 2: 60
    • QP: Cross Order Volume Period 3: 90
Cross Order Volume Load
Run the concurrent process Cross Order Volume Load to populate the cross order volume tables. The qualifier and pricing attribute sourcing functions determine the cross order volumes for a customers and customer-item combinations.
To run the process:
  • Select the process to execute either for a single operating unit or for all operating units.
  • Provide the load effective date; otherwise the process uses the current date. It uses the cross order volume profile options to determine the order lines included in the cross order volumes.
For example:
    • Profile option QP: Cross Order Volume Period 1: 30
    • Profile option QP: Cross Order Volume Period 2: 60
    • Profile option QP: Cross Order Volume Period 3: 90
    • Concurrent process Cross Order Volume Load, Effective Date: 31-December
    • Cross order period 1: Order lines with request date between 1-December and 31-December
    • Cross order period 2: Order lines with request date between 1-November and 31-December-2000
    • Cross order period 3: Order lines with request date between 2-October and 31-December-2000
The Cross Order Volume Load concurrent process has been coded so the qualifier and pricing attribute sourcing functions determine the cross order volumes for a customer and customer-item combinations. The Cross Order Volume Load considers only orders and order lines in Booked status. The Cross Order Volume Load does not look at returned or cancelled order lines.
The information in the cross order volume tables is only as current as when the last Cross Order Volume Load concurrent process was run. As orders continued to be booked the concurrent process will need to be executed to include this information. Your business processes should dictate how often these tables need to be loaded with more current information.
The pricing engine calculates the Cross Order/Item Amounts using the List Price on the Order Line not the Selling Price, this is consistent with the calculation of all non-Cross Order Amount based Qualifiers/Pricing Attributes.
The cross order loader calculates the order total and item amount in the currency that is in the set of books. For example, if your set of books is in USD (dollars) and you also have orders in Japanese Yen, the Cross Order Amounts are calculated and summed in USD. The value of the order in Japanese Yen is converted to USD by the cross order loader before including the value in the total amount.
When an order is input as Japanese Yen, and the engine is pricing in Japanese Yen, in an Organization where the Set of Books currency was USD, the seeded sourcing APIs for the Cross Order Amount qualifiers convert the total Cross Order Amount in USD to Japanese Yen.
The pricing engine accumulates all Cross Order totals for an Organization, but it does not summarize across Organizations. The pricing engine only takes into account the orders that a customer has placed with each Sales Organization, and does not consider orders that the customer placed with other Sales Organizations. When running the Cross Order Volume Loader, if you specify an organization, it runs the load for that organization; if you leave it null, it will summarize for all organizations for which there are orders (assuming a multi-org install). Even if it is loading for multiple organizations, each summary is still within each organization.
When performing currency conversions in the Cross Order Volume Loader or Sourcing APIs, the engine performs the conversion using the order header currency conversion rate in Oracle Order Management. If the order header has no currency conversion rate, the pricing engine determines the conversion rate from the rates defined in Oracle General Ledger.
When you have different units of measure (UOM) for orders, the Cross Order Volume Loader converts from the ordered UOM to the Oracle Inventory primary UOM. In the cross order tables, the item quantity is always the primary UOM of the Item. When the pricing engine sources a Cross Order Quantity for an item, the seeded sourcing API converts the Cross Order Item Quantity from the primary UOM to the Ordered UOM and the pricing engine then converts the Cross Order Item Quantity from the Ordered UOM to the Pricing UOM.
If the pricing engine cannot find a UOM conversion rate for an item to convert from the Ordered UOM to the Primary UOM, the engine returns an Error Message in the Cross Order Loader log file. In this case the total Cross Order Quantity for this item will be incorrect.
Cross Order Volume Modifiers
You set up cross order modifiers by using cross order qualifiers or volume attributes.
Seeded cross order qualifiers are:
  • Context: Volume
  • Qualifier Attributes:
  • PERIOD1_ORDER_AMOUNT
  • PERIOD2_ORDER_AMOUNT
  • PERIOD3_ORDER_AMOUNT
You use this qualifier attribute if you want your modifier to be qualified based on the total order amount for the period specified in the profile option. You can set up these qualifiers at the modifier list level or line level.
For example, set up the modifier with a list level qualifier as follows:
  • Context: Volume
  • Qualifier Attributes: PERIOD1_ORDER_AMOUNT
  • Operator: Between
  • Value From: 10000
  • Value To: 49999
At order entry time, information is sent to the pricing engine. For example, the pricing engine determines if this customer is eligible to receive this modifier. The engine compares the Qualifier attribute value of 10,000 against the total order amount for this customer in the cross order volume tables. If the total order amount in the cross order volume tables is between 10,000 and 49,999, the order line is eligible to receive the modifier and the pricing engine applies this modifier.
You can use the cross order qualifiers with any modifier list or line type.
Note: Since the cross order volume load sourcing does not add the current order amount to the Cross Order Amount, you could also use the Cross Order Amount qualifiers to qualify a Price List.
Seeded cross order item attributes are:
  • PERIOD1_ITEM_AMOUNT
  • PERIOD2_ITEM_AMOUNT
  • PERIOD3_ITEM_AMOUNT
  • PERIOD1_ITEM_QUANTITY
  • PERIOD2_ITEM_QUANTITY
  • PERIOD3_ITEM_QUANTITY
You use the volume attribute if you want your modifier to be applied based on the item amount or item quantity for the period specified in the profile option. This volume attribute is setup on the modifier line in the volume type field. For example:
  • Product Attribute: Item Number
  • Product Attribute Value: Item A
  • Volume Type: Period 1 Item Quantity
  • Break Type: Point
  • Operator: Between
  • UOM: EA
  • Value From: 100
  • Value To: 999
  • Application Method: Percent
  • Value: 10
At order entry time, information is sent to pricing engine. The engine determines if this customer is eligible to receive this modifier. The engine compares the volume attribute value of 100 against the total item quantity for this customer-item in the cross order volume tables. If the total item quantity in the cross order volume tables is between 100 and 999, the order line is eligible to receive the modifier and the engine applies this modifier.
There are restrictions by modifier line type with the use of the cross order volume attributes:
    • You can use cross order volume attributes with any line type as a single line break.
    • You can use cross order volume attributes with modifier line type Price Break, thus you can create multiple level breaks and apply a discount or a surcharge based upon the tier level that is met.
Note: It is critical that the Cross Order Volume Period profile options be setup prior to the cross order qualifier and volume attribute use in setting up modifiers. There is no system validation during modifier setup between the Cross Order Volume Period profile options and the cross order qualifiers and volume attributes. Thus it is possible for a user to define a modifier with the cross order qualifier and volume and this modifier fail and not be applied at order execution. There is not an error message given to the user that notifies of this failure, the modifier just isn't applied.
Cross Order Volume Report
Run the Cross Order Volume Report to view the information in the cross order volume tables. The report displays the total order amount, total item amounts and total item quantities for each customer and period.
Note: The cross order volume loader only accumulates orders for items in the Cross Order Item Amount/Quantity Summary that have modifiers using the cross order volume attributes. Similarly the engine only gives total Cross Order summaries if a Cross Order qualifier has been used in a modifier. Therefore it necessary to run the cross order volume concurrent request after you setup any modifiers using either (a) a Cross Order Amount Qualifier that has not been used previously or (b) a Cross Order Item Amount/Quantity Pricing Attribute for an item that has not been used previously. This is to ensure that all items totals are accumulated and loaded into the cross order tables.