How-to Guide - Soap API - Orders
Orders API
The Order API is used to get details about an order. It can also be used to request cancellation and return an order or an item within an order. It cannot be used to submit an order - that must be done by creating a basket and submitting it through the checkout flow. Following is the list of Orders APIs covered in this section:
Find Order
This service provides the list of order headers for the search criteria provided in the request from the POS.
Request
Request Service Name
CustomerOrdersService
Request Operation
listOrderHeaders
Request Endpoint
axis2/services/CustomerOrdersService
Request Body
Element | Mandatory / Optional | Type | Description |
---|---|---|---|
criteria | Mandatory | complex | This contains the search criteria that is applied to find the order. This consists of the following filters: - distinct - maxRows - orderByColumns - suppressDefaultOrderBy - createdDateStartFilter - createdDateEndFilter - customerNameFilter - customerFirstNameFilter - customerSurnameFilter - customerNumberFilter - customerOrderIdFilter - customerPostcodeFilter - referenceIdFilter - transactionIdFilter - searchMultipleIdFilter - customerOrderTypeIdFilter - locationIdFilter - emailFilter - phoneCompoundFilter - userIdFilter |
Response
The FindOrder
API fetches data from the customerorderheaders
Table.
Response Headers
There are no response headers.
Response Body
Element | Type | Description |
---|---|---|
list | Complex | Object containing the information about each order of the customer. |
outcome | Complex | The final status of the response. |
Request & Response Examples
Request
Find Order using Customer surname of 'baldwin':
Request
<ns:listOrderHeaders xmlns:ns="http://www.enactor.com/orders/CustomerOrdersService">
<retail:listOrderHeadersRequest xmlns:retail="http://www.enactor.com/retail" xmlns:core="http://www.enactor.com/core">
<retail:criteria>
<core:distinct>false</core:distinct>
<core:maxRows>0</core:maxRows>
<core:orderByColumns>
<core:propertyName>createdDate.localDateTime</core:propertyName>
<core:sortOrder>DESCENDING</core:sortOrder>
</core:orderByColumns>
<core:orderByColumns>
<core:propertyName>customerOrderId</core:propertyName>
<core:sortOrder>DESCENDING</core:sortOrder>
</core:orderByColumns>
<core:suppressDefaultOrderBy>false</core:suppressDefaultOrderBy>
<retail:createdDateEndFilter/>
<retail:createdDateStartFilter/>
<retail:customerNameFilter/>
<retail:customerFirstNameFilter>
<core:MatchTextValueFilter>
<core:id>CustomerFirstName</core:id>
<core:forceApplicable>false</core:forceApplicable>
<core:orColumns>false</core:orColumns>
<core:comparisonOperator>STARTS_WITH</core:comparisonOperator>
<core:orNull>false</core:orNull>
<core:width>20</core:width>
<core:useValueForAllProperties>false</core:useValueForAllProperties>
<core:caseInsensitive>true</core:caseInsensitive>
<core:submitOnChange>true</core:submitOnChange>
<core:disabled>false</core:disabled>
<core:hidden>false</core:hidden>
<core:fuzzyLevel>4</core:fuzzyLevel>
<core:customQueryFilter>false</core:customQueryFilter>
<core:valueRequired>false</core:valueRequired>
</core:MatchTextValueFilter>
</retail:customerFirstNameFilter>
<retail:customerSurnameFilter>
<core:MatchTextValueFilter>
<core:id>CustomerSurname</core:id>
<core:forceApplicable>false</core:forceApplicable>
<core:orColumns>false</core:orColumns>
<core:comparisonOperator>STARTS_WITH</core:comparisonOperator>
<core:orNull>false</core:orNull>
<core:width>20</core:width>
<core:useValueForAllProperties>false</core:useValueForAllProperties>
<core:caseInsensitive>true</core:caseInsensitive>
<core:submitOnChange>true</core:submitOnChange>
<core:disabled>false</core:disabled>
<core:hidden>false</core:hidden>
<core:fuzzyLevel>4</core:fuzzyLevel>
<core:customQueryFilter>false</core:customQueryFilter>
<core:defaultValue xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:type="xsd:string">baldwin</core:defaultValue>
<core:supportValues>
<core:value xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:type="xsd:string">baldwin</core:value>
</core:supportValues>
<core:valueRequired>false</core:valueRequired>
</core:MatchTextValueFilter>
</retail:customerSurnameFilter>
<retail:customerNumberFilter>
<core:MatchTextValueFilter>
<core:id>CustomerNumber</core:id>
<core:forceApplicable>false</core:forceApplicable>
<core:orColumns>false</core:orColumns>
<core:comparisonOperator>STARTS_WITH</core:comparisonOperator>
<core:orNull>false</core:orNull>
<core:width>20</core:width>
<core:useValueForAllProperties>false</core:useValueForAllProperties>
<core:caseInsensitive>false</core:caseInsensitive>
<core:submitOnChange>true</core:submitOnChange>
<core:disabled>false</core:disabled>
<core:hidden>false</core:hidden>
<core:fuzzyLevel>4</core:fuzzyLevel>
<core:customQueryFilter>false</core:customQueryFilter>
<core:valueRequired>false</core:valueRequired>
</core:MatchTextValueFilter>
</retail:customerNumberFilter>
<retail:customerOrderIdFilter>
<core:MatchTextValueFilter>
<core:id>CustomerOrderId</core:id>
<core:forceApplicable>false</core:forceApplicable>
<core:orColumns>false</core:orColumns>
<core:comparisonOperator>STARTS_WITH</core:comparisonOperator>
<core:orNull>false</core:orNull>
<core:width>20</core:width>
<core:useValueForAllProperties>false</core:useValueForAllProperties>
<core:caseInsensitive>false</core:caseInsensitive>
<core:submitOnChange>true</core:submitOnChange>
<core:disabled>false</core:disabled>
<core:hidden>false</core:hidden>
<core:fuzzyLevel>4</core:fuzzyLevel>
<core:customQueryFilter>false</core:customQueryFilter>
<core:valueRequired>false</core:valueRequired>
</core:MatchTextValueFilter>
</retail:customerOrderIdFilter>
<retail:customerPostcodeFilter/>
<retail:referenceIdFilter>
<core:MatchTextValueFilter>
<core:id>ReferenceId</core:id>
<core:forceApplicable>false</core:forceApplicable>
<core:orColumns>false</core:orColumns>
<core:comparisonOperator>STARTS_WITH</core:comparisonOperator>
<core:orNull>false</core:orNull>
<core:width>20</core:width>
<core:useValueForAllProperties>false</core:useValueForAllProperties>
<core:caseInsensitive>false</core:caseInsensitive>
<core:submitOnChange>true</core:submitOnChange>
<core:disabled>false</core:disabled>
<core:hidden>false</core:hidden>
<core:fuzzyLevel>4</core:fuzzyLevel>
<core:customQueryFilter>false</core:customQueryFilter>
<core:valueRequired>false</core:valueRequired>
</core:MatchTextValueFilter>
</retail:referenceIdFilter>
<retail:transactionIdFilter>
<core:MatchTextValueFilter>
<core:id>TransactionId</core:id>
<core:forceApplicable>false</core:forceApplicable>
<core:orColumns>false</core:orColumns>
<core:comparisonOperator>STARTS_WITH</core:comparisonOperator>
<core:orNull>false</core:orNull>
<core:width>20</core:width>
<core:useValueForAllProperties>false</core:useValueForAllProperties>
<core:caseInsensitive>false</core:caseInsensitive>
<core:submitOnChange>true</core:submitOnChange>
<core:disabled>false</core:disabled>
<core:hidden>false</core:hidden>
<core:fuzzyLevel>4</core:fuzzyLevel>
<core:customQueryFilter>false</core:customQueryFilter>
<core:valueRequired>false</core:valueRequired>
</core:MatchTextValueFilter>
</retail:transactionIdFilter>
<retail:searchMultipleIdFilter/>
<retail:customerOrderTypeIdFilter>
<core:MatchTextValueFilter>
<core:id>CustomerOrderTypeId</core:id>
<core:forceApplicable>false</core:forceApplicable>
<core:orColumns>false</core:orColumns>
<core:comparisonOperator>NOT_EQUALS</core:comparisonOperator>
<core:orNull>false</core:orNull>
<core:width>20</core:width>
<core:useValueForAllProperties>false</core:useValueForAllProperties>
<core:caseInsensitive>false</core:caseInsensitive>
<core:submitOnChange>true</core:submitOnChange>
<core:disabled>false</core:disabled>
<core:hidden>false</core:hidden>
<core:fuzzyLevel>4</core:fuzzyLevel>
<core:customQueryFilter>false</core:customQueryFilter>
<core:defaultValue xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:type="xsd:string">LAYAWAY_FUTURE_SALE</core:defaultValue>
<core:supportValues>
<core:value xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:type="xsd:string">LAYAWAY_FUTURE_SALE</core:value>
</core:supportValues>
<core:valueRequired>false</core:valueRequired>
</core:MatchTextValueFilter>
</retail:customerOrderTypeIdFilter>
<retail:locationIdFilter/>
<retail:emailFilter>
<core:MatchTextValueFilter>
<core:id>Email</core:id>
<core:forceApplicable>false</core:forceApplicable>
<core:orColumns>false</core:orColumns>
<core:comparisonOperator>STARTS_WITH</core:comparisonOperator>
<core:orNull>false</core:orNull>
<core:width>20</core:width>
<core:useValueForAllProperties>false</core:useValueForAllProperties>
<core:caseInsensitive>false</core:caseInsensitive>
<core:submitOnChange>true</core:submitOnChange>
<core:disabled>false</core:disabled>
<core:hidden>false</core:hidden>
<core:fuzzyLevel>4</core:fuzzyLevel>
<core:customQueryFilter>false</core:customQueryFilter>
<core:valueRequired>false</core:valueRequired>
</core:MatchTextValueFilter>
</retail:emailFilter>
<retail:phoneCompoundFilter>
<core:CompoundListFilter>
<core:filters>
<core:MatchTextValueFilter>
<core:id>Phone1</core:id>
<core:forceApplicable>false</core:forceApplicable>
<core:orColumns>true</core:orColumns>
<core:comparisonOperator>STARTS_WITH</core:comparisonOperator>
<core:orNull>false</core:orNull>
<core:width>20</core:width>
<core:useValueForAllProperties>false</core:useValueForAllProperties>
<core:caseInsensitive>false</core:caseInsensitive>
<core:submitOnChange>true</core:submitOnChange>
<core:disabled>false</core:disabled>
<core:hidden>false</core:hidden>
<core:fuzzyLevel>4</core:fuzzyLevel>
<core:customQueryFilter>false</core:customQueryFilter>
<core:valueRequired>false</core:valueRequired>
</core:MatchTextValueFilter>
<core:MatchTextValueFilter>
<core:id>MobilePhone</core:id>
<core:forceApplicable>false</core:forceApplicable>
<core:orColumns>true</core:orColumns>
<core:comparisonOperator>STARTS_WITH</core:comparisonOperator>
<core:orNull>false</core:orNull>
<core:width>20</core:width>
<core:useValueForAllProperties>false</core:useValueForAllProperties>
<core:caseInsensitive>false</core:caseInsensitive>
<core:submitOnChange>true</core:submitOnChange>
<core:disabled>false</core:disabled>
<core:hidden>false</core:hidden>
<core:fuzzyLevel>4</core:fuzzyLevel>
<core:customQueryFilter>false</core:customQueryFilter>
<core:valueRequired>false</core:valueRequired>
</core:MatchTextValueFilter>
</core:filters>
<core:orFilters>true</core:orFilters>
<core:forceApplicable>false</core:forceApplicable>
<core:id>CompoundFilter</core:id>
<core:fuzzyLevel>4</core:fuzzyLevel>
</core:CompoundListFilter>
</retail:phoneCompoundFilter>
<retail:userIdFilter/>
</retail:criteria>
</retail:listOrderHeadersRequest>
</ns:listOrderHeaders>
Response
Following is an example response that includes orders for the customer searched with the surname of 'baldwin':
Response
<ns:listOrderHeadersResponse xmlns:ns="http://www.enactor.com/orders/CustomerOrdersService">
<orders:listOrderHeadersResponse xmlns:orders="http://www.enactor.com/orders" xmlns:core="http://www.enactor.com/core" xmlns:retail="http://www.enactor.com/retail">
<orders:outcome name="Success"/>
<orders:list>
<core:currentPage>-1</core:currentPage>
<core:rowOffset>0</core:rowOffset>
<core:pageSize>10</core:pageSize>
<core:totalPages>-1</core:totalPages>
<core:totalRows>41</core:totalRows>
<orders:elements>
<orders:element>
<orders:balanceOwed>-60000</orders:balanceOwed>
<orders:createdDate xsi:type="core:DateTimeWithTimeZone">2025-02-17T14:28:55+05:30</orders:createdDate>
<orders:currencyKey>GBP</orders:currencyKey>
<orders:orderValue>65880</orders:orderValue>
<orders:customerOrderHeaderId>228</orders:customerOrderHeaderId>
<orders:voided>false</orders:voided>
<orders:customerTitle/>
<orders:customerFirstName>Amelia</orders:customerFirstName>
<orders:customerNumber>100</orders:customerNumber>
<orders:customerPostcode>SG14 3AG</orders:customerPostcode>
<orders:customerSurname>Baldwin</orders:customerSurname>
<orders:referenceId/>
<orders:status>SUBMITTED</orders:status>
<orders:totalsLastCalculated>2025-02-17T09:00:21Z</orders:totalsLastCalculated>
<orders:transactionId>00050010000582502171217577</orders:transactionId>
</orders:element>
<orders:element>
<orders:balanceOwed>-29900</orders:balanceOwed>
<orders:createdDate xsi:type="core:DateTimeWithTimeZone">2025-02-17T09:53:07Z</orders:createdDate>
<orders:currencyKey>GBP</orders:currencyKey>
<orders:orderValue>29900</orders:orderValue>
<orders:customerOrderHeaderId>230</orders:customerOrderHeaderId>
<orders:voided>false</orders:voided>
<orders:customerTitle/>
<orders:customerFirstName>Amelia</orders:customerFirstName>
<orders:customerNumber>100</orders:customerNumber>
<orders:customerPostcode>SG14 3AG</orders:customerPostcode>
<orders:customerSurname>Baldwin</orders:customerSurname>
<orders:referenceId/>
<orders:status>SUBMITTED</orders:status>
<orders:totalsLastCalculated>2025-02-17T09:55:15Z</orders:totalsLastCalculated>
<orders:transactionId>00010144000102502170951451</orders:transactionId>
</orders:element>
<orders:element>
<orders:balanceOwed>-10000</orders:balanceOwed>
<orders:createdDate xsi:type="core:DateTimeWithTimeZone">2025-02-13T15:51:59Z</orders:createdDate>
<orders:currencyKey>GBP</orders:currencyKey>
<orders:orderValue>115000</orders:orderValue>
<orders:customerOrderHeaderId>220</orders:customerOrderHeaderId>
<orders:voided>false</orders:voided>
<orders:customerTitle/>
<orders:customerFirstName>Amelia</orders:customerFirstName>
<orders:customerNumber>100</orders:customerNumber>
<orders:customerPostcode>SG14 3AG</orders:customerPostcode>
<orders:customerSurname>Baldwin</orders:customerSurname>
<orders:referenceId/>
<orders:status>SUBMITTED</orders:status>
<orders:totalsLastCalculated>2025-02-13T15:53:06Z</orders:totalsLastCalculated>
<orders:transactionId>00071017000102502131548384</orders:transactionId>
</orders:element>
<orders:element>
<orders:balanceOwed>-41900</orders:balanceOwed>
<orders:createdDate xsi:type="core:DateTimeWithTimeZone">2025-02-13T15:48:32Z</orders:createdDate>
<orders:currencyKey>GBP</orders:currencyKey>
<orders:orderValue>41900</orders:orderValue>
<orders:customerOrderHeaderId>217</orders:customerOrderHeaderId>
<orders:voided>false</orders:voided>
<orders:customerTitle/>
<orders:customerFirstName>Amelia</orders:customerFirstName>
<orders:customerNumber>100</orders:customerNumber>
<orders:customerPostcode>SG14 3AG</orders:customerPostcode>
<orders:customerSurname>Baldwin</orders:customerSurname>
<orders:referenceId/>
<orders:status>SUBMITTED</orders:status>
<orders:totalsLastCalculated>2025-02-13T15:49:59Z</orders:totalsLastCalculated>
<orders:transactionId>00071017000092502131531028</orders:transactionId>
</orders:element>
<orders:element>
<orders:balanceOwed>-29900</orders:balanceOwed>
<orders:createdDate xsi:type="core:DateTimeWithTimeZone">2025-02-10T13:17:48Z</orders:createdDate>
<orders:currencyKey>GBP</orders:currencyKey>
<orders:orderValue>29900</orders:orderValue>
<orders:customerOrderHeaderId>211</orders:customerOrderHeaderId>
<orders:voided>false</orders:voided>
<orders:customerTitle/>
<orders:customerFirstName>Amelia</orders:customerFirstName>
<orders:customerNumber>100</orders:customerNumber>
<orders:customerPostcode>SG14 3AG</orders:customerPostcode>
<orders:customerSurname>Baldwin</orders:customerSurname>
<orders:referenceId/>
<orders:status>IN_PROGRESS</orders:status>
<orders:totalsLastCalculated>2025-02-10T13:19:34Z</orders:totalsLastCalculated>
<orders:transactionId>00030002000582502101317044</orders:transactionId>
</orders:element>
<orders:element>
<orders:balanceOwed>-194999</orders:balanceOwed>
<orders:createdDate xsi:type="core:DateTimeWithTimeZone">2025-02-03T17:24:06Z</orders:createdDate>
<orders:currencyKey>GBP</orders:currencyKey>
<orders:orderValue>194999</orders:orderValue>
<orders:customerOrderHeaderId>200</orders:customerOrderHeaderId>
<orders:voided>false</orders:voided>
<orders:customerTitle/>
<orders:customerFirstName>Amelia</orders:customerFirstName>
<orders:customerNumber>100</orders:customerNumber>
<orders:customerPostcode>SG14 3AG</orders:customerPostcode>
<orders:customerSurname>Baldwin</orders:customerSurname>
<orders:referenceId/>
<orders:status>IN_PROGRESS</orders:status>
<orders:totalsLastCalculated>2025-02-03T17:26:11Z</orders:totalsLastCalculated>
<orders:transactionId>00030002000342502031722199</orders:transactionId>
</orders:element>
<orders:element>
<orders:balanceOwed>0</orders:balanceOwed>
<orders:createdDate xsi:type="core:DateTimeWithTimeZone">2025-01-29T14:38:09Z</orders:createdDate>
<orders:currencyKey>GBP</orders:currencyKey>
<orders:orderValue>41900</orders:orderValue>
<orders:customerOrderHeaderId>195</orders:customerOrderHeaderId>
<orders:voided>false</orders:voided>
<orders:customerTitle>Mrs</orders:customerTitle>
<orders:customerFirstName>Amelia</orders:customerFirstName>
<orders:customerNumber>100</orders:customerNumber>
<orders:customerPostcode>SG14 3AG</orders:customerPostcode>
<orders:customerSurname>Baldwin</orders:customerSurname>
<orders:customerDateOfBirth>1987-01-29T00:00:00Z</orders:customerDateOfBirth>
<orders:referenceId/>
<orders:status>COMPLETED</orders:status>
<orders:totalsLastCalculated>2025-01-29T14:46:54Z</orders:totalsLastCalculated>
<orders:transactionId>00010014000362501291428235</orders:transactionId>
</orders:element>
<orders:element>
<orders:balanceOwed>-37710</orders:balanceOwed>
<orders:createdDate xsi:type="core:DateTimeWithTimeZone">2025-01-24T17:07:18Z</orders:createdDate>
<orders:currencyKey>GBP</orders:currencyKey>
<orders:orderValue>37710</orders:orderValue>
<orders:customerOrderHeaderId>186</orders:customerOrderHeaderId>
<orders:voided>false</orders:voided>
<orders:customerTitle>Mrs</orders:customerTitle>
<orders:customerFirstName>Amelia</orders:customerFirstName>
<orders:customerNumber>100</orders:customerNumber>
<orders:customerPostcode>SG14 3AG</orders:customerPostcode>
<orders:customerSurname>Baldwin</orders:customerSurname>
<orders:customerDateOfBirth>1987-01-29T00:00:00Z</orders:customerDateOfBirth>
<orders:referenceId/>
<orders:status>ATTENTION</orders:status>
<orders:totalsLastCalculated>2025-01-24T17:07:46Z</orders:totalsLastCalculated>
<orders:transactionId>00010014000092501241642072</orders:transactionId>
</orders:element>
<orders:element>
<orders:balanceOwed>-1000</orders:balanceOwed>
<orders:createdDate xsi:type="core:DateTimeWithTimeZone">2025-01-07T17:07:13Z</orders:createdDate>
<orders:currencyKey>GBP</orders:currencyKey>
<orders:orderValue>41400</orders:orderValue>
<orders:customerOrderHeaderId>161</orders:customerOrderHeaderId>
<orders:voided>false</orders:voided>
<orders:customerTitle>Mrs</orders:customerTitle>
<orders:customerFirstName>Amelia</orders:customerFirstName>
<orders:customerNumber>100</orders:customerNumber>
<orders:customerPostcode>SG14 3AG</orders:customerPostcode>
<orders:customerSurname>Baldwin</orders:customerSurname>
<orders:customerDateOfBirth>1987-01-29T00:00:00Z</orders:customerDateOfBirth>
<orders:referenceId/>
<orders:status>ATTENTION</orders:status>
<orders:totalsLastCalculated>2025-01-07T17:07:53Z</orders:totalsLastCalculated>
<orders:transactionId>00010014000052501071656091</orders:transactionId>
</orders:element>
<orders:element>
<orders:balanceOwed>-41900</orders:balanceOwed>
<orders:createdDate xsi:type="core:DateTimeWithTimeZone">2025-01-02T10:12:29Z</orders:createdDate>
<orders:currencyKey>GBP</orders:currencyKey>
<orders:orderValue>41900</orders:orderValue>
<orders:customerOrderHeaderId>153</orders:customerOrderHeaderId>
<orders:voided>false</orders:voided>
<orders:customerTitle>Mrs</orders:customerTitle>
<orders:customerFirstName>Amelia</orders:customerFirstName>
<orders:customerNumber>100</orders:customerNumber>
<orders:customerPostcode>SG14 3AG</orders:customerPostcode>
<orders:customerSurname>Baldwin</orders:customerSurname>
<orders:customerDateOfBirth>1987-01-29T00:00:00Z</orders:customerDateOfBirth>
<orders:referenceId/>
<orders:status>IN_PROGRESS</orders:status>
<orders:totalsLastCalculated>2025-01-02T10:11:07Z</orders:totalsLastCalculated>
<orders:transactionId>00010100000032501021004467</orders:transactionId>
</orders:element>
</orders:elements>
</orders:list>
</orders:listOrderHeadersResponse>
</ns:listOrderHeadersResponse>
Get Order Number
This service will provide the Order Number when a new Order transaction is started at the POS.
Request
Request Service Name
CustomerOrdersService
Request Operation
getOrderNumber
Request Endpoint
axis2/services/CustomerOrdersService
Request Body
Element | Mandatory / Optional | Type | Description |
---|---|---|---|
orderType | Mandatory | String | The order Type. The default out-of-the-box Enactor Order type is CUSTOMER_ORDER. |
locationId | Mandatory | Complex | Object that contains the ID of the POS Location. |
deviceId | Mandatory | Complex | Object that contains the ID of the POS Device. |
userId | Mandatory | Complex | Object that contains the ID of the POS User. |
Response
Response Headers
There are no response headers.
Response Body
Element | Type | Description |
---|---|---|
orderNumber | String | The order number that the POS will use for the order. |
outcome | Complex | An indication whether the order number could be generated. This would ideally be Success. |
Request & Response Examples
Request
Get Order Number request using a POS that in the location with an ID of '0005', has a device ID of 'pos9@0005.enactor' and has a user logged in with the ID of '000101':
<ns:getOrderNumber xmlns:ns="http://www.enactor.com/orders/CustomerOrdersService"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsd:dummy="">
<orders:customerOrderNumberRequest xmlns:orders="http://www.enactor.com/orders"
xmlns:retail="http://www.enactor.com/retail">
<orders:userId>000101</orders:userId>
<orders:orderType>CUSTOMER_ORDER</orders:orderType>
<orders:locationId>0005</orders:locationId>
<orders:deviceId>pos9@0005.enactor</orders:deviceId>
</orders:customerOrderNumberRequest>
</ns:getOrderNumber>
Response
Following is an example response for the above Get Order Number request:
<ns:getOrderNumberResponse
xmlns:ns="http://www.enactor.com/orders/CustomerOrdersService">
<orders:customerOrderNumberResponse xmlns:orders="http://www.enactor.com/orders"
xmlns:core="http://www.enactor.com/core" xmlns:retail="http://www.enactor.com/retail">
<orders:outcome name="Success"/>
<orders:orderNumber>228</orders:orderNumber>
</orders:customerOrderNumberResponse>
</ns:getOrderNumberResponse>
Load Order
This service will provide the details of an order when the order is selected from the search results of the POS.
Request
Request Service Name
CustomerOrdersService
Request Operation
loadOrder
Request Endpoint
axis2/services/CustomerOrdersService
Request Body
Element | Mandatory / Optional | Type | Description |
---|---|---|---|
customerOrderHeaderId | Mandatory | Complex | Object that contains the Order ID that is to be loaded. |
Response
The 'loadOrder' API fetches data from the following tables of the database:
-
customerorderheaders
-
customerorderitems
-
customerordernotes
-
customerorderpayments
-
customerorderfulfilments
-
customerorderassociations
Response Headers
There are no response headers.
Response Body
Element | Type | Description |
---|---|---|
customerOrderHeader | Complex | Object containing the order header related information about the requested order such as transactionId, customerOrderId, status, createdDate, etc. All properties within this object can be seen in the example response provided. |
customerOrderItems | Complex | Object containing the details of all the order items in the requested order such as lineNumber, status, orderedQty, createdDate, unitPrice, netPrice, etc. All properties within this object can be seen in the example response provided. |
customerOrderPayments | Complex | Object containing the details of all the payments that have been performed for the requested order such as paymentNumber, paymentType, orderedQty, amount, etc. All properties within this object can be seen in the example response provided. |
customerOrderFulfilments | Complex | Object containing the fulfilment details of the requested order such as fulfilmentId, sourceType, destinationType, etc. All properties within this object can be seen in the example response provided. |
outcome | Complex | The final status of the response. |
Request & Response Examples
Request
Load Order request for Order ID '14':
Request
<ns:loadOrder xmlns:ns="http://www.enactor.com/orders/CustomerOrdersService">
<retail:loadOrderRequest xmlns:retail="http://www.enactor.com/retail" xmlns:core="http://www.enactor.com/core">
<retail:customerOrderHeaderId>14</retail:customerOrderHeaderId>
</retail:loadOrderRequest>
</ns:loadOrder>
Response
Following is an example response for the order loaded for Order ID '14':
Response
<ns:loadOrderResponse xmlns:ns="http://www.enactor.com/orders/CustomerOrdersService">
<orders:loadOrderResponse xmlns:orders="http://www.enactor.com/orders" xmlns:core="http://www.enactor.com/core" xmlns:retail="http://www.enactor.com/retail">
<orders:outcome name="Success"/>
<orders:customerOrderHeader>
<orders:transactionId>00030002000582502101317044</orders:transactionId>
<orders:internalReferenceId>011acf26-23b0-4f9e-9d94-82513ceb79a5</orders:internalReferenceId>
<orders:customerOrderId>14</orders:customerOrderId>
<orders:customerOrderTypeId>CUSTOMER_ORDER</orders:customerOrderTypeId>
<orders:locationId>0003</orders:locationId>
<orders:userId>000301</orders:userId>
<orders:createdDate xsi:type="core:DateTimeWithTimeZone">2025-02-10T13:17:48Z</orders:createdDate>
<orders:customerNumber>100</orders:customerNumber>
<orders:customerTitle/>
<orders:customerFirstName>Amelia</orders:customerFirstName>
<orders:customerSurname>Baldwin</orders:customerSurname>
<orders:customerPostcode>SG14 3AG</orders:customerPostcode>
<orders:currencyId>GBP</orders:currencyId>
<orders:orderValue>29900</orders:orderValue>
<orders:taxAmount>0.0</orders:taxAmount>
<orders:taxInclusive>false</orders:taxInclusive>
<orders:status>IN_PROGRESS</orders:status>
<orders:address>
<retail:country>United Kingdom</retail:country>
<retail:countryCodeId>GBR</retail:countryCodeId>
<retail:organisation/>
<retail:typeId>CX_ORD_CONTACT</retail:typeId>
<retail:county>Hertfordshire</retail:county>
<retail:email>abaldwin@enactordata.co</retail:email>
<retail:mobilePhone>071 123 4567</retail:mobilePhone>
<retail:phone1/>
<retail:postCode>SG14 3AG</retail:postCode>
<retail:street1>137 Newport Road</retail:street1>
<retail:street2/>
<retail:street3/>
<retail:town>Hertford</retail:town>
<retail:isTemplate>false</retail:isTemplate>
<retail:lastUpdated>2025-02-10T13:19:34Z</retail:lastUpdated>
<retail:province/>
</orders:address>
<orders:address>
<retail:country/>
<retail:countryCodeId/>
<retail:organisation/>
<retail:typeId>CX_ORD_NOTIFICATION</retail:typeId>
<retail:county/>
<retail:email>abaldwin@enactordata.co</retail:email>
<retail:mobilePhone>0711234567</retail:mobilePhone>
<retail:phone1/>
<retail:postCode/>
<retail:street1/>
<retail:street2/>
<retail:street3/>
<retail:town/>
<retail:isTemplate>false</retail:isTemplate>
<retail:lastUpdated>2025-02-10T13:19:34Z</retail:lastUpdated>
<retail:province/>
</orders:address>
<orders:lastUpdatedByUserKey/>
<orders:deviceId>pos2@0003.enactor</orders:deviceId>
<orders:preferredContactTypeKey>CX_ORD_CONTACT</orders:preferredContactTypeKey>
<orders:lastUpdated>2025-02-10T13:19:39Z</orders:lastUpdated>
<orders:referenceId/>
<orders:authorisedByUserKey/>
<orders:authorisedDate xsi:type="core:DateTimeWithTimeZone">2025-02-10T13:17:48Z</orders:authorisedDate>
<orders:notificationContactTypeKey>CX_ORD_NOTIFICATION</orders:notificationContactTypeKey>
<orders:balanceOwed>-29900</orders:balanceOwed>
<orders:notes/>
<orders:adjustments/>
<orders:totalPayments>29900</orders:totalPayments>
<orders:totalsLastCalculated>2025-02-10T13:19:34Z</orders:totalsLastCalculated>
<orders:voided>false</orders:voided>
<orders:reasonId>
<retail:reasonId/>
<retail:regionId groupHierarchyId="" groupTypeId="region"/>
</orders:reasonId>
<orders:reasonType/>
<orders:quoteReference/>
<orders:orderHeaderAdditionalData/>
</orders:customerOrderHeader>
<orders:customerOrderItems>
<orders:item>
<orders:adjustments/>
<orders:sourceLineNumber>1</orders:sourceLineNumber>
<orders:parentLineNumber>0</orders:parentLineNumber>
<orders:fulfilmentId>1</orders:fulfilmentId>
<orders:transactionId>00030002000582502101317044</orders:transactionId>
<orders:completedDate/>
<orders:userId>000301</orders:userId>
<orders:locationId>0003</orders:locationId>
<orders:productId>500100</orders:productId>
<orders:createdDate>2025-02-10T13:17:04Z</orders:createdDate>
<orders:customerOrderId>211</orders:customerOrderId>
<orders:dueDate/>
<orders:lastUpdated>2025-02-10T13:19:34Z</orders:lastUpdated>
<orders:lineNumber>1</orders:lineNumber>
<orders:netPrice>29900</orders:netPrice>
<orders:notes/>
<orders:orderedQty>1</orders:orderedQty>
<orders:reservedQty>0</orders:reservedQty>
<orders:shippedQty>0</orders:shippedQty>
<orders:status>NEW</orders:status>
<orders:submittedDate/>
<orders:taxAmount>0.0</orders:taxAmount>
<orders:unitPrice>29900</orders:unitPrice>
<orders:voided>false</orders:voided>
<orders:effectiveNetValue>29900</orders:effectiveNetValue>
<orders:destinationLocationId/>
<orders:reasonId>
<retail:reasonId/>
<retail:regionId groupHierarchyId="" groupTypeId="region"/>
</orders:reasonId>
<orders:reasonType/>
<orders:cancelRequested>false</orders:cancelRequested>
<orders:orderItemAdditionalData/>
</orders:item>
</orders:customerOrderItems>
<orders:customerOrderNotes/>
<orders:customerOrderPayments>
<orders:customerOrderCashPayment>
<orders:transactionId>00030002000582502101317044</orders:transactionId>
<orders:customerOrderId>211</orders:customerOrderId>
<orders:paymentNumber>1</orders:paymentNumber>
<orders:paymentType>customerOrderCashPayment</orders:paymentType>
<orders:paymentServiceProvider/>
<orders:voided>false</orders:voided>
<orders:amount>29900</orders:amount>
<orders:notes/>
<orders:tenderId>
<retail:tenderId>CSH</retail:tenderId>
<retail:groupId groupHierarchyId="All" groupTypeId="region">UK</retail:groupId>
</orders:tenderId>
<orders:currencyId>GBP</orders:currencyId>
<orders:exchangeRate>0.0</orders:exchangeRate>
<orders:foreignValue>0</orders:foreignValue>
<orders:adjustments/>
<orders:status>COMMITTED</orders:status>
<orders:lastUpdated>2025-02-10T13:19:35Z</orders:lastUpdated>
<orders:isRefund>false</orders:isRefund>
<orders:refundAvailable>29900</orders:refundAvailable>
<orders:createdByUserKey>000301</orders:createdByUserKey>
<orders:createdDate xsi:type="core:DateTimeWithTimeZone">2025-02-10T13:19:34Z</orders:createdDate>
<orders:externalReferenceId/>
<orders:transactionLineNumber>5</orders:transactionLineNumber>
<orders:description>Cash</orders:description>
<orders:tenderReference/>
</orders:customerOrderCashPayment>
</orders:customerOrderPayments>
<orders:customerOrderFulfilments>
<orders:customerOrderFulfilment>
<orders:customerOrderId>211</orders:customerOrderId>
<orders:fulfilmentId>1</orders:fulfilmentId>
<orders:sourceType>locationStockFulfilment</orders:sourceType>
<orders:sourceId>1001</orders:sourceId>
<orders:destinationType>ADDRESS</orders:destinationType>
<orders:destinationLocationId/>
<orders:destinationAddress>
<retail:countryCodeId/>
<retail:typeId/>
<retail:isTemplate>false</retail:isTemplate>
</orders:destinationAddress>
<orders:destinationName/>
<orders:deliveryPromiseText/>
<orders:deliveryReference/>
<orders:deliveryCharge>0</orders:deliveryCharge>
<orders:deliveryChargeForeignCurrencyId/>
<orders:deliveryChargeForeignAmount>0</orders:deliveryChargeForeignAmount>
<orders:deliveryChargeProductId/>
<orders:lastUpdated>2025-02-10T13:19:35Z</orders:lastUpdated>
<orders:externalReference/>
<orders:deliveryTypeId>
<retail:deliveryTypeId/>
</orders:deliveryTypeId>
<orders:inventoryFulfilmentId/>
<orders:trackingDetails>
<orders:shippingProviderId/>
<orders:shippingProviderDescription/>
<orders:shippingMethodId/>
<orders:shippingMethodDescription/>
<orders:trackingReference/>
<orders:trackingUrl/>
</orders:trackingDetails>
<orders:internalReferenceId/>
</orders:customerOrderFulfilment>
</orders:customerOrderFulfilments>
<orders:customerOrderAssociations/>
</orders:loadOrderResponse></ns:loadOrderResponse>
Load Customer Order Type
This service allows the retrieval of the Customer Order Type configuration.
Request
Request Service Name
CustomerOrdersService
Request Operation
loadCustomerOrderType
Request Endpoint
axis2/services/CustomerOrdersService
Request Body
Element | Mandatory / Optional | Type | Description |
---|---|---|---|
orderTypeId | Mandatory | String | The order Type. The default out-of-the-box Enactor Order type is CUSTOMER_ORDER. |
userId | Mandatory | Complex | Object that contains the ID of the POS User. |
Response
The customer order type returned will depend on the exact configuration that is required.
Response Headers
There are no response headers.
Response Body
Element | Type | Description |
---|---|---|
customerOrderType | Complex | Object containing all configuration details of the Customer Order Type. |
Request & Response Examples
Request
Requesting for the Customer Order Type by the user with an ID of '000101':
<ns:loadCustomerOrderType
xmlns:ns="http://www.enactor.com/orders/CustomerOrdersService">
<retail:loadCustomerOrderTypeRequest xmlns:retail="http://www.enactor.com/retail"
xmlns:core="http://www.enactor.com/core">
<retail:userId>000101</retail:userId>
<retail:orderTypeId>CUSTOMER_ORDER</retail:orderTypeId>
</retail:loadCustomerOrderTypeRequest>
</ns:loadCustomerOrderType>
Response
Example Response Following is an example response of Load Customer Order Type:
Response
<ns:loadCustomerOrderTypeResponse
xmlns:ns="http://www.enactor.com/orders/CustomerOrdersService">
<orders:loadCustomerOrderTypeResponse xmlns:orders="http://www.enactor.com/orders"
xmlns:core="http://www.enactor.com/core" xmlns:retail="http://www.enactor.com/retail">
<orders:customerOrderType>
<orders:typeID>CUSTOMER_ORDER</orders:typeID>
<orders:description>Customer Order</orders:description>
<orders:transactionProcessMap>
<entry>
<key>changeHeaderStatusTransaction</key>
<value>OrderManager/Processing/ChangeHeaderStatus</value>
</entry>
<entry>
<key>createOrderTransaction</key>
<value>OrderManager/Processing/CreateOrder</value>
</entry>
<entry>
<key>addItemTransaction</key>
<value>OrderManager/Processing/AddOrderItem</value>
</entry>
<entry>
<key>cancelItemTransaction</key>
<value>OrderManager/Processing/CancelOrderItem</value>
</entry>
<entry>
<key>createAdjustmentTransaction</key>
<value>OrderManager/Processing/CreateOrderAdjustment</value>
</entry>
<entry>
<key>changePaymentStatus</key>
<value>OrderManager/Processing/UpdateOrderPaymentStatus</value>
</entry>
<entry>
<key>changeItemStatusTransaction</key>
<value>OrderManager/Processing/ChangeItemStatus</value>
</entry>
<entry>
<key>addNoteTransaction</key>
<value>OrderManager/Processing/AddOrderNode</value>
</entry>
<entry>
<key>changeItemQuantityOrderedTransaction</key>
<value>OrderManager/Processing/ChangeQuantityOrdered</value>
</entry>
<entry>
<key>cancelAdjustmentTransaction</key>
<value>OrderManager/Processing/CancelOrderAdjustment</value>
</entry>
<entry>
<key>collectItemsTransaction</key>
<value>OrderManager/Processing/CollectOrderItems</value>
</entry>
<entry>
<key>addFulfilmentOptions</key>
<value>OrderManager/Processing/AddFulfilmentOptions</value>
</entry>
<entry>
<key>deleteNoteTransaction</key>
<value>OrderManager/Processing/DeleteOrderNote</value>
</entry>
<entry>
<key>submitOrderTransaction</key>
<value>OrderManager/Processing/SubmitOrder</value>
</entry>
<entry>
<key>changeDestinationTypeTransaction</key>
<value>OrderManager/Processing/ChangeDestinationType</value>
</entry>
<entry>
<key>voidItemTransaction</key>
<value>OrderManager/Processing/VoidOrderItem</value>
</entry>
<entry>
<key>cancelPaymentTransaction</key>
<value>OrderManager/Processing/CancelOrderPayment</value>
</entry>
<entry>
<key>addPaymentTransaction</key>
<value>OrderManager/Processing/AddOrderPayment</value>
</entry>
<entry>
<key>changeItemQuantityShippedTransaction</key>
<value>OrderManager/Processing/ChangeQuantityShipped</value>
</entry>
<entry>
<key>changeItemNetPriceTransaction</key>
<value>OrderManager/Processing/ChangeNetPrice</value>
</entry>
<entry>
<key>changeItemQuantityReservedTransaction</key>
<value>OrderManager/Processing/ChangeQuantityReserved</value>
</entry>
</orders:transactionProcessMap>
<orders:serviceOperationProcessMap>
<entry>
<key>createOrder</key>
<value>Service/CustomerOrderService/QueueTransaction</value>
</entry>
<entry>
<key>loadOrderItem</key>
<value>Service/CustomerOrderService/LoadOrderEntity</value>
</entry>
<entry>
<key>returnItems</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>cancelOrder</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>loadOrderPayment</key>
<value>Service/CustomerOrderService/LoadOrderEntity</value>
</entry>
<entry>
<key>loadOrderHeader</key>
<value>Service/CustomerOrderService/LoadOrderEntity</value>
</entry>
<entry>
<key>getOrderNumber</key>
<value>Service/CustomerOrderService/GetOrderNumber</value>
</entry>
<entry>
<key>addItem</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>changeQuantityOrdered</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>changeDestinationType</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>createNewEmptyOrder</key>
<value>Service/CustomerOrderService/CreateNewEmptyOrder</value>
</entry>
<entry>
<key>cancelPayment</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>deleteNote</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>listDeliveryOptions</key>
<value>Service/CustomerOrderService/ListDeliveryOptions</value>
</entry>
<entry>
<key>loadNotes</key>
<value>Service/CustomerOrderService/LoadOrderNotes</value>
</entry>
<entry>
<key>changeNetPrice</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>loadPayments</key>
<value>Service/CustomerOrderService/LoadOrderPayments</value>
</entry>
<entry>
<key>listOrderHeaders</key>
<value>Service/CustomerOrderService/ListOrderHeaders</value>
</entry>
<entry>
<key>cancelItem</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>changeQuantityReserved</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>checkOrderHeaderExists</key>
<value>Service/CustomerOrderService/CheckOrderHeaderExists</value>
</entry>
<entry>
<key>loadItems</key>
<value>Service/CustomerOrderService/LoadOrderItems</value>
</entry>
<entry>
<key>loadOrderNote</key>
<value>Service/CustomerOrderService/LoadOrderEntity</value>
</entry>
<entry>
<key>voidItem</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>createAdjustment</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>changeItemStatus</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>changeQuantityShipped</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>addNote</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>collectItems</key>
<value>Service/CustomerOrderService/QueueTransaction</value>
</entry>
<entry>
<key>cancelAdjustment</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>loadOrder</key>
<value>Service/CustomerOrderService/LoadOrder</value>
</entry>
<entry>
<key>addPayments</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>addPayment</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
<entry>
<key>processItemRefunds</key>
<value>Service/CustomerOrderService/InvokeProcessor</value>
</entry>
</orders:serviceOperationProcessMap>
<orders:fulfilmentBusinessProcessID>CustomerOrders/FulfilCustomerOrder</
orders:fulfilmentBusinessProcessID>
<orders:businessProcessGroup variantGroupHierarchyId="All" variantGroupId="All"
variantGroupTypeId="region" groupHierarchyId="Customer Order"
groupTypeId="businessProcessGroup">Customer Order</orders:businessProcessGroup>
<orders:headerTypeQName>{http://www.enactor.com/orders}customerOrderHeader</
orders:headerTypeQName>
<orders:itemTypeQName>{http://www.enactor.com/orders}customerOrderItem</
orders:itemTypeQName>
<orders:lastUpdated>2024-10-01T10:17:04.954+01:00</orders:lastUpdated>
<orders:orderStatuses>
<orders:orderStatus>
<orders:isActive>false</orders:isActive>
<orders:status>REJECTED</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>true</orders:isActive>
<orders:status>RESUBMIT_REQUESTED</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>false</orders:isActive>
<orders:status>DISCARDED</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>false</orders:isActive>
<orders:status>ATTENTION</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>false</orders:isActive>
<orders:status>COMPLETED</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>true</orders:isActive>
<orders:status>STARTING</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>false</orders:isActive>
<orders:status>COMPLETED</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>false</orders:isActive>
<orders:status>ATTENTION</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>false</orders:isActive>
<orders:status>CANCELLED</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>true</orders:isActive>
<orders:status>AVAILABLE</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>true</orders:isActive>
<orders:status>QUOTE</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>true</orders:isActive>
<orders:status>IN_PROGRESS</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>false</orders:isActive>
<orders:status>NEW_PENDING</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>true</orders:isActive>
<orders:status>SUBMITTED</orders:status>
<orders:description/>
</orders:orderStatus>
<orders:orderStatus>
<orders:isActive>true</orders:isActive>
<orders:status>NEW</orders:status>
<orders:description/>
</orders:orderStatus>
</orders:orderStatuses>
<orders:orderItemStatuses>
<orders:orderItemStatus>
<orders:isActive>false</orders:isActive>
<orders:status>AVAILABLE</orders:status>
<orders:description/>
</orders:orderItemStatus>
<orders:orderItemStatus>
<orders:isActive>false</orders:isActive>
<orders:status>IN_PROGRESS</orders:status>
<orders:description/>
</orders:orderItemStatus>
<orders:orderItemStatus>
<orders:isActive>false</orders:isActive>
<orders:status>COLLECTING</orders:status>
<orders:description/>
</orders:orderItemStatus>
<orders:orderItemStatus>
<orders:isActive>false</orders:isActive>
<orders:status>NEW</orders:status>
<orders:description/>
</orders:orderItemStatus>
<orders:orderItemStatus>
<orders:isActive>false</orders:isActive>
<orders:status>CANCEL_REQUESTED</orders:status>
<orders:description/>
</orders:orderItemStatus>
<orders:orderItemStatus>
<orders:isActive>false</orders:isActive>
<orders:status>CANCELLED</orders:status>
<orders:description/>
</orders:orderItemStatus>
<orders:orderItemStatus>
<orders:isActive>false</orders:isActive>
<orders:status>RETURNED</orders:status>
<orders:description/>
</orders:orderItemStatus>
<orders:orderItemStatus>
<orders:isActive>false</orders:isActive>
<orders:status>STARTING</orders:status>
<orders:description/>
</orders:orderItemStatus>
<orders:orderItemStatus>
<orders:isActive>false</orders:isActive>
<orders:status>SUBMITTED</orders:status>
<orders:description/>
</orders:orderItemStatus>
<orders:orderItemStatus>
<orders:isActive>false</orders:isActive>
<orders:status>DISPATCHED</orders:status>
<orders:description/>
</orders:orderItemStatus>
<orders:orderItemStatus>
<orders:isActive>false</orders:isActive>
<orders:status>REJECTED</orders:status>
<orders:description/>
</orders:orderItemStatus>
<orders:orderItemStatus>
<orders:isActive>false</orders:isActive>
<orders:status>CANCELLING</orders:status>
<orders:description/>
</orders:orderItemStatus>
</orders:orderItemStatuses>
<orders:orderPaymentStatuses>
<orders:orderPaymentStatus>
<orders:isActive>false</orders:isActive>
<orders:status>PENDING</orders:status>
<orders:description/>
</orders:orderPaymentStatus>
<orders:orderPaymentStatus>
<orders:isActive>false</orders:isActive>
<orders:status>DECLINED</orders:status>
<orders:description/>
</orders:orderPaymentStatus>
<orders:orderPaymentStatus>
<orders:isActive>false</orders:isActive>
<orders:status>COMMITTED</orders:status>
<orders:description/>
</orders:orderPaymentStatus>
<orders:orderPaymentStatus>
<orders:isActive>false</orders:isActive>
<orders:status>PROCESSING</orders:status>
<orders:description/>
</orders:orderPaymentStatus>
<orders:orderPaymentStatus>
<orders:isActive>false</orders:isActive>
<orders:status>REFUNDED</orders:status>
<orders:description/>
</orders:orderPaymentStatus>
<orders:orderPaymentStatus>
<orders:isActive>false</orders:isActive>
<orders:status>PARTIALLY_REFUNDED</orders:status>
<orders:description/>
</orders:orderPaymentStatus>
<orders:orderPaymentStatus>
<orders:isActive>false</orders:isActive>
<orders:status>TAKEN</orders:status>
<orders:description/>
</orders:orderPaymentStatus>
<orders:orderPaymentStatus>
<orders:isActive>false</orders:isActive>
<orders:status>NEW</orders:status>
<orders:description/>
</orders:orderPaymentStatus>
</orders:orderPaymentStatuses>
<orders:functionStatusMap>
<item key="enactor.customerOrders.EditItemDiscount">
<orders:orderStatusSet>
<orders:headerStatuses/>
<orders:itemStatuses>
<orders:itemStatus>IN_PROGRESS</orders:itemStatus>
<orders:itemStatus>AVAILABLE</orders:itemStatus>
<orders:itemStatus>NEW</orders:itemStatus>
<orders:itemStatus>SUBMITTED</orders:itemStatus>
<orders:itemStatus>DISPATCHED</orders:itemStatus>
<orders:itemStatus>REJECTED</orders:itemStatus>
</orders:itemStatuses>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.ExtendPickupDate">
<orders:orderStatusSet>
<orders:headerStatuses/>
<orders:itemStatuses>
<orders:itemStatus>AVAILABLE</orders:itemStatus>
</orders:itemStatuses>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.AddHeaderDiscount">
<orders:orderStatusSet>
<orders:headerStatuses>
<orders:headerStatus>IN_PROGRESS</orders:headerStatus>
<orders:headerStatus>AVAILABLE</orders:headerStatus>
<orders:headerStatus>QUOTE</orders:headerStatus>
<orders:headerStatus>NEW</orders:headerStatus>
<orders:headerStatus>SUBMITTED</orders:headerStatus>
</orders:headerStatuses>
<orders:itemStatuses/>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.SubmitItem">
<orders:orderStatusSet>
<orders:headerStatuses/>
<orders:itemStatuses>
<orders:itemStatus>NEW</orders:itemStatus>
</orders:itemStatuses>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.EditHeaderDiscount">
<orders:orderStatusSet>
<orders:headerStatuses>
<orders:headerStatus>IN_PROGRESS</orders:headerStatus>
<orders:headerStatus>AVAILABLE</orders:headerStatus>
<orders:headerStatus>QUOTE</orders:headerStatus>
<orders:headerStatus>NEW</orders:headerStatus>
<orders:headerStatus>SUBMITTED</orders:headerStatus>
</orders:headerStatuses>
<orders:itemStatuses/>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.ChangeDeliveryAddress">
<orders:orderStatusSet>
<orders:headerStatuses/>
<orders:itemStatuses>
<orders:itemStatus>IN_PROGRESS</orders:itemStatus>
<orders:itemStatus>NEW</orders:itemStatus>
<orders:itemStatus>SUBMITTED</orders:itemStatus>
<orders:itemStatus>REJECTED</orders:itemStatus>
</orders:itemStatuses>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.CancelOrder">
<orders:orderStatusSet>
<orders:headerStatuses>
<orders:headerStatus>IN_PROGRESS</orders:headerStatus>
<orders:headerStatus>AVAILABLE</orders:headerStatus>
<orders:headerStatus>QUOTE</orders:headerStatus>
<orders:headerStatus>NEW</orders:headerStatus>
<orders:headerStatus>SUBMITTED</orders:headerStatus>
</orders:headerStatuses>
<orders:itemStatuses/>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.CancelItem">
<orders:orderStatusSet>
<orders:headerStatuses/>
<orders:itemStatuses>
<orders:itemStatus>AVAILABLE</orders:itemStatus>
<orders:itemStatus>NEW</orders:itemStatus>
<orders:itemStatus>SUBMITTED</orders:itemStatus>
<orders:itemStatus>DISPATCHED</orders:itemStatus>
<orders:itemStatus>REJECTED</orders:itemStatus>
</orders:itemStatuses>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.CancelItems">
<orders:orderStatusSet>
<orders:headerStatuses/>
<orders:itemStatuses>
<orders:itemStatus>IN_PROGRESS</orders:itemStatus>
<orders:itemStatus>AVAILABLE</orders:itemStatus>
<orders:itemStatus>NEW</orders:itemStatus>
<orders:itemStatus>SUBMITTED</orders:itemStatus>
<orders:itemStatus>DISPATCHED</orders:itemStatus>
<orders:itemStatus>REJECTED</orders:itemStatus>
</orders:itemStatuses>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.SubmitOrder">
<orders:orderStatusSet>
<orders:headerStatuses>
<orders:headerStatus>QUOTE</orders:headerStatus>
<orders:headerStatus>NEW</orders:headerStatus>
<orders:headerStatus>STARTING</orders:headerStatus>
</orders:headerStatuses>
<orders:itemStatuses/>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.ChangeCustomerDetails">
<orders:orderStatusSet>
<orders:headerStatuses>
<orders:headerStatus>IN_PROGRESS</orders:headerStatus>
<orders:headerStatus>AVAILABLE</orders:headerStatus>
<orders:headerStatus>QUOTE</orders:headerStatus>
<orders:headerStatus>NEW</orders:headerStatus>
<orders:headerStatus>CANCELLED</orders:headerStatus>
<orders:headerStatus>STARTING</orders:headerStatus>
<orders:headerStatus>COMPLETED</orders:headerStatus>
<orders:headerStatus>RETURNED</orders:headerStatus>
<orders:headerStatus>DISCARDED</orders:headerStatus>
<orders:headerStatus>SUBMITTED</orders:headerStatus>
</orders:headerStatuses>
<orders:itemStatuses/>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.DeleteHeaderNote">
<orders:orderStatusSet>
<orders:headerStatuses>
<orders:headerStatus>IN_PROGRESS</orders:headerStatus>
<orders:headerStatus>AVAILABLE</orders:headerStatus>
<orders:headerStatus>QUOTE</orders:headerStatus>
<orders:headerStatus>NEW</orders:headerStatus>
<orders:headerStatus>CANCELLED</orders:headerStatus>
<orders:headerStatus>STARTING</orders:headerStatus>
<orders:headerStatus>COMPLETED</orders:headerStatus>
<orders:headerStatus>RETURNED</orders:headerStatus>
<orders:headerStatus>DISCARDED</orders:headerStatus>
<orders:headerStatus>SUBMITTED</orders:headerStatus>
</orders:headerStatuses>
<orders:itemStatuses/>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.EditPaymentNote">
<orders:orderStatusSet>
<orders:headerStatuses/>
<orders:itemStatuses/>
<orders:paymentStatuses>
<orders:paymentStatus>NEW</orders:paymentStatus>
<orders:paymentStatus>REFUNDED</orders:paymentStatus>
<orders:paymentStatus>PROCESSING</orders:paymentStatus>
<orders:paymentStatus>TAKEN</orders:paymentStatus>
<orders:paymentStatus>PENDING</orders:paymentStatus>
</orders:paymentStatuses>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.AddItemNote">
<orders:orderStatusSet>
<orders:headerStatuses/>
<orders:itemStatuses>
<orders:itemStatus>NEW</orders:itemStatus>
<orders:itemStatus>STARTING</orders:itemStatus>
<orders:itemStatus>COLLECTING</orders:itemStatus>
<orders:itemStatus>IN_PROGRESS</orders:itemStatus>
<orders:itemStatus>AVAILABLE</orders:itemStatus>
<orders:itemStatus>CANCELLED</orders:itemStatus>
<orders:itemStatus>COMPLETED</orders:itemStatus>
<orders:itemStatus>CANCEL_REQUESTED</orders:itemStatus>
<orders:itemStatus>CANCELLING</orders:itemStatus>
<orders:itemStatus>RETURNED</orders:itemStatus>
<orders:itemStatus>SUBMITTED</orders:itemStatus>
<orders:itemStatus>DISPATCHED</orders:itemStatus>
<orders:itemStatus>REJECTED</orders:itemStatus>
</orders:itemStatuses>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.AddItemDiscount">
<orders:orderStatusSet>
<orders:headerStatuses/>
<orders:itemStatuses>
<orders:itemStatus>IN_PROGRESS</orders:itemStatus>
<orders:itemStatus>AVAILABLE</orders:itemStatus>
<orders:itemStatus>NEW</orders:itemStatus>
<orders:itemStatus>SUBMITTED</orders:itemStatus>
<orders:itemStatus>DISPATCHED</orders:itemStatus>
<orders:itemStatus>REJECTED</orders:itemStatus>
</orders:itemStatuses>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.AddItemCharge">
<orders:orderStatusSet>
<orders:headerStatuses/>
<orders:itemStatuses>
<orders:itemStatus>IN_PROGRESS</orders:itemStatus>
<orders:itemStatus>AVAILABLE</orders:itemStatus>
<orders:itemStatus>NEW</orders:itemStatus>
<orders:itemStatus>SUBMITTED</orders:itemStatus>
<orders:itemStatus>DISPATCHED</orders:itemStatus>
<orders:itemStatus>REJECTED</orders:itemStatus>
</orders:itemStatuses>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.NewCustomer">
<orders:orderStatusSet>
<orders:headerStatuses>
<orders:headerStatus>IN_PROGRESS</orders:headerStatus>
<orders:headerStatus>AVAILABLE</orders:headerStatus>
<orders:headerStatus>QUOTE</orders:headerStatus>
<orders:headerStatus>NEW</orders:headerStatus>
<orders:headerStatus>CANCELLED</orders:headerStatus>
<orders:headerStatus>STARTING</orders:headerStatus>
<orders:headerStatus>COMPLETED</orders:headerStatus>
<orders:headerStatus>RETURNED</orders:headerStatus>
<orders:headerStatus>DISCARDED</orders:headerStatus>
<orders:headerStatus>SUBMITTED</orders:headerStatus>
</orders:headerStatuses>
<orders:itemStatuses/>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.AddAccountPayment">
<orders:orderStatusSet>
<orders:headerStatuses>
<orders:headerStatus>IN_PROGRESS</orders:headerStatus>
<orders:headerStatus>AVAILABLE</orders:headerStatus>
<orders:headerStatus>QUOTE</orders:headerStatus>
<orders:headerStatus>NEW</orders:headerStatus>
<orders:headerStatus>SUBMITTED</orders:headerStatus>
</orders:headerStatuses>
<orders:itemStatuses/>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.RefundItem">
<orders:orderStatusSet>
<orders:headerStatuses>
<orders:headerStatus>AVAILABLE</orders:headerStatus>
<orders:headerStatus>COMPLETED</orders:headerStatus>
<orders:headerStatus>SUBMITTED</orders:headerStatus>
</orders:headerStatuses>
<orders:itemStatuses>
<orders:itemStatus>COMPLETED</orders:itemStatus>
<orders:itemStatus>DISPATCHED</orders:itemStatus>
</orders:itemStatuses>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.ChangeOrderStatus">
<orders:orderStatusSet>
<orders:headerStatuses>
<orders:headerStatus>IN_PROGRESS</orders:headerStatus>
<orders:headerStatus>AVAILABLE</orders:headerStatus>
<orders:headerStatus>QUOTE</orders:headerStatus>
<orders:headerStatus>NEW</orders:headerStatus>
<orders:headerStatus>CANCELLED</orders:headerStatus>
<orders:headerStatus>STARTING</orders:headerStatus>
<orders:headerStatus>COMPLETED</orders:headerStatus>
<orders:headerStatus>RETURNED</orders:headerStatus>
<orders:headerStatus>DISCARDED</orders:headerStatus>
<orders:headerStatus>SUBMITTED</orders:headerStatus>
<orders:headerStatus>REJECTED</orders:headerStatus>
</orders:headerStatuses>
<orders:itemStatuses/>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.CancelReservation">
<orders:orderStatusSet>
<orders:headerStatuses/>
<orders:itemStatuses>
<orders:itemStatus>AVAILABLE</orders:itemStatus>
</orders:itemStatuses>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.CancelItemDiscount">
<orders:orderStatusSet>
<orders:headerStatuses/>
<orders:itemStatuses>
<orders:itemStatus>IN_PROGRESS</orders:itemStatus>
<orders:itemStatus>AVAILABLE</orders:itemStatus>
<orders:itemStatus>NEW</orders:itemStatus>
<orders:itemStatus>SUBMITTED</orders:itemStatus>
<orders:itemStatus>DISPATCHED</orders:itemStatus>
<orders:itemStatus>REJECTED</orders:itemStatus>
</orders:itemStatuses>
<orders:paymentStatuses/>
</orders:orderStatusSet>
</item>
<item key="enactor.customerOrders.CommitPayment">
<orders:orderStatusSet>
<orders:headerStatuses/>
<orders:itemStatuses/>
<orders:paymentStatuses>
<orders:paymentStatus>PENDING</orders:paymentStatus>