Generic Customer History API

Purpose: Use the generic customer history integration to provide a customer’s order history, or detailed information about a single order, to an external system such as CWStore. The external system can request and receive information on:

• all orders for the customer, a limited number of the customer’s most recent orders, or a single order

• all orders regardless of channel, such as e-commerce orders, or excluding a particular channel

• all ship-to’s for a multi-recipient order, or a particular ship-to

• detailed information that includes all items, payment methods, and ship-to’s on the order, or summary information about the header only

What’s required? The external system must pass either the customer number or the alternate customer number in the customer or order history request.

In this chapter:

Typical Flow

When is the Response Message Empty?

Setup Requirements

Customer History Request XML Message (CWCustHistIn)

- Customer History Request Message: Sample XMLs

Customer History Response XML Message (CWCustHistOut)

- Customer History Response Message: Sample XML

Detailed Order Inquiry Response XML Message (CWORDEROUT)

- Detailed Order Inquiry Response Message: Sample XML

Summary Order Inquiry Response XML Message (CWORDEROUT)

- Summary Order Inquiry Response Message: Sample XML

Typical Flow

A typical customer history inquiry flow would begin when a customer in a retail store has a question about an order placed in Order Management System.

1.

The store clerk inquires on history for the customer.

2.

The customer history request is processed:

• The store system sends a Customer History Request XML Message (CWCustHistIn) to the queue specified for the CUST_HIST process running in Working with Integration Layer Processes (IJCT) in Order Management System. The message uses the customer number in the store, which is the same as the alternate customer number in Order Management System. Typically, the request limits the number of orders in the response to no more than 15, in order to insure an acceptable response time.

• The CUST_HIST process sends the Customer History Response XML Message (CWCustHistOut), listing the customer’s orders to the store system.

3.

The store presents the list of orders, and summary information about each, onscreen.

4.

The store clerk selects an order from the list for further inquiry.

5.

The order inquiry request is processed:

• The store again generates the Customer History Request XML Message (CWCustHistIn); however, this request includes the specific order number or alternate order number (such as the store transaction number), and the send_detail flag is set to Y.

• The CUST_HIST process in Order Management System generates the Detailed Order Inquiry Response XML Message (CWORDEROUT), listing detailed information about the selected order, and sends it to the store. The detailed information includes sold-to, ship-to, and bill-to addresses, payment methods, items, and shipments.

6.

The store displays the detailed information about the order onscreen.

Alternate flow: Alternately, if the store clerk or customer know the specific order number for inquiry, they can start by sending the request message based on the order number, and use the send_detail flag to indicate whether Order Management System should send the full Detailed Order Inquiry Response XML Message (CWORDEROUT), or just the Summary Order Inquiry Response XML Message (CWORDEROUT) as a quick confirmation.

Requests from multiple systems: You can have the CUST_HIST process respond to customer history requests from multiple external systems by setting up a process queue for each system. For example, you can set up a process queue for both a retail store and a web storefront so you can send customer history to each of them.

Are orders in error or suspended status included? Orders that are in error (E) or suspended (S) status are not included in the customer history response; however, if the order history request specifies an order in error or suspended status, the system provides information on that order in the order history response.

Are quotes included? the system includes quotes in the customer history response; see Entering Pre-Order Quotes for an overview.

Finding the correct customer for the history request: Optionally, you can use this integration together with the customer inquiry (search) integration in order to enable an external system to first identify the customer record before requesting history for the specific customer. See Generic Customer Inquiry (Search) API for an overview of how you might use the customer inquiry (search) integration to find a customer’s customer number.

When is the Response Message Empty?

The CUST_HIST process sends an “empty” response when the request does not include sufficient valid data. The empty response indicates to the external system that Order Management System received the request, but it was incomplete or invalid. For example, the process sends an empty response when the request includes:

• an invalid company, or no company indicated.

• an invalid customer_number or alternate_sold_to_id.

• a customer_number that is not consistent with the specified alternate_sold_to_id.

• a customer that has no orders.

• a customer_number or alternate_sold_to_id that is not the sold-to customer for the specified direct_order_number or alternate_order_number.

• a last_name or postal_code without a specified direct_order_number or alternate_order_number.

• a last_name that is not the last name of the sold-to customer for the specified direct_order_number or alternate_order_number.

• a postal_code that is not the postal code of the sold-to customer for the specified direct_order_number or alternate_order_number.

• if the Require Last Name/Postal Code in Customer History Request (L76) system control value is selected, a valid direct_order_number or alternate_order_number without a valid customer_number, alternate_sold_to_id, last_name, or postal_code also specified.

• an invalid direct_order_number or alternate_order_number. Note: The alternate_order_number passed in the request message must be uppercase for the system to find the order based on alternate order number.

• a direct_order_ship_to_nbr and a direct_order_number or alternate_order_number that is not consistent with the ship-to number. For example, a ship-to number of 3 is indicated, but the specified order has only 2 ship-to’s.

• a customer who does not have any orders except those in the specified exclude_order_channel.

Depending on the type of information included in the request, the empty response resembles one of the following:

If the request includes information on the customer:

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

<Headers>

</Headers>

</Message>

 

If the request includes information on the order:

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

</Message>

 

Setup Requirements

To use the customer history API, you need to configure the CUST_HIST process in Working with Integration Layer Processes (IJCT), and send a correctly formatted Customer History Request XML Message (CWCustHistIn) to a queue specified for the job. Similarly, you must be prepared to receive the responses described in this topic.

The CUST_HIST process will process customer history requests from any source as long as the XML files are correctly formatted and contain the required information.

Note: You can also use the CWMessageIn web service to avoid the necessity of starting and stopping the CUST_HIST process. See Generic Web Services for more information.

