Sample Order Broker Messages

Overview: CWSerenade communicates with the Order Broker using Locate’s XML message formats. Sample request and response messages are presented below as background.

Key information included in each message is described below with the related sample.

Reviewing order information in Locate: You can use the Order Inquiry and Order screens in Locate to review brokered backorders or ship-to-store orders originating in CWSerenade, and retail pickup or delivery orders assigned to CWSerenade.

For more information: See Brokered Backorders, Retail Pickup or Delivery Orders, and Ship-to-Store Orders for information on when each message is generated or received.

Endpoint: The Locate Properties File indicates the endpoint where CWSerenade sends the messages.

Where are the messages logged? Based on the XML Logging setting at the Event Logging screen in Locate, messages can be logged in Locate’s XML log file. This file is typically located at C:\Locate\server\logs\xml.log, where C: is the root drive of your Locate application server. Logs from previous days are renamed with a date suffix in YYYY-MM-DD format (for example, xml.log.2012-08-27).

Message version: The Locate Properties File specifies the message version number for all request messages that CWSerenade sends to Locate, with the exception of the order update message used to change an order’s Under Review setting (see Order Update Request Sample (Changing the Under Review Setting for a Brokered Backorder or Store Pickup Order)). The version number must be set to 3.1 or higher if you use split order, and should be set to 5.0 or higher if you integrate with Locate 5.0 or higher. See Locate/CWSerenade Configuration (Order Broker) for background.

CWMessageRequest: See Email Request Message (CWEmailRequest) for background on the XML message you can use to trigger the store pickup notification email.

Sample messages:

Brokered Backorder Submit Order Request Message Sample

Store Pickup SubmitOrder Request Message Sample

Ship-to-Store Order Submit Order Request Message Sample

Submit Order Response Message Sample: Message Version 5.0 or higher

Submit Order Response Message Samples: Message Version 3.1 or 3.0

Submit Order Response Message Sample: Single Location (Message Version 3.1 or 3.0)

Submit Order Response Message Sample: Multiple Locations (Message Version 3.1 or 3.0)

Status Request Message Sample

Status Response Message Sample

Status List Request Message Sample (Retail Pickup or Delivery)

Status List Response Message Sample (Retail Pickup or Delivery)

Cancel Request Message Sample (Brokered Backorder or Store Pickup)

Cancel Response Message Sample

Fulfillment Request Message Sample (Retail Pickup or Delivery Orders)

Fulfillment Response Message Sample

Status Update Sample (Retail Pickup, Delivery, or Ship-to-Store Orders)

Order Update Request Sample (Changing the Under Review Setting for a Brokered Backorder or Store Pickup Order)

Order Update Response Sample

Brokered Backorder Submit Order Request Message Sample

Message contents: The BROKER process generates this message to request that the Order Broker find a location to fulfill one or more backordered order lines. Information passed to Locate includes:

datetime: from the system date and time. The Order Broker uses the current date as the order date when it creates the order.

version: from the Locate Properties File.

source: composed of the concatenated company, order number, and ship-to number, zero-filled and including five trailing zeroes. For example, a source of 0060000895300100000 indicates company 6, order 8953, ship-to 1. This information is passed back in the response messages so that CWSerenade can identify the order.

destination: from the Locate Account (K49).

transaction_type_id: DELIVERY

transaction_no: the order number, zero-filled, followed by the zero-filled ship-to number (for example, 0008953-001).

order_id: consisting of:

• the order number, not zero-filled.

• the ship-to number, zero-filled.

For example, 8953-001

ref_transaction_no: the purchase order number, if any.

transaction_date: from the system date and time. The Order Broker uses the current date as the order date when it creates the order.

employee_id: set to CWS

transaction_subtotal: the merchandise total of the brokered items included in the SubmitOrder message.

transaction_tax: includes the tax for the brokered items plus the prorated portion of any additional tax on the order, such as tax on freight or handling.

transaction_total: includes the total merchandise, tax, and the freight_amount passed for the brokered items.

transaction_status: set to new_order.

transaction_channel: set to 1

ship_via code from the order header and the associated ship via description.

gift flag. The Order Broker Include Gift Orders (K14) system control values controls whether to submit gift orders as brokered backorders.

source_code from the order header.

freight_amount: includes the total freight on the order, plus any additional charges on the order. This amount is not limited to the freight charges for the brokered backorder line(s); however, when the assigned location ships the item(s), the freight charges on the invoice reflect those of the brokered backorder line.

Note:

• Freight charges for the order are included in the message only if the Use Split Order (L56) system control value is selected.

• The order amounts in the message can include up to a 15-position decimal, although Locate rounds these decimals to 2 positions.

balance_due: Set to zero.

order_additional_freight_charges: The additional freight charges on the order, if any. Included only if the message version is 5.0 or higher.

order_additional_charges: The total additional charges on the order, if any. Included only if the message version is 5.0 or higher.

ship_complete: The setting of the Ship complete flag. Included only if the message version is 5.0 or higher.

freight_tax: The freight tax override, of any, from the Order Ship To table. See the Display Order Properties Screen for more information. Included only if the message version is 5.0 or higher.

order_message: Any order message lines for the Order Ship To with a flag of Print (P) or Both (B). Included only if the message version is 5.0 or higher.

gift_message: Any order message lines for the Order Ship To with a flag of Gift (G). Included only if the message version is 5.0 or higher.

under_review flag: Set to Y if the Send Held Orders to Locate (M18) system control value is selected and the order is held.

sold_to customer number: zero-padded.

sold_to customer name: includes company name, prefix, first, middle initial, last, and suffix.

sold_to customer address: includes address lines 1-4, apartment, city, state/province, postal code, order email address, day and evening phone numbers (unformatted), and the country code.

requesting location and system:

location_cd: from the Locate Default Location (K51) (regardless of the setting of the Send Inventory by Warehouse to Locate (L06) system control value).

system_cd: from the Locate System (Serenade) (K50).

for each backordered item included in the request message:

line_item_no: the order line sequence number. The sequence number might differ from the order line number displayed in order maintenance or order inquiry if, for example, you deleted one of the previous lines on the order.

item_id: the CWSerenade item/SKU code. The item and SKU code are concatenated, with blank spaces inserted after the item code so that the SKU code begins at position 13.

qty: the total backordered quantity to be fulfilled through the Order Broker.

unit_price: the single-unit price of the backordered item.

ship_to customer name and address: includes the same information as the sold-to customer, plus the Attention line, if any.

taxes: the total tax amount for the entire backordered quantity of the item. If there are multiple tax charges on the order line (for example, if there is GST and PST), then each tax amount is passed separately, and Locate adds them together to determine the total tax for the order line; the message also indicates the total in the transaction_tax at the header level.

order_line_extended_freight: the freight charges for the item. Included only when the order uses a line-level freight calculation, and if the message version is 5.0 or higher.

order_line_gift_wrap: set to N. Included only if the message version is 5.0 or higher.

order_line_ship_alone: set to Y if the item is flagged to ship alone; otherwise, set to N. Included only if the message version is 5.0 or higher.

order_line_ship_weight: the ship weight, if any, specified for the item. Included only if the message version is 5.0 or higher.

order_line_message: Any order line message lines for the item with a flag of Print (P) or Both (B). Included only if the message version is 5.0 or higher.

Not included: Information that is not passed includes:

• payment methods

• any order lines that are being fulfilled through the warehouse or drop shipment; are not flagged as Locate eligible; are soldout, canceled, or already shipped; or are non-inventory items.

• additional backordered lines, If the Use Split Order (L56) system control value is unselected; each backordered order line is submitted separately and creates a separate order in Locate. Otherwise, if the system control value is selected, the message includes all brokered backorders on the order.

• UPC or EAN numbers

Note: The message includes tags that are not used for brokered backorders, such as customization charges and instructions. These tags are empty, or set to 0 if they are numeric.

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">

<S:Body>

<ns2:SubmitOrder xmlns:ns2="http://microsretail.com/Locate">

<ns2:order_request_message>

<message_header message_type="SubmitOrder" xaction_response="1" xaction_type="INSERT">

<datetime>2015-02-23T10:45:19</datetime>

<version>5.0</version>

<source>0060001376000100000</source>

<destination>LOCATE</destination>

</message_header>

<message_body>

<transactions>

<transaction_header transaction_type_id="DELIVERY" transaction_no="00013760-001" request_id="" order_id="13760-001">

<ref_transaction_no></ref_transaction_no>

<transaction_date>2015-02-24T10:45:19</transaction_date>

<employee_id>CWS</employee_id>

<transaction_subtotal>20.0</transaction_subtotal>

<transaction_tax>1.3359999656677246</transaction_tax>

