Chapter 85: E-Commerce Promotional Pricing

Purpose: The Promotional Pricing job, started through the Working with Integration Layer Processes (IJCT) menu option, allows you to offer promotional pricing on the web storefront.

Promotional pricing allows you to promote one or more incentive items at a special price, at a discount off the regular price, or at no charge, if the customer meets the eligibility requirements.

Examples of promotional pricing:

• Buy any two different items from group 100, receive 50% off the third

• Spend over $50.00 and receive item AB100 at no charge

• Buy item BB100, receive an item from group 200 for $5.00

• Buy item CC100, receive $10.00 off another unit of item CC100

You define promotional pricing using the Work with Promotional Pricing (WPRP) menu option.

In this chapter:

E-Commerce Promotional Pricing Flow

Promotional Pricing Example -- Requesting Promotional Pricing as Items are Added to Shopping Cart

Promotional Pricing Example -- Requesting Promotional Pricing Prior to Checkout

Promotional Pricing Request Message (CWPromotionalRequest)

Promotional Pricing Response Message (CWPromotionalResponse)

Promotional Pricing Messages: Sample XMLs

E-Commerce Promotional Pricing Flow

1. On the web storefront, a customer browses and places items in the shopping cart.

2. Before the check out process occurs on the web storefront, the web storefront sends a Promotional Pricing Request Message (CWPromotionalRequest) to the inbound queue defined for the PROMOTION job in the Working with Integration Layer Processes (IJCT) menu option to determine if the customer is eligible for any promotional pricing.

3. CWDirect determines if the data in the CWPromotionalRequest message is valid. The system validates that the message contains a source code or offer code, an item/SKU and quantity.

Determining the item/SKU: The system uses the following hierarchy to determine the item/SKU in the CWPromotionalRequest message:

• Use the item_id and sku.

• If an item_id and sku are not defined, use the short_sku_number.

• If an item_id and sku and short_sku_number are not defined, use the alias_item.

Possible errors: If the CWPromotionalRequest message contains an error, the system sends the Promotional Pricing Response Message (CWPromotionalResponse) back to the web storefront with the errors field set to Y and the nbr_eligible_ field set to 0, indicating an error occurred. Note: The CWPromotionalResponse message does not indicate the specific error that occurred. The following errors may occur:

Promo pricing (Promotional pricing) field for the source_code in the CWPromotionalRequest message is set to N.

• The external_reference_nbr in the CWPromotionalRequest message is blank.

• The company_code in the CWPromotionalRequest message is blank or is not a valid CWDirect company code.

• The source_code in the CWPromotionalRequest message is not a valid CWDirect source code.

• The offer_id in the CWPromotionalRequest message is not a valid CWDirect offer code.

• Both the source_code and offer_id in the CWPromotionalRequest message are either blank or invalid; a valid source code or offer must be defined.

• The item_id in the CWPromotionalRequest message is not a valid CWDirect item.

• The sku in the CWPromotionalRequest message is not a valid CWDirect SKU code for the specified item.

• The short_sku_number in the CWPromotionalRequest message is not a valid short SKU number for a CWDirect item. Note: The system only looks at the short_sku_number if an item_id is not included in the message.

• The alias_item in the CWPromotionalRequest message contains a value, but the line_offer_id and offer_id in the message are both blank or invalid. Note: The system only looks at the alias_item if the item_id and short_sku_number are not included in the message.

• The alias_item in the CWPromotionalRequest message is not a valid alias for an item in the offer specified in the line_offer_id or offer_id. Note: The system only looks at the alias_item if the item_id and short_sku_number are not included in the message.

• The order_quantity in the CWPromotionalRequest message is blank, 0 or a negative number.

4. CWDirect uses the following information in the Promotional Pricing Request Message (CWPromotionalRequest) to determine if any promotional pricing, as defined in Work with Promotional Pricing (WPRP), is eligible for the order:

source_code or offer_id

merch_total

item_id and sku, or short_sku_number, or line_offer_id and alias_item

order_quantity

CWDirect uses the same processing as in interactive order entry to determine if a web order qualifies for promotional pricing, except the system does not evaluate the Upsell windows field for the order type on the web order. A web order qualifies for promotional pricing when:

• A promotion has been defined for the source_code or offer_id in the CWPromotionalRequest message, and

• The Promo pricing (Promotional pricing) field for the source_code in the CWPromotionalRequest message contains a Y, and

• The web order is eligible for promotional pricing, based on the information in the Promotional Pricing Request Message (CWPromotionalRequest):