CWMessageIn Web Service

You can use the CWMessageIn Web Service to route Customer History messages. In this situation, the target for each inbound message must match the Inbound program name for the integration layer process queue, as specified at the Integration Layer Process Queue Screen.

The CUST_HIST integration layer process can remain inactive and a queue is not required if the target is CUSTHISTIN in the XML message.

Web service authentication? Use the Working with Web Service Authentication (WWSA) menu option to define a valid user for basic web service authentication.

If you are using the CWMessageIn RESTful web service: You POST inbound CWMessageIn messages to the web service’s URI, or endpoint, of the RESTful service. The individual URL for the CWMessageIn RESTful service uses the following format: http://server:port/SerenadeSeam/sxrs/application/CWMessageIn, where server:port identifies the application server where the RESTful service is located and CWMessageIn is the name of the web service to call.

If you are using the CWMessageIn SOAP-based web service: The endpoint specified in the CWMessageIn.wsdl file is where you need to post messages in order for the CWMessageIn web service to process them. The endpoint is typically set to http://server:port/CWDirectCPService/services/CWMessageIn, where server:port identifies the application server where the wsdl is located and CWMessageIn is the name of the web service to call. The CWMessageIn SOAP-based web service requires that inbound messages be embedded in SOAP envelope tags.

Customer History Request XML Message (CWCustHistIn)

 

Important: Please note the following rules for numeric fields:

- Do not pass an alphanumeric value in a numeric field; doing so will cause the CUST_HIST process to go into a message wait status.

- Do not exceed the specified length of any numeric field; doing so will cause the value to be interpreted incorrectly.

- Alphanumeric fields are case-sensitive; an a is not equivalent to an A.

Important guidelines for best performance: For best response time when requesting customer history, you should limit the request to no more than 15 orders based on the number_of_orders attribute.

For more information: See:

Typical Flow for a discussion of when you might use this message.

Customer History Request Message: Sample XMLs for sample messages.

Generic Customer History API for an overview.

Attribute Name

Type

Length

Comments

Message

source

alpha

25

Identifies the source of the XML message.

target

alpha

25

Identifies the target of the XML message. RDC indicates the XML message is sent to Order Management System.

type

alpha

25

CUSTHISTIN

resp_qmgr

alpha

25

Informational only.

resp_q

alpha

25

Informational only.

CustomerHistoryRequest

company

numeric

3

Required. Indicates the company associated with the customer. Validated against the Company table; see Setting Up Companies (WCMP).

See When is the Response Message Empty? for information on when the CUST_HIST process sends an “empty” response based on the company number indicated.

Note: If the request includes either the customer_number or alternate_sold_to_id, the CUST_HIST process generates the Customer History Response XML Message (CWCustHistOut).

customer_number

numeric

9

Indicates the customer number for the sold-to customer on the order. Validated against the Customer Sold To table; see Creating and Updating Sold-to Customers (WCST). To retrieve customer history by customer, the request can specify either the customer_number or the alternate_sold_to_id, below.

See When is the Response Message Empty? for information on when the CUST_HIST process sends an “empty” response based on the customer_number indicated.

alternate_sold_to_id

alpha

15

Indicates the Alternate customer number or one of the alternate customer number cross-references for the sold-to customer. Typically, the alternate customer number identifies the customer in an external system, such as CWStore. This is the Interface customer code in the Customer Sold To table. The system also checks the Alternate Customer Number Cross Reference table for matches; see Working with Alternate Customer Number Cross-References for an overview.

 

 

 

If there is more than one customer with a matching alternate customer number, the CUST_HIST process selects the one created last, based on customer number. For example, if both customer 101 and customer 201 have alternate customer 400, the CUST_HIST process selects customer 201.

See When is the Response Message Empty? for information on when the CUST_HIST process sends an “empty” response based on the alternate_sold_to_id indicated.

Note: Selecting based on alternate customer number is not implemented with ghost customers. See Ghost Customers for an overview.

number_of_orders

numeric

5

Indicates the maximum number of orders to include in the response message. The CUST_HIST process uses this number only if the request is based on the customer_number or alternate_sold_to_id.

Note: Although this attribute is optional, limit a request based on customer information to no more than 15 orders to prevent a negative effect on response time. For example, if response time for a customer with 100 orders is about 30 seconds, restricting the number of orders to 15 reduces response time to five or six seconds.

If the request restricts the number of orders, the response includes only the most recent orders.

Note: If the request specifies either the direct_order_number or the alternate_order_number, the CUST_HIST process generates:

• the Detailed Order Inquiry Response XML Message (CWORDEROUT) if the send_detail flag is set to Y.

• the Summary Order Inquiry Response XML Message (CWORDEROUT) if the send_detail flag is set to N.

direct_order_

number

numeric

8

Indicates a single order to include in the response.

If you pass an order number and the Require Last Name/Postal Code in Customer History Request (L76) system control value is selected, you must also pass a valid customer_number, alternate_sold_to_id, last_name, or postal_code.

See When is the Response Message Empty? for information on when the CUST_HIST process sends an “empty” response based on the direct_order_number indicated.

direct_order_ship_

to_nbr

numeric

3

Optional. Identifies the shipping address to include on a multiple ship-to order. In order inquiry, the ship-to number appears as a suffix to the order number, separated by a hyphen (-).

See When is the Response Message Empty? for information on when the CUST_HIST process sends an “empty” response based on the direct_order_ship_to_nbr indicated.

alternate_order_

number

alpha

30

Indicates the order number used in an external system, such as CWStore, and stored in the E-commerce order number field in the Order Header Extended table. This field is labeled the Alternate order at the Display Order Properties Screen.