<transaction_total>25.715999603271484</transaction_total>

<special_instructions></special_instructions>

<transaction_status>new_order</transaction_status>

<transaction_channel>1</transaction_channel>

<ship_via>50</ship_via>

<ship_via_description>FEDERAL EXPRESS 2-DAY</ship_via_description>

<gift>N</gift>

<source_code>SOURCE</source_code>

<freight_amount>4.380000114440918</freight_amount>

<balance_due>0</balance_due>

<currency></currency>

<order_additional_freight_charges>4.72</order_additional_freight_charges>

<order_additional_charges>-2.34</order_additional_charges>

<ship_complete>N</ship_complete>

<freight_tax>0.00</freight_tax>

<order_message>Order message flagged P

Another order message flagged P</order_message>

<gift_message></gift_message>

<under_review></under_review>

<sold_to_customer customer_no="000000006">

<name>

<company_name>VAN VOORHIS CONSULTING</company_name>

<prefix>MR.</prefix>

<first>JAKE</first>

<middle>Q</middle>

<last>Van Voorhis</last>

<suffix>JR.</suffix>

</name>

<address>

<attention></attention>

<address1>257 Jake Street</address1>

<address2></address2>

<address3></address3>

<address4></address4>

<apt>SUITE 123</apt>

<city>WORCESTER</city>

<province>MA</province>

<postal>01606-0008</postal>

<email>ekaplan@commercialware.com</email>

<phone1>5085550114</phone1>

<phone2>5085550115</phone2>

<country>US</country>

</address>

</sold_to_customer>

<store_location location_cd="1" system_cd="6" />

<transaction_details>

<transaction_detail line_item_no="1">

<location_cd></location_cd>

<system_cd></system_cd>

<item_id>KABNOSKU </item_id>

<qty>2</qty>

<unit_price>10.0</unit_price>

<ship_to>

<name>

<company_name>VAN VOORHIS CONSULTING</company_name>

<prefix>MR.</prefix>

<first>JAKE</first>

<middle>Q</middle>

<last>Van Voorhis</last>

<suffix>JR.</suffix>

</name>

<address>

<attention></attention>

<address1>257 Jake Street</address1>

<address2></address2>

<address3></address3>

<address4></address4>

<apt>SUITE 123</apt>

<city>WORCESTER</city>

<province>MA</province>

<postal>01602-0008</postal>

<email>ekaplan@example.com</email>

<phone1>5085550119</phone1>

<phone2>5085550120</phone2>

<country>US</country>

</address>

</ship_to>

<taxes>

<tax description="Tax" line_item_no="1">

<amount>1.00000</amount>

</tax>

</taxes>

<line_item_status>new_order</line_item_status>

<special_instructions></special_instructions>

<shipping_agent></shipping_agent>

<tracking_number></tracking_number>

<item_upc_cd></item_upc_cd>

<item_ean_cd></item_ean_cd>

<order_line_extended_freight>0.00</order_line_extended_freight>

<order_line_customization_charge>0.00</order_line_customization_charge>

<order_line_gift_wrap>N</order_line_gift_wrap>

<order_line_ship_alone>N</order_line_ship_alone>

<order_line_ship_weight>1.110</order_line_ship_weight>

<order_line_message>Order line message flagged P

Another order line message flagged P</order_line_message>

<customizations />

</transaction_detail>

</transaction_details>

</transaction_header>

</transactions>

</message_body>

</ns2:order_request_message>

</ns2:SubmitOrder>

</S:Body>

</S:Envelope>

Store Pickup SubmitOrder Request Message Sample

Message contents: The BROKER process generates this message to the Order Broker as notification that the customer would like to pick up the order at the store location indicated. The information passed includes:

datetime: from the system date and time. The Order Broker uses the current date as the order date when it creates the order.

version: from the Locate Properties File.

source: composed of the concatenated company, order number, and ship-to number, zero-filled and including five trailing zeroes. For example, a source of 0060000895300100000 indicates company 6, order 8953, ship-to 1. This information is passed back in the response messages so that CWSerenade can identify the order.

destination: from the Locate Account (K49).

transaction_type_id: PICKUP

transaction_no: the order number, zero-filled, followed by the zero-filled ship-to number (for example, 0008953-001).

order ID: consisting of:

• the order number, not zero-filled.

• the ship-to number, zero-filled.

For example, 8953-001

transaction_date: from the system date and time. The Order Broker uses the current date as the order date when it creates the order.

employee_id: set to CWS

transaction_subtotal: the merchandise total of the items on the order.

transaction_tax: the total tax amount for the order.

transaction_total: the total merchandise, tax, freight, and handling for the order.

transaction_channel: set to 1

ship_via code from the order header and the associated ship via description.

source_code from the order header.

freight_amount: includes the total freight on the order, if any, plus any additional charges.

Note: The order amounts in the message can include up to a 15-position decimal, although Locate rounds these decimals to 2 positions.

balance_due: If the Payment at POS for Store Pickup (M16) system control value is selected, this is the order total; otherwise, it is zero.

order_additional_freight_charges: The additional freight charges on the order, if any. Included only if the message version is 5.0 or higher.

order_additional_charges: The total additional charges on the order, if any. Included only if the message version is 5.0 or higher.

freight_tax: The freight tax override, of any, from the Order Ship To table. See the Display Order Properties Screen for more information. Included only if the message version is 5.0 or higher.

order_message: Any order message lines for the Order Ship To with a flag of Print (P) or Both (B). Included only if the message version is 5.0 or higher.

under _review flag: Set to Y if the order is held and if the Payment at POS for Store Pickup (M16) system control value is unselected.

sold_to customer_no: zero-padded.

sold_to_customer name: includes company name, prefix, first, middle initial, last, and suffix.

sold_to_customer address: includes address lines 1-4, apartment, city, state/province, postal code, order email address, day and evening phone numbers (unformatted), and the country code.

requesting location and system:

location_cd: from the Locate Default Location (K51) (regardless of the setting of the Send Inventory by Warehouse to Locate (L06) system control value).

system_cd: from the Locate System (Serenade) (K50).

for each item to be picked up at the store:

line_item_no: the order line sequence number. The sequence number might differ from the order line number displayed in order maintenance or order inquiry if, for example, you deleted one of the previous lines on the order.

location_cd: the location, selected at the Store Pickup Search Results Screen, where the customer wants to pick up the order.

system_cd: The code identifying your POS system, from the System Code, if any, for the Store Cross Reference record; otherwise, from the System Name in Locate for Point of Sale (L09).

item_id: the CWSerenade item/SKU code. The item and SKU code are concatenated, with blank spaces inserted after the item code so that the SKU code begins at position 13.

qty: the total to be picked up.

unit_price: the single-unit price of the item to be picked up.

ship_to customer name and address (repeated for each item): The ship-to name and address indicates the store location where the customer picks up the order. The information passed includes the company name, address lines 1-4, city, state, postal code, and country defaulted from the Store Cross Reference record for the selected location. The ship-to information can also include the ship-to name, attention line, or apartment and suite, that does not default from the Store Cross Reference record.

taxes: the total tax amount for the entire quantity of the backordered item.If there are multiple tax charges on the order line (for example, if there is GST and PST), then each tax amount is passed separately, and Locate adds them together to determine the total tax for the order line; the message also indicates the total in the transaction_tax at the header level.

order_line_extended_freight: The freight charges for the item. Included only when the order uses a line-level freight calculation, and if the message version is 5.0 or higher.

order_line_ship_weight: The ship weight, if any, specified for the item. Included only if the message version is 5.0 or higher.

order_line_message: Any order line message lines for the item with a flag of Print (P) or Both (B). Included only if the message version is 5.0 or higher.

Not included: Information that is not passed includes:

• purchase order number

• payment methods

• any phone numbers or email address entered for the ship-to address

• UPC or EAN numbers

• other tags in the SubmitOrder message, such as gift messages, the ship complete flag, and the ship alone flag, which do not apply to store pickup orders

Note: Locate does not retain the ship-to address for a store pickup order.

 

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">

<S:Body>

<ns2:SubmitOrder xmlns:ns2="http://microsretail.com/Locate">

<ns2:order_request_message>

<message_header message_type="SubmitOrder" xaction_response="1" xaction_type="INSERT">

<datetime>2015-02-24T10:23:20</datetime>

<version>5.0</version>

<source>0060001376100100000</source>

<destination>LOCATE</destination>

</message_header>

<message_body>

<transactions>

<transaction_header transaction_type_id="PICKUP" transaction_no="00013761-001" request_id="" order_id="13761-001">

<ref_transaction_no></ref_transaction_no>

<transaction_date>2015-02-24T10:23:20</transaction_date>