• An item in the CWPromotionalRequest message meets the required quantity of the item in a promotion, or

• The merchandise total in the CWPromotionalRequest message meets the dollars required for a promotion, or

• The items in the CWPromotionalRequest message meet the required quantity for a promotion pricing group defined for a promotion.

4. CWDirect sends a Promotional Pricing Response Message (CWPromotionalResponse) back to the web storefront, defining the promotional pricing that is eligible for the web order. The system uses either the external_reference_nbr in the request or the associated MQ message ID to correlate the message request to the message response.

• If the web order qualifies for promotional pricing, the CWPromotionalResponse message contains all of the promotional pricing that is eligible to apply to the web order, in the sequence in which the promotions would be applied to the order in interactive order entry. You must configure your web storefront if you want to include any logic in determining which promotions are applied to a web order; otherwise, the system applies all eligible promotions to the web order. Note: When you add the promotional pricing items to the web order, the items should be added to the web order with a price override reason code so that CWDirect does not attempt to reprice the items that were offered as part of promotional pricing.

• If the web order does not qualify for promotional pricing, the nbr_eligible_promotions tag in the CWPromotionalResponse message is 0.

• If the CWPromotionalRequest message contained an error, the errors tag in the CWPromotionalResponse message is Y and the nbr_eligible_promotions tag is 0.

E-Commerce Promotional Pricing Illustration:

When to request promotional pricing? You can configure your web storefront to send a CWPromotionalRequest message to CWDirect each time an item is added to the customer’s shopping cart and/or just prior to the customer checking out the web order (before sending the CWCreateOrder or CWOrderIn message to CWDirect).

However, if you send the CWPromotionalRequest message each time the customer adds an item to the shopping cart, you must decide whether to send all items in the shopping cart in the CWPromotionalRequest message or only those items that have not yet qualified for a promotion.

• If you send all items in the shopping cart in the CWPromotionalRequest message, and an item has already qualified for a promotion, the item will requalify for the promotion because CWDirect does not know that the CWPromotionalRequest message is for the same web order. You must configure your web storefront to keep track of the promotional pricing that has already been applied to the web order.

• If you only send those items that have not yet qualified for a promotion in the CWPromotionalRequest message, and you use Order/Dollar promotional pricing (O promotion type), you should include the dollar amount of all items in the shopping cart in the merchandise total sent in the CWPromotionalRequest message so that the web order can qualify for any Order/Dollar type promotions based on the merchandise total for all of the items in the shopping cart and not just the merchandise total for the items included in the CWPromotionalRequest message.

• If you use Group promotional pricing (G promotion type), you should always send all items in the shopping cart in the CWPromotionalRequest message so that the web order can qualify for any Group promotions based on the group of items already ordered.

See Promotional Pricing Example -- Requesting Promotional Pricing as Items are Added to Shopping Cart and Promotional Pricing Example -- Requesting Promotional Pricing Prior to Checkout for examples of how e-commerce promotional pricing works, based on when you request promotional pricing on your web storefront.

Downloading promotional pricing to the web: You can download promotional pricing information to the e-commerce staging library by entering Y in the Promotion pricing field on the Process E-Commerce Downloads Screen.

Downloading promotional pricing information allows you to perform some level of qualification before sending a Promotional Pricing Request Message (CWPromotionalRequest) to CWDirect. For example, if the customer is ordering from an offer or source code that does not have promotional pricing defined, it would not be necessary to send a CWPromotionalRequest message to CWDirect.

For more information: See:

Promotional Pricing Example -- Requesting Promotional Pricing as Items are Added to Shopping Cart

Promotional Pricing Example -- Requesting Promotional Pricing Prior to Checkout

Promotional Pricing Request Message (CWPromotionalRequest)

Promotional Pricing Response Message (CWPromotionalResponse)

Work with Promotional Pricing Groups (WPRG)

Work with Promotional Pricing (WPRP)

Promotional Pricing Example -- Requesting Promotional Pricing as Items are Added to Shopping Cart

Purpose: In this example the web storefront sends a CWPromotionalRequest message each time the customer adds an item to the shopping cart.

The following promotions exist in Work with Promotional Pricing (WPRP):

Promotion

Promotion Requirements

Incentive Information

Buy any two different items from group 100, and receive 10% off an item from group 200

Promotion ID: A

Source code: 2006

Type of promotion: G (Group)

Qty required: 2

Required group: 100

Group 100 contains items:

• 206IT2