Note: This field is case-sensitive. Since the E-commerce order number is stored in uppercase in the Order Header Extended table, the number passed in the request message must also be uppercase in order to match the order.

Ignored if the request also includes a direct_order_number.

If you pass an alternate order number and the Require Last Name/Postal Code in Customer History Request (L76) system control value is selected, you must also pass a valid customer_number, alternate_sold_to_id, last_name, or postal_code.

See When is the Response Message Empty? for information on when the CUST_HIST process sends an “empty” response based on the alternate_order_number indicated.

send_detail

alpha

1

Indicates whether to send detail or summary information in the response message.

Valid values are:

Y = Send the Detailed Order Inquiry Response XML Message (CWORDEROUT)

N = Send the Summary Order Inquiry Response XML Message (CWORDEROUT)

This flag is not used when the request is based on the customer_number or alternate_sold_to_id; in this case, the CUST_HIST process always sends the Customer History Response XML Message (CWCustHistOut).

If the send_detail setting is not included in the request, the CUST_HIST process sends the Summary Order Inquiry Response XML Message (CWORDEROUT).

exclude_order_

channel

alpha

1

Optional. Indicates a specific order channel, such as retail orders, to exclude from the Customer History Response XML Message (CWCustHistOut). The CUST_HIST process checks the Internet order field in the Order Header table for the order channel. However, the CUST_HIST process does not consider this setting when the request is based on direct_order_number or alternate_order_number.

last_name

alpha

25

The last name of the sold-to customer on the order. Validated against the Customer Sold To table; see Creating and Updating Sold-to Customers (WCST). Ignored if the request also includes a customer_number or alternate_sold_to_id.

See When is the Response Message Empty? for information on when the CUST_HIST process sends an “empty” response based on the last_name indicated.

Available in: 2.0 (version 3.5 of Order Management System).

postal_code

alpha

10

The postal code of the sold-to customer on the order; the system considers the postal code a match if the first 5 positions of the postal code match. For example, if the postal code on the order is 01468-1566, you can pass 01468-1566, 01468-1234, or 01468 to match. Validated against the Customer Sold To table; see Creating and Updating Sold-to Customers (WCST). Ignored if the request also includes a customer_number or alternate_sold_to_id.

See When is the Response Message Empty? for information on when the CUST_HIST process sends an “empty” response based on the postal_code indicated.

Available in: 2.0 (version 3.5 of Order Management System).

Customer History Request Message: Sample XMLs

Samples of the Customer History Request XML Message (CWCustHistIn) are presented below.

Customer History Request by Customer: If the request includes either the customer_number or alternate_sold_to_id, the CUST_HIST process generates the Customer History Response XML Message (CWCustHistOut).

 

<Message source="IDC" target="RDC" type="CWCUSTHISTIN" resp_qmgr="IDCSRV" resp_q="STORE_CLIENT.TO.IDCSRV.CUST_HIST.V78">

<CustomerHistoryRequest company="555" alternate_sold_to_id="6" number_of_orders="15" send_detail="N" exclude_order_channel="K" />

</Message>

Customer History Request by Order (Detail): If the request specifies either the direct_order_number or the alternate_order_number, the CUST_HIST process generates the Detailed Order Inquiry Response XML Message (CWORDEROUT) if the send_detail flag is set to Y.

 

<Message source="IDC" target="RDC" type="CWCUSTHISTIN" resp_qmgr="IDCSRV" resp_q="OPSWEB.FROM.CWIAS400.CUST_HIST.75Q">

<CustomerHistoryRequest company="555" alternate_sold_to_id="6" number_of_orders="15" direct_order_number="7829" direct_order_ship_to_nbr="1" send_detail="Y" exclude_order_channel="K" />

</Message>

Customer History Request by Order (Summary): If the request specifies either the direct_order_number or the alternate_order_number, the CUST_HIST process generates the Summary Order Inquiry Response XML Message (CWORDEROUT) if the send_detail flag is set to N.

<Message source="IDC" target="RDC" type="CWCUSTHISTIN" resp_qmgr="IDCSRV" resp_q="OPSWEB.FROM.CWIAS400.CUST_HIST.75Q">

<CustomerHistoryRequest company="555" alternate_sold_to_id="6" number_of_orders="15" direct_order_number="7829" direct_order_ship_to_nbr="1" send_detail="N" exclude_order_channel="K" />

</Message>

Customer History Response XML Message (CWCustHistOut)

When the Customer History Request XML Message (CWCustHistIn) includes customer information, the CUST_HIST process generates an XML response laid out as follows.

Note:

• Attributes are included in the response only if they contain a value. Blank attributes are not passed.

• Numeric fields use implied decimals; for example, a value of $12.34 is presented as 1234.

For more information: See:

Detailed Order Inquiry Response XML Message (CWORDEROUT) for descriptions of each attribute.

Typical Flow for a discussion of when you might use this message.

Customer History Response Message: Sample XML for a sample message.

Message

source

target

type

Header

company_code

order_id

reference_order_number

customer_number

alternate_sold_to_id

bill_to_number

order_date

order_channel

bill_me_later_ind

ShipTo

ship_to_number

sub_total

discount_total

shipping

additional_shipping

tax

additional_charges

handling

order_total

gst

pst

ship_to_status

gift_order

purchase_order_nbr

discount_pct

ship_via_code

ship_via_description

customer_number

permanent_ship_to_number

Customer History Response Message: Sample XML

A sample of the Customer History Response XML Message (CWCustHistOut) is presented below. The CUST_HIST process generates this message if the Customer History Request XML Message (CWCustHistIn) includes either the customer_number or alternate_sold_to_id.

 

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