<employee_id>CWS</employee_id>

<transaction_subtotal>20.00</transaction_subtotal>

<transaction_tax>1.0</transaction_tax>

<transaction_total>24.489999771118164</transaction_total>

<special_instructions></special_instructions>

<transaction_status>new_order</transaction_status>

<transaction_channel>1</transaction_channel>

<ship_via>50</ship_via>

<ship_via_description>FEDERAL EXPRESS 2-DAY</ship_via_description>

<gift>N</gift>

<source_code>PROMOS</source_code>

<freight_amount>3.490000009536743</freight_amount>

<balance_due>24.489999771118164</balance_due>

<currency></currency>

<order_additional_freight_charges>4.72</order_additional_freight_charges>

<order_additional_charges>-1.23</order_additional_charges>

<ship_complete>N</ship_complete>

<freight_tax>0.00</freight_tax>

<order_message>Order message flagged P

Another order message flagged P</order_message>

<gift_message></gift_message>

<under_review></under_review>

<sold_to_customer customer_no="000000006">

<name>

<company_name>VAN VOORHIS CONSULTING</company_name>

<prefix>MR.</prefix>

<first>JAKE</first>

<middle>Q</middle>

<last>Van Voorhis</last>

<suffix>JR.</suffix>

</name>

<address>

<attention></attention>

<address1>257 Jake Street</address1>

<address2></address2>

<address3></address3>

<address4></address4>

<apt>SUITE 123</apt>

<city>WORCESTER</city>

<province>MA</province>

<postal>01602-0008</postal>

<email>ekaplan@commercialware.com</email>

<phone1>5085550121</phone1>

<phone2>5085550122</phone2>

<country>US</country>

</address>

</sold_to_customer>

<store_location location_cd="1" system_cd="6" />

<transaction_details>

<transaction_detail line_item_no="1">

<location_cd>1234</location_cd>

<system_cd>STC_EZK</system_cd>

<item_id>KABNOSKU </item_id>

<qty>2</qty>

<unit_price>10.0</unit_price>

<ship_to>

<name>

<company_name>WORCESTER STORE</company_name>

<prefix></prefix>

<first></first>

<middle></middle>

<last></last>

<suffix></suffix>

</name>

<address>

<attention>MR. JAKE </attention>

<address1>1234 CHANDLER STREET</address1>

<address2></address2>

<address3></address3>

<address4></address4>

<apt></apt>

<city>WORCESTER</city>

<province>MA</province>

<postal>01699</postal>

<email></email>

<phone1>5085550123</phone1>

<phone2>5085550124</phone2>

<country>US</country>

</address>

</ship_to>

<taxes>

<tax description="Tax" line_item_no="1">

<amount>1.00000</amount>

</tax>

</taxes>

<line_item_status>new_order</line_item_status>

<special_instructions></special_instructions>

<shipping_agent></shipping_agent>

<tracking_number></tracking_number>

<item_upc_cd></item_upc_cd>

<item_ean_cd></item_ean_cd>

<order_line_extended_freight>0.00</order_line_extended_freight>

<order_line_customization_charge>0.00</order_line_customization_charge>

<order_line_gift_wrap>N</order_line_gift_wrap>

<order_line_ship_alone>N</order_line_ship_alone>

<order_line_ship_weight>1.110</order_line_ship_weight>

<order_line_message>Order line message flagged P

Another order line message flagged P</order_line_message>

<customizations />

</transaction_detail>

</transaction_details>

</transaction_header>

</transactions>

</message_body>

</ns2:order_request_message>

</ns2:SubmitOrder>

</S:Body>

</S:Envelope>

 

Ship-to-Store Order Submit Order Request Message Sample

Message contents: The pick slip generation job generates this message to the Order Broker as notification that the warehouse is sending a ship-to-store order, in order to notify the store location where the customer wants to pick up the order. The information passed is derived from the order, order ship-to, and pick slip. This information includes:

datetime: from the system date and time. The Order Broker uses the current date as the order date when it creates the order.

version: from the Locate Properties File.

source: composed of the concatenated company, order number, and ship-to number, zero-filled and including five trailing zeroes. For example, a source of 0060000895300100000 indicates company 6, order 8953, ship-to 1. This information is passed back in the response messages so that CWSerenade can identify the order.

destination: from the Locate Account (K49).

transaction_type_id: SHIPTOSTORE

transaction_no: the order number, zero-filled, followed by the zero-filled ship-to number (for example, 0008953-001).

order_id: consisting of:

• the order number, not zero-filled.

• the ship-to number, zero-filled.

For example, 8953-001

ref_transaction_no: the purchase order number, if any.

transaction_date: from the system date and time. The Order Broker uses the current date as the order date when it creates the order.

employee_id: set to CWS

transaction_subtotal: the merchandise total of the items included on the pick slip. Each pick slip for the order generates a separate SubmitOrder message to Locate.

Note: The totals include all items shipping on the pick slip, even if they are not flagged as Locate eligible. These items are not included in the transaction details sent to the Order Broker. As a result, the transaction details might not tie out evenly to the totals.

transaction_tax: the total amount of tax on the pick slip, including any items that are not flagged as Locate eligible, and also including tax on freight or handling. Does not include hidden tax.

transaction_total: the total on the pick slip, including merchandise, tax, freight, additional freight, additional charges, and special handling.

transaction_channel: set to 1

ship_via code for the pick slip and the associated ship_via_description.

gift: set to Y if the order is a gift; otherwise, set to N.

source_code from the order header.

freight_amount: includes the total freight, additional freight, handling, and additional charges for the pick slip. If you do not prorate freight and the order generates multiple pick slips, the total freight charges are included on the first pick slip.

balance_due: Indicates the total for the pick slip if the Payment at POS for Ship to Store (L60) system control value is selected; otherwise, set to zero.

Note: The order amounts in the message can include up to a 15-position decimal, although Locate rounds these decimals to 2 positions.

order_additional_freight_charges: The additional freight charges on the order, if any. Included only if the message version is 5.0 or higher.

order_additional_charges: The total additional charges on the order, if any. Included only if the message version is 5.0 or higher.

freight_tax: The freight tax override, of any, from the Order Ship To table. See the Display Order Properties Screen for more information. Included only if the message version is 5.0 or higher.

order_message: Any order message lines for the Order Ship To with a flag of Print (P) or Both (B). Included only if the message version is 5.0 or higher.

gift_message: Any order message lines for the Order Ship To with a flag of G (Gift). Included only if the message version is 5.0 or higher.

sold_to customer_no: zero-padded. If the order was placed by a customer with an individual, the individual number follows the customer number, separated by a hyphen (for example, 000013058-001).

sold_to customer name: includes company name, prefix, first, middle initial, last, and suffix.

sold_to customer address: includes address lines 1-4, apartment, city, state/province, postal code, order email address, day and evening phone numbers (unformatted), and the country code.

requesting location and system:

location_cd: from the Locate Default Location (K51) if the Send Inventory by Warehouse to Locate (L06) system control value is unselected or for a drop ship item; otherwise, from the Locate location from the warehouse associated with the order

Note: If you are generating ship-to-store orders for drop ship items, you need to specify a valid Locate location in the Locate Default Location (K51) system control value; otherwise, Locate returns an error indicating that the requesting location is invalid.

system_cd: from the Locate System (Serenade) (K50).

for each item included in the request message:

Note: Only items on the pick slip that are as flagged as Locate eligible are included in the message.

line_item_no: the order line sequence number. The sequence number might differ from the order line number displayed in order maintenance or order inquiry if, for example, you deleted one of the previous lines on the order.

If the Create Separate Picks for Ship to Store (L89) system control value is selected, the line item number passed for a non-drop ship item is the Order Detail sequence number (typically the same as the line number unless a line has been deleted in order entry) concatenated with the zero-filled shipping warehouse number. For example, for line 2 shipping from warehouse 1, the line item number passed to Locate is 2001.

location_cd: the location, selected at the Store Pickup Search Results Screen, where the customer wants to pick up the order.

system_cd: The code identifying your POS system, from the System Code, if any, for the Store Cross Reference record; otherwise, from the System Name in Locate for Point of Sale (L09).

item_id: the CWSerenade item/SKU code. The item and SKU code are concatenated, with blank spaces inserted after the item code so that the SKU code begins at position 13.

qty: the total quantity printed on the pick slip.

unit_price: the single-unit price of the item.

ship_to (repeated for each item): The ship-to name and address indicates the store location where the customer picks up the order. The information passed includes the company name, address lines 1-4, city, state, postal code, and country defaulted from the Store Cross Reference record for the selected location. The ship-to information can also include the ship-to name, attention line, or apartment and suite, that does not default from the Store Cross Reference record.