• 206IT3

• 206SK1 RED

Type of incentive: G (Group)

Qty limit: 1

Incentive group: 200

Incentive disc %: 10.00

Group 200 contains items:

• PRM1

• PRM2

Buy item 206IT1 and receive another 206IT1 for a penny

Promotion ID: B

Offer number: 206

Type of promotion: I (Item)

Required item: 206IT1

Qty required: 1

Type of incentive: I (Item)

Incentive item: 206IT1

Qty limit: 1

Incentive price: .01

1. A customer on the web storefront adds item VCS10P to the shopping cart for 45.00. The web storefront sends a CWPromotionalRequest message to CWDirect:

 

 

<Message source="IDC" target="RDC" type="CWPROMOTIONALREQUEST">

<PromotionalHeader company_code="555" external_reference_nbr="5551" source_code="2006" offer_id="206" merch_total="4500">

<PromotionalItem item_id="VCS10P" order_quantity="1" />

</PromotionalHeader>

</Message>

 

2. CWDirect receives the CWPromotionalRequest message and determines that the web order does not qualify for any promotional pricing.

CWDirect sends the CWPromotionalResponse message back to the web storefront indicating the web order does not qualify for any promotional pricing.

 

<Message source="CWDirect" target="Web" type="CWPromotionalResponse" date_created="2006-04-26" time_created="11:17:16">

<Header company_code="555" external_reference_nbr="00005551" errors="N" nbr_eligible_promotions="0" />

</Message>

 

3. The customer’s shopping cart contains the following items.

Shopping Cart

Item

Quantity

Price

Price Override Reason

VCS10P

1

45.00

 

Merchandise total:

45.00

 

4. The customer adds item 206IT1 to the shopping cart for 165.00. The web storefront sends a CWPromotionalRequest message to CWDirect. The message contains items VCS10P and 206IT1. The message includes item VCS10P because it has not yet qualified for a promotion.

 

 

<Message source="IDC" target="RDC" type="CWPROMOTIONALREQUEST">

<PromotionalHeader company_code="555" external_reference_nbr="5551" source_code="2006" offer_id="206" merch_total="21000">

<PromotionalItem item_id="VCS10P" order_quantity="1" />

<PromotionalItem item_id="206IT1" order_quantity="1" />

</PromotionalHeader>

</Message>

 

5. CWDirect receives the CWPromotionalRequest message and determines that the web order qualifies for promotion B: Buy item 206IT1 and receive another 206IT1 for a penny.

CWDirect sends the CWPromotionalResponse message back to the web storefront indicating the web order qualifies for promotion B.

 

<Message source="CWDirect" target="Web" type="CWPromotionalResponse" date_created="2006-04-26" time_created="11:28:14">

<Header company_code="555" external_reference_nbr="00005551" errors="N" nbr_eligible_promotions="001">

<Promotions>

<Promotion promotion_id="B" qualifying_offer="206" qualifying_qty="00001" incentive_type="I" qty_eligible="00001">

<QualifyingItems>

<QualifyingItem qualifying_item_id="206IT1" qualifying_item_desc="206IT1 DESCRIPTION" qualifying_short_sku="0001925" qualifying_alias_item="A206IT1" />

</QualifyingItems>

<IncentiveItems>

<IncentiveItem incentive_item_id="206IT1" incentive_item_desc="206IT1 DESCRIPTION" incentive_short_sku="0001925" incentive_alias_item="A206IT1" incentive_price="0000001" offer_price="0016500" />

</IncentiveItems>

</Promotion>

</Promotions>

</Header>

</Message>

 

6. The customer decides to purchase item 206IT1 for a penny. The web storefront adds promotional item 206IT1 to the customer’s shopping cart for a price of .01 and a price override reason code.

7. The customer’s shopping cart now contains the following items, based on the promotional pricing applied to the web order.

Shopping Cart

Item

Quantity

Price

Price Override Reason

VCS10P

1

45.00

 

206IT1

1

165.00

 

206IT1

1

.01

P (Promotional Priced Line)

Merchandise total:

210.01

 

8. The customer adds item 206IT2 to the shopping cart for 76.00. The web storefront sends a CWPromotionalRequest message to CWDirect. The message contains items VCS10P and 206IT2. The message includes item VCS10P because it has not yet qualified for a promotion.