<Headers>

<Header company_code="555" order_id="7829" reference_order_number="104052" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="01042006" order_channel="I" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="500" shipping="50" tax="25" order_total="575" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7828" reference_order_number="104051" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="01042006" order_channel="I" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="500" shipping="50" tax="25" order_total="575" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7827" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10302006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="1000" shipping="100" tax="50" order_total="1150" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7826" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10292006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="1000" shipping="100" tax="50" order_total="1150" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7825" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10292006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="1000" shipping="100" tax="50" order_total="1150" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7824" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10292006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="1000" shipping="100" tax="50" order_total="1150" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7823" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10292006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="1000" shipping="100" tax="50" order_total="1150" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7819" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10292006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="1000" shipping="100" tax="50" order_total="1150" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7818" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10292006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="500" shipping="50" tax="25" order_total="575" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7817" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10292006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="1000" shipping="100" tax="50" order_total="1150" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7816" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10292006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="1000" shipping="100" tax="50" order_total="1150" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7815" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10292006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="1000" shipping="100" tax="50" order_total="1150" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7814" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10292006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="1000" shipping="100" tax="50" order_total="1150" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7813" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10292006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="1000" shipping="100" tax="50" order_total="1150" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7812" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10292006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="1000" shipping="100" tax="50" order_total="1150" ship_to_status="X" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

<Header company_code="555" order_id="7811" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="10292006" bill_me_later_ind="N" >

<ShipTos>

<ShipTo ship_to_number="1" sub_total="1000" shipping="100" tax="50" order_total="1150" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" >

</ShipTo>

</ShipTos>

</Header>

</Headers>

</Message>

Detailed Order Inquiry Response XML Message (CWORDEROUT)

When the Customer History Request XML Message (CWCustHistIn) includes order information and the send_detail attribute is set to Y, the CUST_HIST process generates an XML response laid out as follows.

For more information: See:

Summary Order Inquiry Response XML Message (CWORDEROUT) for information on the response generated when the Customer History Request XML Message (CWCustHistIn) includes order information and the send_detail attribute is set to N.

Typical Flow for a discussion of when you might use this message.

Detailed Order Inquiry Response Message: Sample XML for a sample message.

Note: The Version out setting of the ORDER_IN job, rather than the CUST_HIST job, controls the outbound version setting of the CWORDEROUT message. See XML Versions for a discussion.

.

Attribute Name

Type

Length

Comments

Message

source

alpha

25

Identifies the source of the XML message. RDC indicates the XML message originates from Order Management System.

target

alpha

25

Identifies the target of the XML message.

type

alpha

25

Identifies the type of information in the XML message.

Header

company_code

numeric

3

Indicates the company associated with the customer; see Setting Up Companies (WCMP).

order_id

numeric

8

A unique number identifying the order. If the response includes multiple orders, it starts with the most recent order first and presents orders in descending sequence by order number.

reference_order_

number

alpha

30

The E-commerce order number in the Order Header Extended table, which is used to store an alternate order number, such as a sale transaction received from CWStore through the point of sale integration. This field is labeled the Alternate order at the Display Order Properties Screen.

customer_number

numeric

9

A unique number identifying the sold-to customer.

alternate_sold_to_id

alpha

15

The Alternate customer number, if any, for the sold-to customer. Typically, the alternate customer number identifies the customer in an external system, such as CWStore.

bill_to_number

numeric

7

The bill-to account number, if any, associated with the order; see Creating and Updating Bill-to Customers (WCBT).

order_date

numeric

8

The Order date in the Order Header table. Displayed on the Order Inquiry Header Screen. MMDDYYYY format.

order_channel

alpha

2

From the Internet order field in the Order Header table. Typical settings are:

• blank = an order taken in Order Management System

• I = an internet order

• P = a point of sale order

C = an order from Order Broker

bill_me_later_ind

alpha

1

Not currently implemented.

order_status

alpha

1

The current status of the order. Valid values are:

C = Canceled

H = Held

X = Closed

E = Error

S = Suspended

Q = Quote

Included only if the status is not open (blank).

Orders in error (E) or suspended (S) status are not included in the customer history response, although they are available through an order inquiry request and response .

order_type

alpha

1

The Order type field in the Order Header table. Defined in and validated against the Order Type table; see Establishing Order Types (WOTY).

order_type_

description

alpha

30

The description from the Order Type table; see Establishing Order Types (WOTY).

entered_date

numeric

8

The Entered date in the Order Header table. MMDDYYYY format.

entered_time

numeric

6

The Entered time in the Order Header table, which you can review at the Display Order Properties Screen.

email_confirm_date

numeric

8

The date when the system generated an automatic email confirmation or the Outbound Email XML Message (CWEmailOut). From the Order Header table (Note: This field might be listed as Future use date 1). MMDDYYYY format. Included only if an email confirmation or outbound XML message was generated.

source_code

alpha

9

The source code from the order header; see Working with Source Codes (WSRC).

offer_id

alpha

3

The offer associated with the source code on the order header.

sales_rep_number

numeric

7

The salesman number assigned to the order.

From the SLS Salesman # field in the Order Header table.

Available in: 4.0 (release 2.5 of Order Management System).

sales_rep_name

alphanumeric

30

The name of the salesman assigned to the order.

From the SLS Name field in the Salesman table.

Available in: 4.0 (release 2.5 of Order Management System).

Note: The sold-to name and address is from the Customer Sold To table. See Creating and Updating Sold-to Customers (WCST) for a description of the sold-to information that is included in the customer history response.

sold_to_prefix

alpha

3

 

sold_to_fname

alpha

15

 