taxes: the total tax amount for the entire quantity of the item. If there are multiple tax charges on the order line (for example, if there is GST and PST), then each tax amount is passed separately, and Locate adds them together to determine the total tax for the order line; the message also indicates the total in the transaction_tax at the header level.

special_instructions: if the Rewards Certificates Pay Type (L54) system control value contains a valid pay type, CWSerenade includes any Authorized (A) certificates defined for the order ship to in the Order Rewards Certificate table on the ship-to-store order; see Rewards Certificates on Ship To Store Orders.

order_line_extended_freight: The freight charges for the item. Included only when the order uses a line-level freight calculation, and if the message version is 5.0 or higher.

order_line_ship_weight: The ship weight, if any, specified for the item. Included only if the message version is 5.0 or higher.

order_line_message: Any order line message lines for the item with a flag of Print (P) or Both (B). Included only if the message version is 5.0 or higher.

order_line_customization_charge: The total special handling charges. Includes any items with standard special handling, although standard special handling instructions are not included in the message. Custom special handling instructions are included in the customization element. Included only if the message version is 5.0 or higher.

order_line_gift_wrap: Set to Y if the item is flagged for gift wrap; otherwise, set to N. Included only if the message version is 5.0 or higher.

order_line_ship_alone: set to Y if the item is flagged to ship alone; otherwise, set to N. Included only if the message version is 5.0 or higher.

order_line_ship_weight: the ship weight, if any, specified for the item. Included only if the message version is 5.0 or higher.

order_line_message: Any order line message lines for the item with a flag of Print (P) or Both (B). Included only if the message version is 5.0 or higher.

customization: Any custom special handling instructions for the order line. Standard special handling information is not included. Included only if the message version is 5.0 or higher.

customization_code: The Field label for the special handling instructions.

customization_message: The Input of the special handling instructions.

Not included: Information that is not passed includes:

• standard special handling instructions

• payment methods

• UPC or EAN codes

• any items on the pick slip that are not flagged as Locate eligible

• any order lines that were not included on the pick slip (for example, items shipping separately, backorders, or drop ships; these items create separate ship-to-store orders in Locate)

• any phone numbers or email address entered for the ship-to address

 

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">

<S:Body>

<ns2:SubmitOrder xmlns:ns2="http://microsretail.com/Locate">

<ns2:order_request_message>

<message_header message_type="SubmitOrder" xaction_response="1" xaction_type="INSERT">

<datetime>2015-02-24T10:45:09</datetime>

<version>5.0</version>

<source>0060001376200100000</source>

<destination>LOCATE</destination>

</message_header>

<message_body>

<transactions>

<transaction_header transaction_type_id="SHIPTOSTORE" transaction_no="00013762-001" request_id="" order_id="13762-001">

<ref_transaction_no></ref_transaction_no>

<transaction_date>2015-02-24T10:45:09</transaction_date>

<employee_id>CWS</employee_id>

<transaction_subtotal>8.75</transaction_subtotal>

<transaction_tax>2.0999999046325684</transaction_tax>

<transaction_total>42.94</transaction_total>

<special_instructions></special_instructions>

<transaction_status>new_order</transaction_status>

<transaction_channel>1</transaction_channel>

<ship_via>50</ship_via>

<ship_via_description>FEDERAL EXPRESS 2-DAY</ship_via_description>

<gift>N</gift>

<source_code>PROMOS</source_code>

<freight_amount>32.09000015258789</freight_amount>

<balance_due>0</balance_due>

<currency></currency>

<order_additional_freight_charges>2.50</order_additional_freight_charges>

<order_additional_charges>-1.23</order_additional_charges>

<ship_complete>N</ship_complete>

<freight_tax>0.00</freight_tax>

<order_message>Order message flagged P

Order message 2 flagged P</order_message>

<gift_message>Order message flagged G

Another order message flagged G</gift_message>

<under_review></under_review>

<sold_to_customer customer_no="000000006">

<name>

<company_name>VAN VOORHIS CONSULTING</company_name>

<prefix>MR.</prefix>

<first>JAKE</first>

<middle>Q</middle>

<last>Van Voorhis</last>

<suffix>JR.</suffix>

</name>

<address>

<attention></attention>

<address1>257 Jake Street</address1>

<address2></address2>

<address3></address3>

<address4></address4>

<apt>SUITE 123</apt>

<city>WORCESTER</city>

<province>MA</province>

<postal>01602-0008</postal>

<email>ekaplan@example.com</email>

<phone1>5085550125</phone1>

<phone2>5085550126</phone2>

<country>US</country>

</address>

</sold_to_customer>

<store_location location_cd="1" system_cd="6" />

<transaction_details>

<transaction_detail line_item_no="2">

<location_cd>317</location_cd>

<system_cd>CWS13DOC</system_cd>

<item_id>PEN BLUE </item_id>

<qty>3</qty>

<unit_price>2.25</unit_price>

<ship_to>

<name>

<company_name>MR STORE 317</company_name>

<prefix></prefix>

<first></first>

<middle></middle>

<last></last>

<suffix></suffix>

</name>

<address>

<attention>MR. JAKE </attention>

<address1>10 APPLE STREET</address1>

<address2>ADDRESS LINE 2</address2>

<address3>ADDRESS LINE 3</address3>

<address4>ADDRESS LINE 4</address4>

<apt></apt>

<city>WEBSTER</city>

<province>MA</province>

<postal>01603</postal>

<email></email>

<phone1>5085550127</phone1>

<phone2>5085550128</phone2>

<country>US</country>

</address>

</ship_to>

<taxes>

<tax description="Tax" line_item_no="2">

<amount>0.33750</amount>

</tax>

</taxes>

<line_item_status>new_order</line_item_status>

<special_instructions></special_instructions>

<shipping_agent></shipping_agent>

<tracking_number></tracking_number>

<item_upc_cd></item_upc_cd>

<item_ean_cd></item_ean_cd>

<order_line_extended_freight>0.00</order_line_extended_freight>

<order_line_customization_charge>0.00</order_line_customization_charge>

<order_line_gift_wrap>N</order_line_gift_wrap>

<order_line_ship_alone>N</order_line_ship_alone>

<order_line_ship_weight>0.150</order_line_ship_weight>

<order_line_message>Order line message flagged P

Order line message 2 flagged P</order_line_message>

<customizations />

</transaction_detail>

<transaction_detail line_item_no="1">

<location_cd>317</location_cd>

<system_cd>CWS13DOC</system_cd>

<item_id>PENCIL </item_id>

<qty>2</qty>

<unit_price>1.0</unit_price>

<ship_to>

<name>

<company_name>MR STORE 317</company_name>

<prefix></prefix>

<first></first>

<middle></middle>

<last></last>

<suffix></suffix>

</name>

<address>

<attention>MR. JAKE </attention>

<address1>10 APPLE STREET</address1>

<address2>ADDRESS LINE 2</address2>

<address3>ADDRESS LINE 3</address3>

<address4>ADDRESS LINE 4</address4>

<apt></apt>

<city>WEBSTER</city>

<province>MA</province>

<postal>01603</postal>

<email></email>

<phone1>5085550129</phone1>

<phone2>5085550130</phone2>

<country>US</country>

</address>

</ship_to>

<taxes>

<tax description="Tax" line_item_no="1">

<amount>1.59700</amount>

</tax>

</taxes>

<line_item_status>new_order</line_item_status>

<special_instructions></special_instructions>

<shipping_agent></shipping_agent>

<tracking_number></tracking_number>

<item_upc_cd></item_upc_cd>

<item_ean_cd></item_ean_cd>

<order_line_extended_freight>0.00</order_line_extended_freight>

<order_line_customization_charge>10.00</order_line_customization_charge>

<order_line_gift_wrap>Y</order_line_gift_wrap>

<order_line_ship_alone>N</order_line_ship_alone>

<order_line_ship_weight>1.000</order_line_ship_weight>

<order_line_message></order_line_message>

<customizations>

<customization>

<customization_code>FIRST NAME LABL

</customization_code>

<customization_message>Jake

</customization_message>

</customization>

<customization>

<customization_code>COLOR FLD

LBL</customization_code>

<customization_message>black

</customization_message>

</customization>

<customization>

<customization_code>LAST NAME

LABEL</customization_code>

<customization_message>Van

Voorhis</customization_message>

</customization>

</customizations>

</transaction_detail>

</transaction_details>

</transaction_header>

</transactions>

</message_body>

</ns2:order_request_message>

</ns2:SubmitOrder>

</S:Body>

</S:Envelope>

Submit Order Response Message Sample: Message Version 5.0 or higher