Note: The message does not contain item 206IT1 because promotion B has already been applied to the item. If item 206IT1 was resent in the CWPromotionalRequest message, the item would requalify for promotion B because CWDirect does not know that the CWPromotionalRequest message is for the same web order. However, if you use Order/Dollar type promotions (O promotion type), the dollar amount for item 206IT1 should be included in the merch_total tag of the CWPromotionalRequest message so that the web order can qualify for any Order/Dollar type promotions.

 

<Message source="IDC" target="RDC" type="CWPROMOTIONALREQUEST">

<PromotionalHeader company_code="555" external_reference_nbr="5551" source_code="2006" offer_id="206" merch_total="28601">

<PromotionalItem item_id="VCS10P" order_quantity="1" />

<PromotionalItem2 item_id="206IT2" order_quantity="1" />

</PromotionalHeader>

</Message>

 

9. CWDirect receives the CWPromotionalRequest message and determines that the web order does not qualify for any promotional pricing.

CWDirect sends the CWPromotionalResponse message back to the web storefront indicating the web order does not qualify for any promotional pricing.

 

<Message source="CWDirect" target="Web" type="CWPromotionalResponse" date_created="2006-04-26" time_created="11:49:06">

<Header company_code="555" external_reference_nbr="00005551" errors="N" nbr_eligible_promotions="0" />

</Message>

 

10. The customer’s shopping cart contains the following items, based on the promotional pricing applied to the web order.

Shopping Cart

Item

Quantity

Price

Price Override Reason

VCS10P

1

45.00

 

206IT1

1

165.00

 

206IT1

1

.01

P (Promotional Priced Line)

206IT2

1

76.00

 

Merchandise total:

286.01

 

11. The customer adds item 206IT3 to the shopping cart for 80.00. The web storefront sends a CWPromotionalRequest message to CWDirect. The message contains items VCS10P, 206IT2, and 206IT3 because these items have not yet qualified for a promotion.

 

 

<Message source="IDC" target="RDC" type="CWPROMOTIONALREQUEST">

<PromotionalHeader company_code="555" external_reference_nbr="5551" source_code="2006" offer_id="206" merch_total="36601">

<PromotionalItem item_id="VCS10P" order_quantity="1" />

<PromotionalItem2 item_id="206IT2" order_quantity="1" />

<PromotionalItem3 item_id="206IT3" order_quantity="1" />

</PromotionalHeader>

</Message>

 

12. CWDirect receives the CWPromotionalRequest message and determines that the web order qualifies for promotion A: Buy any two different items from group 100, and receive 10% off an item from group 200.

CWDirect sends the CWPromotionalResponse message back to the web storefront indicating the web order qualifies for promotion A.

 

<Message source="CWDirect" target="Web" type="CWPromotionalResponse" date_created="2006-04-26" time_created="13:03:41">

<Header company_code="555" external_reference_nbr="00005551" errors="N" nbr_eligible_promotions="001">

<Promotions>

<Promotion promotion_id="A" qualifying_source="2006" qualifying_qty="00002" incentive_type="G" qty_eligible="00001" incentive_discount_pct="01000">

<QualifyingItems />

<IncentiveItems>

<IncentiveItem incentive_item_id="PRM1" incentive_item_desc="PRM1 ITEM DESCRIPTION" incentive_short_sku="0001956" incentive_price="0003000" offer_price="0003300" />

<IncentiveItem incentive_item_id="PRM2" incentive_item_desc="PRM2 ITEM DESCRIPTION" incentive_short_sku="0001957" incentive_price="0003600" offer_price="0004000" />

</IncentiveItems>

</Promotion>

</Promotions>

</Header>

</Message>

 

13. The customer decides to purchase promotional item PRM2 for 36.00. The web storefront adds the item to the customer’s shopping cart for a price of 36.00 and a price override reason code.

14. The customer’s shopping cart contains the following items, based on the promotional pricing applied to the web order.

Shopping Cart

Item

Quantity

Price

Price Override Reason

VCS10P

1

45.00

 

206IT1

1

165.00

 

206IT1

1

.01

P (Promotional Priced Line)

206IT2

1

76.00

 

206IT3

1

80.00

 

PRM2

1

36.00

P (Promotional Priced Line)

Merchandise total:

402.01

 

Promotional Pricing Example -- Requesting Promotional Pricing Prior to Checkout

Purpose: In this example the web storefront sends a CWPromotionalRequest message after the customer has added all items to the shopping cart and is ready to check out, but before the web storefront sends the CWCreateOrder or CWOrderIn message to CWDirect.

The following promotions exist in Work with Promotional Pricing (WPRP):

Promotion