sold_to_initial

alpha

1

 

sold_to_lname

alpha

25

 

sold_to_suffix

alpha

3

 

sold_to_company

alpha

30

 

sold_to_busres

alpha

1

 

sold_to_address1

alpha

32

 

sold_to_address2

alpha

32

 

sold_to_address3

alpha

32

 

sold_to_address4

alpha

32

 

sold_to_apartment

alpha

10

 

sold_to_city

alpha

25

 

sold_to_state

alpha

2

 

sold_to_state_

description

alpha

25

As set up through Setting Up the Country Table (WCTY).

sold_to_zip

alpha

10

 

sold_to_country

alpha

3

 

sold_to_day_phone

alpha

14

 

sold_to_eve_phone

alpha

14

 

sold_to_fax_phone

alpha

14

The third (fax or mobile) number.

allow_rent

alpha

1

 

allow_mail

alpha

1

 

sold_to_opt_in

alpha

2

 

ind_number

numeric

3

Not implemented.

Note: The bill-to name and address is from the Customer Bill To table. See Creating and Updating Bill-to Customers (WCBT) for a description of the bill-to information.

bill_to_prefix

alpha

3

 

bill_to_fname

alpha

15

 

bill_to_initial

alpha

1

 

bill_to_lname

alpha

25

 

bill_to_suffix

alpha

3

 

bill_to_company

alpha

30

 

bill_to_busres

alpha

1

 

bill_to_address1

alpha

32

 

bill_to_address2

alpha

32

 

bill_to_address3

alpha

32

 

bill_to_address4

alpha

32

 

bill_to_apartment

alpha

10

 

bill_to_city

alpha

25

 

bill_to_state

alpha

2

 

bill_to_state_

description

alpha

25

As set up through Setting Up the Country Table (WCTY).

bill_to_zip

alpha

10

 

bill_to_country

alpha

3

 

bill_to_day_phone

alpha

14

 

bill_to_eve_phone

alpha

14

 

bill_to_fax_phone

alpha

14

The third (fax or mobile) number.

sales_rep_number

numeric

7

The salesman number assigned to the order. From the SLS Salesman # field in the Order Header table.

Available in: 4.0 (release 2.5 of Order Management System).

sales_rep_name

alphanumeric

30

The name of the salesman assigned to the order. From the SLS Name field in the Salesman table.

Available in: 4.0 (release 2.5 of Order Management System).

sales_rep_store

alphanumeric

10

The store number assigned to the order.

Store numbers are defined in and validated against the Store Cross Reference table; see Work with Store Cross Reference (WSCR).

Note: The store number defined for the order does not have to be associated with the salesrep defined on the Order Header.

Available in: 6.0 (release 3.5 of Order Management System).

Payment

Note: See the Display Order Pay Type Screen (1 of 2) for more information on order payment methods.

payment_seq_

number

numeric

2

Indicates the sequence in which the payment methods were added to the order. From the Order Payment Method table.

pay_type

numeric

2

A unique code to identify a form of payment. From the Pay Type table; see Working with Pay Types (WPAY).

pay_type_desc

alpha

30

The description associated with the pay type.

credit_card_nbr

alpha

20

The customer’s credit card account number used on this order. Credit card pay types only.

If you use credit card tokenization, this number may be a token rather than the actual credit card number.

If you use credit card encryption, the credit card number in this message is not encrypted; however, the system encrypts the credit card number in the Order Management System database.

credit_card_exp_dt

numeric

4

The month and year when the customer’s credit card number expires. MMYY format. Credit card pay types only.

credit_card_auth_dt

numeric

8

The month, day, and year that your credit card authorization service confirmed or authorized the customer's credit card for the order, or you manually authorized the credit card. Included only if the authorization has not already been used. MMDDYYYY format.

credit_card_auth_

nbr

alpha

7

The number you entered when you manually authorized the credit card, or that the authorization service assigned when authorizing the credit card. Included only if the authorization has not already been used.

check_nbr

numeric

9

For a check pay type, a number identifying the customer’s check number.

amt_to_chg

numeric

9.2

The total dollar amount to charge against the payment method. Not included for the "catch-all" payment method on an order if there is more than one payment method.

start_date

numeric

4

For a stored value card or debit card pay type, the date when the card is effective. MMYY format. See Types of Credit Cards for more information.

card_issue_nbr

alpha

2

For a debit card pay type, an incremental number assigned by the bank to indicate how many times the card has been replaced due to loss or theft. See Types of Credit Cards for more information.

cc_last_four

numeric

4

The last four digits of the credit card number on the order.

From the IPM CC Last 4 field in the Order Payment Method table.

Available in: 9.0 (release 15.0 of Order Management System).

ShipTo

See Reviewing the Order Inquiry Header Screen for more information on the order ship-to.

ship_to_number

numeric

3

A number to identify the shipping address on the order. In order inquiry, the ship-to number appears as a suffix to the order number, separated by a hyphen (-).

sub_total

numeric

9.2

The merchandise total for this shipping address on the order.

See the Order Inquiry Header Screen for a description of each of the order totals.

discount_total

numeric

9.2

The total discount for the shipping address, displayed at the Order Inquiry Header Screen.

shipping

numeric

7.2

The total freight charge for this shipping address.

additional_shipping

numeric

7.2

The total additional freight charge for this shipping address.

tax

numeric

7.2

The total tax, excluding any hidden tax, for this shipping address.

additional_charges

numeric

7.2

The total additional charges for this shipping address.

handling

numeric

7.2

The total special handling for this shipping address.

order_total

numeric

11.2

The total of all merchandise, freight, tax, and charges for the shipping address.

gst

numeric

7.2