The Order Broker module in Locate returns this message when it receives the SubmitOrder request message for a successful store pickup, ship-to-store order, or brokered backorder request, if the version specified in the submit order request message was 5.0 or higher. The Locate message version is specified in the Locate Properties File.

Information passed in the order response includes:

• the concatenated company, order number, ship-to number, and order line sequence number, returned as the destination so that CWSerenade can identify the company for the order

• a response code of 0 and the response description Order Acknowledged, indicating that the order was successfully received

• request ID assigned by the Order Broker to track the order in Locate

• system and location code assigned to fulfill each item on the order

CWSerenade matches the location code passed in the response message with the cross reference you have set up through the Work with Store Cross Reference (WSCR) option, and stores this information as the fulfilling location and description.

See Submit Order Response Message Samples: Message Version 3.1 or 3.0 for examples of the submit order response message generated for a lower message version.

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<ns2:SubmitOrderResponse xmlns:ns2="http://microsretail.com/Locate">

<generic_response_message>

<message_header xaction_response="OK" xaction_type="INFO">

<datetime>2015-02-24T10:45:10.511</datetime>

<version>5.0</version>

<source>LOCATE</source>

<destination>0060001376200100000</destination>

</message_header>

<message_body>

<response order_id="13762-001" request_id="87739" response_code="0">

<response_description>Order Acknowledged</response_description>

<fulfillment_details>

<fulfillment_detail fulfillment_qty="3" fulfillment_location_cd="317" fulfillment_system_cd="CWS13DOC" item_id="PEN BLUE " requesting_system_line_no="2" line_no="1" />

<fulfillment_detail fulfillment_qty="2" fulfillment_location_cd="317" fulfillment_system_cd="CWS13DOC" item_id="PENCIL " requesting_system_line_no="1" line_no="2" />

</fulfillment_details>

</response>

</message_body>

</generic_response_message>

</ns2:SubmitOrderResponse>

</soap:Body>

</soap:Envelope>

Submit Order Response Message Samples: Message Version 3.1 or 3.0

The Submit Order response message samples generated when the message version in the submit order request message is 3.1 or 3.0:

Submit Order Response Message Sample: Single Location (Message Version 3.1 or 3.0)

Submit Order Response Message Sample: Multiple Locations (Message Version 3.1 or 3.0)

The Locate message version to use is specified in the Locate Properties File.

See Submit Order Response Message Sample: Message Version 5.0 or higher for an example of the submit order response generated for later versions.

Submit Order Response Message Sample: Single Location (Message Version 3.1 or 3.0)

The Order Broker module in Locate returns this message when it receives the SubmitOrder request message for a successful store pickup or ship-to-store order request, or for a brokered backorder request assigned to a single fulfilling location, if the version specified in the submit order request message is 3.1 or 3.0. Information passed in the order response includes:

• the concatenated company, order number, ship-to number, and order line sequence number, returned as the destination so that CWSerenade can identify the order

• a response code of 0 and the response description Order Acknowledged, indicating that the order was successfully received

• request ID assigned by the Order Broker to track the order in Locate

• system and location code assigned to fulfill the order

CWSerenade matches the location code passed in the response message with the cross reference you have set up through the Work with Store Cross Reference (WSCR) option, and stores this information as the fulfilling location and description.

 

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<ns2:SubmitOrderResponse xmlns:ns2="http://microsretail.com/Locate">

<generic_response_message>

<message_header xaction_response="OK" xaction_type="INFO">

<datetime>2012-06-25T14:56:35.413</datetime>

<version>3.1</version>

<source>LOCATE</source>

<destination>0060001143900100000</destination>

</message_header>

<message_body>

<response order_id="11439-001" request_id="6706" response_code="0">

<response_description>Order Acknowledged</response_description>

<response_fulfillment_system_cd>cws</response_fulfillment_system_cd>

<response_fulfillment_location_cd>317</response_fulfillment_location_cd>

</response>

</message_body>

</generic_response_message>

</ns2:SubmitOrderResponse>

</soap:Body>

</soap:Envelope>

Submit Order Response Message Sample: Multiple Locations (Message Version 3.1 or 3.0)

The Order Broker module in Locate returns this message when it receives the SubmitOrder request message for a successful brokered backorder order request assigned to multiple locations, if the version specified in the request message is 3.1 or 3.0. A brokered backorder is assigned to multiple locations if:

• the Use Split Order (L56) system control value is selected, and

• the Allow Split Order and Allow Split Line preferences in Locate are selected, and

• the Order Broker could not find a single location that could fulfill the brokered backorder, but could assign the order by splitting across multiple locations.

The option to split orders from CWSerenade applies only to brokered backorders. Store pickup orders and ship-to-store orders cannot be split.

For more information: See the Use Split Order (L56) system control value for a discussion.

Information passed in the order response includes:

• the concatenated company, order number, ship-to number, and order line sequence number, returned as the destination so that CWSerenade can identify the order.

• a response code of 2082 indicating that the order was successfully received.

• request ID assigned by the Order Broker to track the order line as an order in Locate.

• the order ID, consisting of:

• the order number, not zero-filled.

• the ship-to number, zero-filled.

• the response description Multiple fulfilling locations.

When CWSerenade receives a submit order response indicating that the order was assigned to multiple fulfilling locations, it then sends a status inquiry request message to Locate to determine the assigned fulfilling locations so it can record this information in the Order Broker records.

 

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<ns2:SubmitOrderResponse xmlns:ns2="http://microsretail.com/Locate">

<generic_response_message>

<message_header xaction_response="OK" xaction_type="INFO">

<datetime>2012-06-25T15:08:45.777</datetime>

<version>3.1</version>

<source>LOCATE</source>

<destination>0060001144000100000</destination>

</message_header>

<message_body>

<response order_id="11440-001" request_id="6707" response_code="2082">

<response_description>Multiple fulfilling locations.</response_description>

</response>

</message_body>

</generic_response_message>

</ns2:SubmitOrderResponse>

</soap:Body>

</soap:Envelope>

Status Request Message Sample

The BROKER process sends this message to the Order Broker periodically for each open order.

How often?

• For brokered backorder, store pickup, or ship-to-store orders in Acknowledged, Accepted, or Polled status, and for retail pickup or delivery orders in in process or Picking status, the interval is based on the Order Broker Status Update Interval (K10).

• For retail pickup orders that are in In Transit, Partially Fulfilled, or Received by Store status, or for store pickup orders in Partially Fulled status, the BROKER process sends the message once a day. See Setting the Daily Status Inquiry Time Window (all versions) for background.

• For any order that is in Completed, Fulfilled, Closed, Error, Rejected, or Canceled status, the BROKER does not send the status inquiry request message.

• For brokered backorders, when CWSerenade receives the Submit Order Response Message Sample: Multiple Locations (Message Version 3.1 or 3.0).

Checking status during pick slip generation: Also, for retail pickup and delivery orders, pick slip generation sends a status inquiry request before printing pick slips to confirm that each order has not been canceled and is still eligible for shipment; this occurs if the Use Locate Status Inquiry List Web Service (M05) system control is unselected, or if the current Message Version Number specified in the cwdirectcp_locate.properties file is 3.0 or 3.1. If this system control value is selected and if the current Message Version Number specified in the cwdirectcp_locate.properties file is 5.0 or higher, pick slip generation sends the status list request instead. See the Status List Request Message Sample (Retail Pickup or Delivery) and Status List Response Message Sample (Retail Pickup or Delivery) for examples.

Message contents: Information passed in the message includes:

• the concatenated company, order number, ship-to number, and order line sequence number (passed as the source)

• the request ID assigned by the Order Broker to track the order in Locate

• the requesting location code, from the Locate Default Location (K51) if the Send Inventory by Warehouse to Locate (L06) system control value is unselected; otherwise, it is from the warehouse’s Locate location

• the requesting system code, from the Locate System (Serenade) (K50)

• the version from the Locate Properties File

 

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">

<S:Body>

<ns2:StatusRequest xmlns:ns2="http://microsretail.com/Locate">

<ns2:status_request_message>

<message_header xaction_type="INSERT" xaction_response="?" message_type="StatusRequest">

<datetime>2015-02-24</datetime>

<version>5.0</version>

<source>0060001377100100000</source>

<destination>LOCATE</destination>

</message_header>

<message_body>

<lookup_data order_id="" request_id="87743">

<ref_transaction_no></ref_transaction_no>

<employee_id></employee_id>

<store_location location_cd="1" system_cd="6"/>

</lookup_data>

</message_body>

</ns2:status_request_message>

</ns2:StatusRequest>

</S:Body>

</S:Envelope>

Status Response Message Sample