Promotion Requirements

Incentive Information

Buy any two different items from group 100, and receive 10% off an item from group 200

Promotion ID: A

Source code: 2006

Type of promotion: G (Group)

Qty required: 2

Required group: 100

Group 100 contains items:

• 206IT2

• 206IT3

• 206SK1 RED

Type of incentive: G (Group)

Qty limit: 1

Incentive group: 200

Incentive disc %: 10.00

Group 200 contains items:

• PRM1

• PRM2

Buy item 206IT1 and receive another 206IT1 for a penny

Promotion ID: B

Offer number: 206

Type of promotion: I (Item)

Required item: 206IT1

Qty required: 1

Type of incentive: I (Item)

Incentive item: 206IT1

Qty limit: 1

Incentive price: .01

1. A customer on the web storefront adds items VCS10P, 206IT1, 206IT2, and 206IT3 to the shopping cart for 366.00.

Shopping Cart

Item

Quantity

Price

Price Override Reason

VCS10P

1

45.00

 

206IT1

1

165.00

 

206IT2

1

76.00

 

206IT3

1

80.00

 

Merchandise total:

366.00

 

2. The web storefront sends a CWPromotionalRequest message to CWDirect:

 

 

<Message source="IDC" target="RDC" type="CWPROMOTIONALREQUEST">

<PromotionalHeader company_code="555" external_reference_nbr="5551" source_code="2006" offer_id="206" merch_total="36600">

<PromotionalItem item_id="VCS10P" order_quantity="1" />

<PromotionalItem2 item_id="206IT1" order_quantity="1" />

<PromotionalItem3 item_id="206IT2" order_quantity="1" />

<PromotionalItem4 item_id="206IT3" order_quantity="1" />

</PromotionalHeader>

</Message>

 

3. CWDirect receives the CWPromotionalRequest message and determines that the web order qualifies for the following promotions:

• promotion A: Buy any two different items from group 100, and receive 10% off an item from group 200

• promotion B: Buy item 206IT1 and receive another 206IT1 for a penny

CWDirect sends the CWPromotionalResponse message back to the web storefront indicating the web order qualifies for promotions A and B.

 

<Message source="CWDirect" target="Web" type="CWPromotionalResponse" date_created="2006-04-26" time_created="15:16:42">

<Header company_code="555" external_reference_nbr="00005551" errors="N" nbr_eligible_promotions="002">

<Promotions>

<Promotion promotion_id="A" qualifying_source="2006" qualifying_qty="00002" incentive_type="G" qty_eligible="00001" incentive_discount_pct="01000">

<QualifyingItems />

<IncentiveItems>

<IncentiveItem incentive_item_id="PRM1" incentive_item_desc="PRM1 ITEM DESCRIPTION" incentive_short_sku="0001956" incentive_price="0003000" offer_price="0003300" />

<IncentiveItem incentive_item_id="PRM2" incentive_item_desc="PRM2 ITEM DESCRIPTION" incentive_short_sku="0001957" incentive_price="0003600" offer_price="0004000" />

</IncentiveItems>

</Promotion>

<Promotion promotion_id="B" qualifying_offer="206" qualifying_qty="00001" incentive_type="I" qty_eligible="00001">

<QualifyingItems>

<QualifyingItem qualifying_item_id="206IT1" qualifying_item_desc="206IT1 DESCRIPTION" qualifying_short_sku="0001925" qualifying_alias_item="A206IT1" />

</QualifyingItems>

<IncentiveItems>

<IncentiveItem incentive_item_id="206IT1" incentive_item_desc="206IT1 DESCRIPTION" incentive_short_sku="0001925" incentive_alias_item="A206IT1" incentive_price="0000001" offer_price="0016500" />

</IncentiveItems>

</Promotion>

</Promotions>

</Header>

</Message>

 

4. The customer decides to purchase item 206IT1 for a penny and item PRM2 for 36.00. The web storefront adds the promotional items to the customer’s shopping cart for a price of 36.01 and a price override reason code.

The customer’s shopping cart contains the following items, based on the promotional pricing applied to the web order:

Shopping Cart

Item

Quantity

Price

Price Override Reason

VCS10P

1

45.00

 

206IT1

1

165.00

 

206IT2

1

76.00

 

206IT3

1

80.00

 

206IT1

1

.01

P (Promotional Priced Line)

PRM2

1

36.00

P (Promotional Priced Line)

Merchandise total:

402.01

 

SO10_09a CWDirect 18.0 August 2015 OTN