The total Canadian Goods and Service Tax, if any, that applies to the order shipping address. The GST and the PST are included in the tax total.

pst

numeric

7.2

The total Canadian Provincial Services Tax, if any, that applies to the order shipping address. The GST and the PST are included in the tax total.

ship_to_status

alpha

1

Indicates the status of this shipping address. This status could differ from the order header if, for example, the order has multiple shipping addresses and you canceled just one. Included only if the status is not open (blank).

gift_order

alpha

1

From the Gift order flag in the Order Ship To table; this is the Gift flag on the Display Order Properties Screen. Valid values are:

Y = This is a gift order

N = This is not a gift order

purchase_order_nbr

alpha

15

The purchase order number, if any, in the Order Ship To table; this is the Purchase order # on the Display Order Properties Screen.

discount_pct

numeric

5.2

The discount percentage, if any, from the Order Ship To table.

ship_via_code

numeric

2

The ship via used for this shipping address, from the VIA ship via code in the Order Ship To table; this is the Ship via on the Display Order Properties Screen.

ship_via_

description

alpha

30

The description of the ship via, as set up through Working with Ship Via Codes (WVIA).

shipping_override

alpha

1

Indicates whether the Freight override flag is set. Set to Y if there is a freight override; otherwise, not included. The Display Order Properties Screen displays the Freight override flag on the order.

customer_number

numeric

9

Included only if there is an order recipient.

permanent_ship_to_number

numeric

3

Included only if the order uses a permanent ship-to.

Note: The ship-to name and address can default from the Customer Sold To (recipient customer), Customer Ship To (permanent ship-to), or Order Ship To tables (order-level shipping address), depending on the type of shipping address.

ship_to_prefix

alpha

3

 

ship_to_fname

alpha

15

 

ship_to_initial

alpha

1

 

ship_to_lname

alpha

25

 

ship_to_suffix

alpha

3

 

ship_to_company

alpha

30

 

ship_to_busres

alpha

1

 

ship_to_address1

alpha

32

 

ship_to_address2

alpha

32

 

ship_to_address3

alpha

32

 

ship_to_address4

alpha

32

 

ship_to_apartment

alpha

10

 

ship_to_city

alpha

25

 

ship_to_state

alpha

2

 

ship_to_state_description

alpha

25

As set up through Setting Up the Country Table (WCTY).

ship_to_zip

alpha

10

 

ship_to_country

alpha

3

 

cancel_date

numeric

7

The date when the order will be canceled if all lines have not shipped, in MMDDYY format. The system will not reserve inventory one day prior to the cancellation date, because the order would not reach the customer in time.

Any items that have not shipped one day prior to the cancellation date display on the Order Cancellation List. Customer service uses this list of pending order cancellations to contact each customer and request more time. If this is not possible, Customer Service must cancel the order manually through Order Maintenance.

For pre-order quotes, this is the date the quote for an order expires; see Cancelling a Quote through Order Maintenance.

From the OST Cancel date field in the Order Ship To table.

Available in: 4.0 (release 2.5 of Order Management System).

delivery_type

alpha

13

Identifies an order using the Order Broker integration:

Store Pickup = the customer picks the entire order up at a store location where the inventory is available

Ship for Pickup = the order is shipped to a store location, where the customer picks it up after arrival

The ship-to address indicates the selected store for either a store pickup or a ship-for-pickup order. The Detail element in the response message for a store pickup order also includes the order broker status, pickup location, and pickup system.

See Ship-for-Pickup Orders or Store Pickup Orders for more information.

Available in: 5.0 (release 3.0 of Order Management System).

Detail

See Reviewing Order Details for more information on the detail lines on an order; also, see Performing Initial Item Entry (MITM) for more information on the item/SKU itself.

line_seq_number

numeric

5

A sequence number to identify each detail line on the order.

short_sku_number

numeric

7

A unique number, assigned by the system and stored in the SKU table, to uniquely identify each item/SKU.

retail_ref_number

numeric

15

A retail reference or alternate product number to identify the item/SKU. Stored in the SKU table.

status

alpha

1

The status of the order line. Valid values are:

B = Express Bill

C = Canceled

E = Error

H = Held

S = Soldout

X = Closed

A status code is not included if the order line status is open (blank).

alias_item

alpha

12

An alternate item code, used to track sales for different placements of the item. From the Order Detail table; included only if there was an alias used to order the item/SKU.

item_id

alpha

12

A unique code to identify an item.

item_description

alpha

30

The description of the item.

sku

alpha

14

The item’s unique characteristics, such as its color or style. Included only if the item has SKUs.

sku_description

alpha

40

The description of the SKU.

actual_price

numeric

7.2

The unit price of the item from the Order Detail table. Not included for free gift or no-charge items.

offer_price

numeric

7.2

The unit price of the item as defined for the Item Offer or SKU offer and saved in the Order Detail table.

original_retail_price

numeric

7.2

The Original Retail Price from the SKU table; this is the Original retail $ at the second Create/Change/Display SKU screen in Work with Items/SKUs.

drop_ship

alpha

1

Valid values are:

Y = This is a drop-ship item

N = This is not a drop-ship item. If the item is reserved on the order detail line, this flag is set to N regardless of whether the item is flagged as a drop-ship in the Item table.

detail_ship_via

numeric

2

The ship via, if any, entered at the Work with Order Line Screen as an override to the ship via on the order header.

The three following values are related to store pickup orders. See Store Pickup Orders for an overview.

pickup_type

alphanumeric

2

Set to SP for a store pickup order.

pickup_system_location

alphanumeric

10

A code identifying the system associated with the store pickup location. From the Name in OROB for Point of Sale (L09) system control value. Passed only for a store pickup order.