The Order Broker module in Locate returns this response when it receives the status request message for an order. Information passed in the message includes:

• the concatenated company, order number, and ship-to number from the request message (passed as the destination)

• most of the same customer, address, and item information that was passed in the Submit Order message, except that the status response message does not include all dollar amounts

• the current status of the order and order lines in Locate, and the currently assigned fulfilling location(s) and system(s). The items on the order can be assigned to multiple fulfilling locations if the Use Split Order (L56) system control value is selected. See that system control value for a discussion.

• the shipping agent and tracking number, if available, for a fulfilled order. CWSerenade writes Order Transaction History messages to note this information, such as ----VIA: DHL and ----TRK#: ABC123. If the shipping agent passed matches a ship via code in CWSerenade, then the description of the ship via is included in the shipment confirmation email to the customer, and the tracking number in the email is a live link. See the Shipment Confirmation Email Sample and Contents for more information. Also, the shipping agent and tracking number, if available, are included in the Detailed Order Inquiry Response XML Message (CWORDEROUT) through the customer history API.

 

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<ns2:StatusRequestResponse xmlns:ns2="http://microsretail.com/Locate">

<status_response_message>

<message_header xaction_response="OK" xaction_type="INFO">

<datetime>2015-03-03T13:30:03.774</datetime>

<version>5.0</version>

<source>LOCATE</source>

<destination>0060001377100100000</destination>

</message_header>

<message_body>

<orders>

<order currency="" ref_transaction_no="" balance_due="0.0" freight="7.0" source_code="PROMOS" gift="N" ship_via_description="UNITED PARCEL SERVICE COMPANY" ship_via="1" special_instructions="" transaction_total="17.85" transaction_tax="0.85" transaction_subtotal="10.0" order_date="2015-02-24T14:11:58.000" originating_location_description="Main Distribution Center" originating_location_cd="1" originating_system_cd="6" order_status="polled" order_id="13771-001" request_id="87743" under_review="N" order_additional_freight_charges="5.0000" order_additional_charges="0.0000" ship_complete="N" freight_tax="0.0000">

<order_type>2</order_type>

<items>

<item special_instructions="" tax_amount="0.5" unit_price="10.0" item_description="TEST FOR ORDER BROKER 10/14/09" status_date="2015-02-24T14:11:58.877" requesting_system_line_no="1" line_no="1" fulfilling_system_cd="STC_EZK" fulfilling_location_cd="5678" item_status="polled" tracking_number="" shipping_agent="" item_qty="1" item_id="KABNOSKU" item_upc_cd="abcdefghijklmnopqrstuvwxyz" item_ean_cd="EANCUMIN" order_line_extended_freight="0.0000" order_line_customization_charge="0.0000" order_line_gift_wrap="N" order_line_ship_alone="Y" order_line_ship_weight="1.110">

<ship_to>

<name>

<company_name>VAN VOORHIS

CONSULTING</company_name>

<prefix>MR.</prefix>

<first>JAKE</first>

<middle>Q</middle>

<last>Van Voorhis</last>

<suffix>JR.</suffix>

</name>

<address>

<attention></attention>

<address1>257 JAKE STREET</address1>

<address2></address2>

<address3></address3>

<address4></address4>

<apt>SUITE 123</apt>

<city>WORCESTER</city>

<province>MA</province>

<postal>01602-0008</postal>

<email>ekaplan@example.com</email>

<phone1>5085550131</phone1>

<phone2>5085550132</phone2>

<country>US </country>

</address>

</ship_to>

<taxes>

<tax description="Tax" line_item_no="1">

<amount>0.5000</amount>

</tax>

</taxes>

<customizations/>

</item>

</items>

<sold_to_customer customer_no="000000006">

<name>

<company_name>VAN VOORHIS CONSULTING</company_name>

<prefix>MR.</prefix>

<first>JAKE</first>

<middle>Q</middle>

<last>Van Voorhis</last>

<suffix>JR.</suffix>

</name>

<address>

<address1>257 Jake STREET</address1>

<address2></address2>

<address3></address3>

<address4></address4>

<apt>SUITE 123</apt>

<city>WORCESTER</city>

<province>MA</province>

<postal>01602-0008</postal>

<email>ekaplan@commercialware.com</email>

<phone1>5085550133</phone1>

<phone2>5085550134</phone2>

<country>US </country>

</address>

</sold_to_customer>

<transaction_tenders/>

</order>

</orders>

</message_body>

</status_response_message>

</ns2:StatusRequestResponse>

</soap:Body>

</soap:Envelope>

Status List Request Message Sample (Retail Pickup or Delivery)

Checking for canceled retail pickup or delivery orders during pick slip generation: To determine whether any retail pickup or delivery orders have been canceled by the originating system, pIck slip generation sends the status list request to Locate for all retail pickup and delivery orders eligible for pick slips based on their status, item availability, and the pick slip selection criteria, and specifies to return an order in the response only if its current status is canceled.

When the response includes an order in canceled status, the program does not generate a pick slip for the order; instead, it puts the order on hold using the Order Broker Hold Reason (Cancel) (L02) system control value.

Otherwise, if the order has not been canceled, CWSerenade puts the Order Broker record into Picking status when the pick slip is printed and sends a status update message to the Order Broker indicating that the order or line is in Picked status.

See Retail Pickup or Delivery Processing after Order Creation for a process overview.

Status request sent instead? Pick slip generation sends the status list request only if the Use Locate Status Inquiry List Web Service (M05) system control is selected and the current Message Version Number specified in the cwdirectcp_locate.properties file is 5.0 or higher. If this system control value is unselected or if the message version number is 3.0 or 3.1, pick slip generation sends the status inquiry request for each individual order instead. See the Status Request Message Sample and Status Response Message Sample for examples.

Up to 2000 orders at a time: If there are more than 2000 retail pickup and delivery orders eligible for pick slip generation, the program sends the first 2000 orders at a time in the request message, and generates an additional message for the next group of up to 2000 orders until it has requested status for all eligible retail pickup and delivery orders.

Message contents: Information passed in the message includes:

• the request ID assigned by the Order Broker to track the retail pickup or delivery order in Locate

• the requesting system code, from the Locate System (Serenade) (K50)

• the version (5.0 or higher) from the Locate Properties File

• a requested status of canceled

 

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">

<S:Body>

<ns2:StatusListRequest xmlns:ns2="http://microsretail.com/Locate">

<ns2:status_list_request_message>

<message_header xaction_type="INSERT" xaction_response="?" message_type="StatusListRequest">

<datetime>2015-03-03</datetime>

<version>5.0</version>

<source></source>

<destination>LOCATE</destination>

</message_header>

<message_body>

<lookup_data response_type="SUMMARY" status_condition="EQ">

<ref_transaction_no></ref_transaction_no>

<employee_id></employee_id>

<store_location location_cd="" system_cd="6"/>

<request_ids>

<request_ids request_id="87769"/>

<request_ids request_id="87768"/>

<request_ids request_id="87759"/>

<request_ids request_id="87767"/>

</request_ids>

<statuses>

<statuses status="canceled"/>

</statuses>

</lookup_data>

</message_body>

</ns2:status_list_request_message>

</ns2:StatusListRequest>

</S:Body>

</S:Envelope>

Status List Response Message Sample (Retail Pickup or Delivery)

Canceled retail pickup or delivery orders: The status list response message includes information on each canceled retail pickup or delivery order specified in the status list request message.

For more information: See the Status List Request Message Sample (Retail Pickup or Delivery) for a discussion on generating the status list request message and its criteria.

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<ns2:StatusListRequestResponse xmlns:ns2="http://microsretail.com/Locate">

<status_list_request_message>

<message_header xaction_response="OK" xaction_type="INFO">

<datetime>2015-03-03T14:42:28.835</datetime>

<version>5.0</version>

<source>LOCATE</source>

<destination></destination>

</message_header>

<message_body>

<orders>

<order request_id="87777" order_id="03031502" order_status="canceled" originating_system_cd="cws13doc" originating_location_cd="317" originating_location_description="MR 01602" order_date="2015-03-03T10:10:16.000" ref_transaction_no="03031502" under_review="N">

<order_type>2</order_type>

<items>

<item item_id="PENCIL" item_qty="10" shipping_agent="" tracking_number="" item_status="canceled" fulfilling_location_cd="1" fulfilling_system_cd="6" line_no="1" requesting_system_line_no="1" status_date="2015-03-03T14:40:45.530"/>

</items>

</order>

</orders>

</message_body>

</status_list_request_message>

</ns2:StatusListRequestResponse>

</soap:Body>

</soap:Envelope>

Cancel Request Message Sample (Brokered Backorder or Store Pickup)