pickup_location

alphanumeric

10

A code identifying the location where the customer picks up the item. Passed only for a store pickup order.

order_quantity

numeric

5

The total quantity of the item ordered on the detail line. This number is negative for returns you process by entering a negative quantity in order entry.

cancel_quantity

numeric

5

Included only if any quantity of the item on the order has been canceled.

sold_out_quantity

numeric

5

Included only if any quantity of the item on the order has been sold out.

ship_quantity

numeric

5

Included only if any quantity of the item on the order has been shipped. This number is negative for returns you process by entering a negative quantity in order entry.

return_quantity

numeric

5

Included only if any quantity of the item on the order has been returned. Not included for returns you process by entering a negative quantity in order entry.

expected_ship_date

numeric

8

Indicates the date when the next purchase order you can use to fulfill this order line is expected, based on purchase order layering. MMDDYYYY format. See Purchase Order Layering and Backorder Notifications for more information on purchase order layering.

This date is included for drop ship items only if the Assign Drop Ship Expected Ship Date (I59) system control value is selected. See that system control value for more information.

last_ship_date

numeric

8

Included only if there has been a shipment, or if you processed a return by entering a negative quantity in order entry. MMDDYYYY format.

reserved_

warehouse

numeric

3

The warehouse where the order detail line is currently reserved. Sent only if there is a reserve_quantity.

reserve_quantity

numeric

5

Included only if any quantity of the item on the order is reserved.

tax

numeric

10.5

The total tax amount applied to the order detail line.

gst_tax

numeric

10.5

The total GST tax, if any, applied to the order detail line. See GST Rate (A90) for a discussion.

pst_tax

numeric

10.5

The total PST tax, if any, applied to the order detail line. See GST Rate (A90) for a discussion.

set_main_item

alpha

1

Indicates whether the item is the main item of a set:

Y = a main set item

N = not a main set item

Available in: 2.0 (release 1.1 of Order Management System).

set_component_item

alpha

1

Indicates whether the item was added to the order as a component of a set:

Y = a set component

N = not a set component

Available in: 2.0 (release 1.1 of Order Management System).

set_seq_number

numeric

3

Indicates the sequence number that uniquely identifies a set and its components on this order. The main set item and its components have the same set sequence number. This attribute is not included for items that are not part of a set.

Available in: 2.0 (release 1.1 of Order Management System).

country_of_origin

alpha

3

A code representing the country where the item originated.

From the SKU Country of Origin field in the SKU table.

Available in: 4.0 (release 2.5 of Order Management System).

harmonize_code

alpha

16

A code that prints on customs documents for international shipments. If you charge duty on international orders, use this field to define the item’s duty rate.

From the Harmonize code field in the SKU table.

Available in: 4.0 (release 2.5 of Order Management System).

broker_status

alpha

15

The status of an Order Broker request. Included only for store pickup, ship-for-pickup, retail pickup, and delivery orders fulfilled through the Order Broker integration. Not included for brokered backorders.

Possible broker_status values are listed below, with the related Order Broker statuses provided in parentheses if they are different:

• Accepted

• Acknowledged

• Canceled

• Error

• Fulfilling (Picking)

• In Process

• In Transit

• New

• Partially Fulfilled (Partial Fulfill)

• Pending Cancel

• Polled

• Received by Store

• Rejected

• Shipped

See the Order Broker Status Summary Table for a description of each status, and see Order Broker Integration for an overview.

Available in: 5.0 (release 3.0 of Order Management System).

line_locate_eligible

alpha

1

- Indicates if a backordered line meets the Rules for Submitting Backorders to the Order Broker, except that the order does not yet need to be fully paid and authorized.

 

 

 

Note: This flag is included regardless of current order status provided the item is valid. Even if this flag is set to Y, it is possible that the line cannot be fulfilled as a brokered backorder if, for example, the Order Broker cannot find a location with the item available. It is also possible that the line was already submitted to the Order Broker, and then returned to normal backorder processing if the Order Broker did not find a location to fulfill it.

Available in: 6.0 (release 3.5 of Order Management System).

gift_wrap

alpha

1

Indicates whether the item is gift wrapped.

Y = The item is gift wrapped.

N = The item is not gift wrapped.

From the Gift wrap field in the Order Detail table.

Note: Any gift wrap charges are included in the Handling field for the Order Ship To.

Available in: 7.0 (release 4.0 of Order Management System).

Shipment

Included only if a quantity shipped or returned exists for the order line. See Reviewing Financial Information on an Order for more information on invoices for an order.

invoice_nbr

numeric

7

A unique number to identify an invoice. The system creates an invoice when you confirm shipment or process a return.

invoice_ship_quantity

numeric

5

The total unit quantity of the item shipped and billed on this invoice. The quantity is negative for a return.

invoice_ship_date

numeric

8

The date when the shipment was confirmed, or when the return was credited. MMDDYYYY format.

invoice_tracking_

nbr

alpha

30

From the Manifest Upload Audit table. The system includes all tracking numbers in the Manifest Upload Audit table that are defined for the invoice detail (for example, the item shipped in more than one carton). The tracking number in this table can come from the PC Manifesting Interface, Generic Pick In API (Shipments, Voids, and Backorders), or Manually Confirming Shipments (MCON).

Brokered backorders: Since there is no Manifest Upload Audit record for a brokered backorder, the message includes a tracking number if there is an Order Transaction History record of a shipment for the same date as the invoice. The system identifies the tracking number for an order line based on Order Transaction History notes, including:

• the line number in a note such as Ln#: 5 Shipped by Broker

• the tracking number in a note beginning with ----TRK#. Anything to the right of ----TRK#. in the invoice_tracking_nbr attribute. For example, if the Order Transaction History note is ----TRK#: GHI123, the invoice_tracking_nbr is GHI123.

Note: If the system writes the Order Transaction History for the shipment of a brokered backorder on a date that differs from the invoice date, then no tracking information is included in the customer history response. This situation might occur if, for example, Order Management System receives the status update of the shipment before midnight, but the billing async job does not create the invoice until after the job is automatically stopped and restarted, so that the next date is assigned to the invoice.

invoice_ship_via_code

numeric

2

From the Manifest Upload Audit table. See PC Manifesting Interface for an overview.

Not included for brokered backorders.

invoice_ship_via_desc

alpha

30

From the ship via description, as set up through Working with Ship Via Codes (WVIA).

Brokered backorders: From the Order Transaction History note beginning with ----VIA. See the invoice_tracking_nbr, above, for a discussion.

invoice_ship_via_type

alpha

2

The one-position or two-position code that identifies the type of ship via. Included for brokered backorders only if the shipping agent passed from the Order Broker matches a valid ship via in Order Management System.

Available in: 6.0 (release 3.5 of Order Management System).

invoice_tracking_URL

alpha

300

The URL to use when linking to shipment tracking information on the shipper’s web site. Built from the record in the TRACKVIA table with a matching ship via type: for example, if the ship via type is FX, the tracking URL should create a link to the Federal Express web site. All Parcel Post ship via types (PP, P1, P2, P3, and P4) use the TRACKVIA record whose ship via type is PP. Included only if there is a ship via type in the TRACKVIA table that matches the ship via used.

Available in: 6.0 (release 3.5 of Order Management System).

Detailed Order Inquiry Response Message: Sample XML

A sample of the Detailed Order Inquiry Response XML Message (CWORDEROUT) is presented below. The CUST_HIST process generates this message if the Customer History Request XML Message (CWCustHistIn) specifies either the direct_order_number or the alternate_order_number and the send_detail flag is set to Y.

 

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

<Header company_code="555" order_id="7829" reference_order_number="104052" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="01042006" order_channel="I" bill_me_later_ind="N" order_type="X" order_type_description="E-COMMERCE ORDER TYPE" entered_date="01042006" entered_time="130723" source_code="2006" offer_id="205" sold_to_prefix="MS." sold_to_fname="MARY" sold_to_initial="T" sold_to_lname="JOHNSON" sold_to_busres="R" sold_to_address1="109 RIVER LN" sold_to_city="TEMPLETON" sold_to_state="MA" sold_to_state_description="MASSACHUSETTES" sold_to_zip="01468" sold_to_country="USA" sold_to_day_phone=" 978 555-2000" allow_rent="Y" allow_mail="Y" sold_to_opt_in="O1" bill_to_fname="MARY" bill_to_initial="T" bill_to_lname="JOHNSON" bill_to_busres="R" bill_to_address1="109 RIVER LN" bill_to_city="TEMPLETON" bill_to_state="MA" bill_to_state_description="MASSACHUSETTS" bill_to_zip="01468" bill_to_country="USA" >

<Payments>

<Payment payment_seq_number="1" pay_type="4" pay_type_desc="CAT 2 CC, C OMS VISA" credit_card_nbr="4111111111111111" credit_card_exp_dt="1205" start_date="1204"/>

</Payments>

<ShipTos>

<ShipTo ship_to_number="1" sub_total="500" shipping="50" tax="25" order_total="575" gift_order="N" ship_via_code="1" ship_via_description="UPS GROUND" ship_to_prefix="MS." ship_to_fname="MARY" ship_to_initial="T" ship_to_lname="JOHNSON" ship_to_busres="R" ship_to_address1="109 RIVER LN" ship_to_city="TEMPLETON" ship_to_state="MA" ship_to_state_description="MASSACHUSETTS" ship_to_zip="01468" ship_to_country="USA" >

<Details>

<Detail line_seq_number="1" short_sku_number="1782" item_id="2005ITEM1" item_description="2005ITEM1 DESCRIPTION" actual_price="500" offer_price="500" drop_ship="N" order_quantity="1" reserved_warehouse="205" reserve_quantity="1">

</Detail>

</Details>

</ShipTo>

</ShipTos>

</Header>

</Message>

Summary Order Inquiry Response XML Message (CWORDEROUT)

When the Customer History Request XML Message (CWCustHistIn) includes order information and the send_detail attribute is set to N, the CUST_HIST process generates an XML response without details.

See Detailed Order Inquiry Response XML Message (CWORDEROUT) for information on the response generated when the Customer History Request XML Message (CWCustHistIn) includes order information and the send_detail attribute is set to Y.

For more information: See Detailed Order Inquiry Response XML Message (CWORDEROUT) for descriptions of each attribute. Also, see Typical Flow for a discussion of when you might use this message.

Message

source

target

type

Header

company_code

order_id

reference_order_number

customer_number

alternate_sold_to_id

bill_to_number

order_date

order_channel

bill_me_later_ind

Summary Order Inquiry Response Message: Sample XML

A sample of the Summary Order Inquiry Response XML Message (CWORDEROUT) is presented below. The CUST_HIST process generates this message if the Customer History Request XML Message (CWCustHistIn) specifies either the direct_order_number or the alternate_order_number and the send_detail flag is set to N.

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

<Header company_code="555" order_id="7829" reference_order_number="104052" customer_number="6" alternate_sold_to_id="6" bill_to_number="3" order_date="01042006" order_channel="I" bill_me_later_ind="N" >

</Header>

</Message>

ST01_08 OROMS 17.0 2018 OTN