The only status update message that CWSerenade sends to the Order Broker for a brokered backorder or store pickup is the cancel request. Information passed in this message includes:

• version from the Locate Properties File

• request ID assigned by Locate

• requesting location code from the Locate Default Location (K51) if the Send Inventory by Warehouse to Locate (L06) system control value is unselected; otherwise, from the warehouse’s Locate location

• requesting system code from the Locate System (Serenade) (K50)

• the requested status of canceled

• the cancellation reason code and description

Order-level or item-level status updates: If you use the split order option, Locate uses the line_no to identify the item to update (the item code is not passed), and updates the item with the:

item_status

item_status_reason_code: cancel reason code

item_status_reason_note: cancel reason description

Otherwise, Locate updates the entire order with the:

order_status

And updates each line with the:

order_status_reason_code: cancel reason code

order_status_reason_note: cancel reason description

Note: If you do not split orders and you cancel multiple items with different cancel reasons during a single order maintenance session, the cancel reason code and description sent to Locate may both be from the first line canceled.

See the Use Split Order (L56) system control value for a discussion of splitting orders.

 

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">

<S:Body>

<ns2:StatusUpdate xmlns:ns2="http://microsretail.com/Locate">

<ns2:status_update_request_message>

<message_header xaction_response="1" xaction_type="INSERT" message_type="">

<datetime>2015-03-03T15:08:45</datetime

><version>5.0</version>

<source>0060001380500100000</source>

<destination>LOCATE</destination>

</message_header>

<message_body>

<order request_id="87778" order_id="" order_status="canceled" order_status_reason_code="" order_status_reason_note="">

<employee_id></employee_id>

<store_location location_cd="1" system_cd="6"/>

<items>

<item item_id="" item_qty="0" shipping_agent="" tracking_number="" item_status="canceled" fulfilling_location_cd="" fulfilling_system_cd="" line_no="1" requesting_system_line_no="0" status_date="" item_status_reason_code="1" item_status_reason_note="CUSTOMER REQUEST"/>

<item item_id="" item_qty="0" shipping_agent="" tracking_number="" item_status="canceled" fulfilling_location_cd="" fulfilling_system_cd="" line_no="2" requesting_system_line_no="0" status_date="" item_status_reason_code="8" item_status_reason_note="FOUND BETTER DEAL ELSEWHERE"/>

</items>

</order>

</message_body>

</ns2:status_update_request_message>

</ns2:StatusUpdate>

</S:Body>

</S:Envelope>

Cancel Response Message Sample

The Order Broker responds to the cancel request for a brokered backorder or store pickup indicating either a success or a failure. The only reason why a cancel request for an identified order might fail is if the order is already in the requested status in the Locate database; in this case, the result indicated in the message is FAILED rather than OK.

This response message does not identify the order number.

 

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<ns2:StatusUpdateResponse xmlns:ns2="http://microsretail.com/Locate">

<generic_response_message>

<message_header xaction_response="OK" xaction_type="INFO">

<datetime>2015-03-03T15:08:45.377</datetime>

<version>5.0</version>

<source>LOCATE</source>

<destination>0060001380500100000</destination>

</message_header>

<message_body>

<response order_id="" request_id="87778" response_code="0">

<response_description>Status updated successfully.</response_description>

</response>

</message_body>

</generic_response_message>

</ns2:StatusUpdateResponse>

</soap:Body>

</soap:Envelope>

Fulfillment Request Message Sample (Retail Pickup or Delivery Orders)

Requesting location: if the Order Broker Values (K15), including the Order Type for Orders Brokered for Delivery (K91) and Order Type for Retail Pickup Orders Brokered to Serenade (K92), are specified, CWSerenade periodically sends fulfillment requests to Locate to poll for newly assigned orders.

Separate requests by warehouse? If the Send Inventory by Warehouse to Locate (L06) system control value is selected, CWSerenade sends a separate request for each warehouse that has a Locate location specified; otherwise, it sends a single fulfillment request for the Locate Default Location (K51).

Message contents: Information passed in the fulfillment request message includes:

source and system: from the Locate System (Serenade) (K50)

version: from the Locate Properties File

destination: from the Locate Account (K49)

location code: from the Locate Default Location (K51) if the Send Inventory by Warehouse to Locate (L06) system control value is selected; otherwise, it is from the warehouse’s Locate location field. A message is generated for a warehouse only if you specified its Locate location.

How often? CWSerenade sends these messages periodically based on the Outbound delay time specified through Working with Integration Layer Processes (IJCT).

 

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">

<S:Body>

<ns2:Fulfillments xmlns:ns2="http://microsretail.com/Locate">

<ns2:fulfillment_request_message>

<message_header xaction_type="INSERT" xaction_response="" message_type="">

<datetime>2015-03-03</datetime>

<version>5.0</version>

<source>6</source>

<destination>LOCATE</destination>

</message_header>

<message_body>

<store_location location_cd="1" system_cd="6"/>

</message_body>

</ns2:fulfillment_request_message>

</ns2:Fulfillments>

</S:Body>

</S:Envelope>

Fulfillment Response Message Sample

Locate sends the fulfillment response when it receives the fulfillment request message.

For more information: See Building the Retail Pickup or Delivery Order for details on how CWSerenade uses the information in this message to create new orders.

 

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<ns2:FulfillmentsResponse xmlns:ns2="http://microsretail.com/Locate">

<fulfillment_response_message>

<message_header xaction_response="OK" xaction_type="INFO">

<datetime>2015-02-25T16:58:57.544</datetime>

<version>5.0</version>

<source>LOCATE</source>

<destination>6</destination>

</message_header>

<message_body>

<orders>

<order transaction_no="originating trans ID" transaction_type_id="DELIVERY" request_id="87749" order_id="022515ab" transaction_status="new_order">

<ref_transaction_no></ref_transaction_no>

<transaction_date>2015-02-25T00:00:00.000</transaction_date>

<employee_id>soapUI</employee_id>

<transaction_subtotal>1.0123</transaction_subtotal>

<transaction_tax>1.0123</transaction_tax>

<transaction_total>1.0123</transaction_total>

<special_instructions>special_instructions</special_instructions>

<transaction_channel>1</transaction_channel>

<ship_via>01</ship_via>

<ship_via_description>Ship via description</ship_via_description>

<gift>Y</gift>

<source_code>SOURCE</source_code>

<freight_amount>9.0123</freight_amount>

<balance_due>99.0112</balance_due>

<currency>etb</currency>

<under_review>N</under_review>

<order_additional_freight_charges>1.1235</order_additional_freight_charges>

<order_additional_charges>2.1235</order_additional_charges>

<ship_complete>Y</ship_complete>

<freight_tax>1.0000</freight_tax>

<order_message>This is an order message at the

transaction_header level</order_message>

<gift_message>This is a

gift message at the

transaction_header level</gift_message>

<sold_to_customer customer_no="0000006">

<name>

<company_name>Jake Industries</company_name>

<prefix>Mr.</prefix>

<first>Jake</first>

<middle>Q</middle>

<last>Van Voorhis</last>

<suffix>Jr.</suffix>

</name>

<address>

<address1>4444 Jake street</address1>

<address2>address 2</address2>

<address3>address 3</address3>

<address4>address 4</address4>

<apt>apt 123</apt>

<city>Worcester</city>

<province>MA</province>

<postal>01602</postal>

<email>ekaplan@example.com</email>

<phone1>5085550135</phone1>

<phone2>5085550136</phone2>

<country>US </country>

</address>

</sold_to_customer>

<store_location request_system_cd="cws13doc" request_location_cd="317" system_cd="6" location_cd="1" />

<items>

<item_detail requesting_system_line_no="11" line_item_status="new_order" line_item_no="1">

<location_cd>1</location_cd>

<system_cd>6</system_cd>

<item_id>PENCIL</item_id>

<qty>2</qty>

<unit_price>9.95</unit_price>

<ship_to>

<name>

<company_name>Acme Industries</company_name>

<prefix>Ms.</prefix>

<first>First</first>

<middle>Q</middle>

<last>LastName</last>

<suffix>Jr.</suffix>

</name>

<address>

<attention>attention</attention>

<address1>1234 Test Street</address1>

<address2>address2</address2>

<address3>address3</address3>

<address4>address4</address4>

<apt>11</apt>

<city>Worcester</city>

<province>MA</province>

<postal>01602</postal>

<email></email>

<phone1></phone1>

<phone2></phone2>

<country>US</country>

</address>

</ship_to>

<taxes>

<tax description="GST" line_item_no="1">

<amount>1.0123</amount>

</tax>

</taxes>

<special_instructions>special instructions</special_instructions>

<item_upc_cd>1234567890</item_upc_cd>

<item_ean_cd>2345678901</item_ean_cd>

<order_line_extended_freight>1.1235</order_line_extended_freight>

<order_line_customization_charge>2.1235</order_line_customization_charge>

<order_line_gift_wrap>Y</order_line_gift_wrap>

<order_line_ship_alone>N</order_line_ship_alone>

<order_line_ship_weight>3.126</order_line_ship_weight>

<order_line_message>This is an

order_line_

message</order_line_message>

<customizations>

<customization>

<customization_code>COLOR FLD

LBL</customization_code>

<customization_message>blue

</customization_message>

</customization>

<customization>

<customization_code>FIRST NAME

LABL</customization_code>

<customization_message>First

</customization_message>

</customization>

<customization>

<customization_code>LAST NAME

LABEL</customization_code>

<customization_message>LastName

</customization_message>

</customization>

</customizations>

</item_detail>

</items>

<transaction_tenders>

<transaction_tender line_item_no="1">

<tender_description>test</tender_description>

<tender_amount>1.0123</tender_amount>

<tender_account></tender_account>

</transaction_tender>

</transaction_tenders>

</order>

</orders>

</message_body>

</fulfillment_response_message>

</ns2:FulfillmentsResponse>

</soap:Body>

</soap:Envelope>

Status Update Sample (Retail Pickup, Delivery, or Ship-to-Store Orders)

Retail pickup or delivery status updates: CWSerenade notifies the Order Broker when a retail pickup or delivery order is picked, shipped or sold out.

Canceling a retail pickup or delivery order: If you cancel a retail pickup or delivery order or order line, CWSerenade changes the Order Broker record’s status to Canceled and sends a status inquiry request to the Order Broker. If the order’s status in Locate is:

Canceled: CWSerenade does not send a status update to Locate; otherwise,

• If the order’s status in Locate is anything but Canceled, CWSerenade sends a status update to Locate indicating the status is Rejected. In this situation, the Order Broker then changes the order status to New_order.

Important: If Locate is configured to “reshop” (the Search retries setting at the Preferences screen is not set to 0), then in this situation the Order Broker attempts to assign the order to another location for fulfillment.

Ship-to-store status updates: CWSerenade notifies the Order Broker when a ship-to-store order is shipped, or if you cancel the order or order line. In certain situations, it also notifies the Order Broker when you void a pick slip for a ship-to-store order. For more information, see Updates to a Ship-to-Store Order in CWSerenade.

Brokered backorder or store pickup: The only notification that CWSerenade sends for brokered backorders or store pickup orders is the cancel notice. See Cancel Request Message Sample (Brokered Backorder or Store Pickup) for more information.

Information included in the status update:

location code: from the Locate Default Location (K51) if the Send Inventory by Warehouse to Locate (L06) system control value is unselected; otherwise, from the Locate location from the warehouse associated with the order

system code: from the Locate System (Serenade) (K50)

request id: the unique request ID number that the Order Broker uses to track each order

status: the new status. From the Order Broker’s status description, rather than the order or Order Broker status in CWSerenade

destination: from the Locate Account (K49)

ship agent: for shipments, the notification includes the description of the ship via actually used, if this information is available. Not included for a cancellation

ship tracking number: for shipments, the notification includes the shipper’s tracking number, if this information is available

cancellation reason code and description: If you:

• cancel the order in order maintenance: the entered cancel reason is sent

• void the pick slip through the generic pick in API: the Cancel Reason (Pick In) (L86) system control value is sent

• reject the batch that includes the retail pickup or delivery order: no cancel reason is sent

Order-level or item-level status updates: If you use the split order option, Locate updates the item with the item_status; otherwise, Locate updates the entire order with the order_status. See the Use Split Order (L56) system control value for a discussion of splitting orders.

 

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<ns2:StatusUpdate xmlns:ns2="http://microsretail.com/Locate" xmlns:ns3="http://microsretail.com/LocatePurchasing">

<ns2:status_update_request_message>

<message_header xaction_response="" xaction_type="" message_type="">

<datetime>2014-07-11</datetime>

<version>5.0</version>

<source>CWSerenade</source>

<destination>LOCATE</destination>

</message_header>

<message_body>

<order request_id="79103" order_id="" order_status="canceled" order_status_reason_code="8" order_status_reason_note="FOUND BETTER PRICE ELSEWHERE">

<employee_id></employee_id>

<store_location location_cd="1" system_cd="6" />

<items>

<item item_id="" item_qty="0" shipping_agent="" tracking_number="" item_status="" fulfilling_location_cd="" fulfilling_system_cd="" line_no="0" requesting_system_line_no="0" status_date="" item_status_reason_code="" item_status_reason_note="" />

</items>

</order>

</message_body>

</ns2:status_update_request_message>

</ns2:StatusUpdate>

</soap:Body>

</soap:Envelope>

Order Update Request Sample (Changing the Under Review Setting for a Brokered Backorder or Store Pickup Order)

Changing the Under Review setting for a brokered backorder: If the Send Held Orders to Locate (M18) system control value is selected, CWSerenade submits brokered backorders to Locate to fulfillment even if the order is held. With this setting, CWSerenade uses the order update message to notify Locate if the order’s status changes from held to open, or vice versa.

This message indicates a change to the setting of the Under Review flag in Locate. If the fulfilling location’s system supports it, this flag in the SubmitOrder message indicates that the order is not yet eligible for fulfillment, but that the inventory can be reserved and prepared for shipping. Once the Under Review flag is cleared, the order is eligible for shipment by the fulfilling location.

See the Send Held Orders to Locate (M18) system control value for a discussion.

Changing the Under Review setting for a store pickup order: If a store pickup order is held, CWSerenade still submits it to the Order Broker; however, if the order is held and the Payment at POS for Store Pickup (M16) system control value is unselected, CWSerenade submits the order with the Under Review flag selected. This flag indicates that the order should not be picked up until the Under Review flag is cleared, because CWSerenade needs to be able to collect payment first, but enables the store associates with the opportunity to reserve the inventory and prepare the order in the meantime. When the order is released from hold, CWSerenade sends an order update indicating to clear the Under Review flag if the Payment at POS for Store Pickup (M16) system control value is unselected.

Information included in the order update:

version: From the Locate Properties File

source: The concatenated company, order number, ship-to number, and order line sequence number

request id: The unique request ID number that the Order Broker uses to track each order

order ID: The CWSerenade order number, including the ship-to number

under review flag: Set to N if the order was released from hold; otherwise, set to Y if the order was previously open and then placed on hold

employee ID: The employee ID of the person who performed the update

location code: from the Locate Default Location (K51) if the Send Inventory by Warehouse to Locate (L06) system control value is unselected; otherwise, from the Locate location from the warehouse associated with the order

system code: from the Locate System (Serenade) (K50)

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">

<S:Body>

<ns2:StatusUpdate xmlns:ns2="http://microsretail.com/Locate">

<ns2:status_update_request_message>

<message_header xaction_response="" xaction_type="" message_type="">

<datetime>2015-03-03</datetime>

<version>5.0</version>

<source>CWSerenade</source>

<destination>LOCATE</destination>

</message_header>

<message_body>

<order request_id="87776" order_id="" order_status="" order_status_reason_code="" order_status_reason_note="">

<employee_id></employee_id>

<store_location location_cd="1" system_cd="6"/>

<items>

<item item_id="" item_qty="0" shipping_agent="UNITED PARCEL SERVICE COMPANY" tracking_number="ABC1234567890" item_status="intransit" fulfilling_location_cd="" fulfilling_system_cd="" line_no="1" requesting_system_line_no="0" status_date="" item_status_reason_code="" item_status_reason_note=""/>

</items>

</order>

</message_body>

</ns2:status_update_request_message>

</ns2:StatusUpdate>

</S:Body>

</S:Envelope>

Order Update Response Sample

Locate returns this response to the Order Update Request Sample (Changing the Under Review Setting for a Brokered Backorder or Store Pickup Order). See that sample message for background.

 

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<ns2:StatusUpdateResponse xmlns:ns2="http://microsretail.com/Locate">

<generic_response_message>

<message_header xaction_response="OK" xaction_type="INFO">

<datetime>2015-03-03T15:27:36.290</datetime>

<version>5.0</version>

<source>LOCATE</source>

<destination>CWSerenade</destination>

</message_header>

<message_body>

<response order_id="" request_id="87776" response_code="0">

<response_description>Status updated successfully.</response_description>

</response>

</message_body>

</generic_response_message>

</ns2:StatusUpdateResponse>

</soap:Body>

</soap:Envelope>

LO01_02 Serenade 5.0 March 2015