Import orders out of Unleashed
Lesson 9 of 24 8 min read
Bring sales orders out of Unleashed to send on to a 3PL, an EDI partner or a CRM, and control exactly which orders are picked up.
Not every business takes orders in a web shop. Many key them straight into Unleashed and need them to flow onwards, to a warehouse, an EDI trading partner or a CRM. That is the Receive side of the Order configuration. This lesson explains how importing works and walks through the receive settings that decide which orders are picked up.
How importing works
Each time the Integration receives, Supply Lens asks Unleashed for orders modified since the last import. It tracks that point itself in receive.lastModifiedOn, so each run only fetches what has changed. The orders then pass through your filters, and those that pass become Order Documents for your Mappings to route.
Which orders: the receive settings
Where to start from
| receive.setupDate | Only orders dated on or after this date are imported. Set it to your go-live date so you do not import years of history the first time the Integration runs. |
|---|---|
| receive.lastModifiedOn | The timestamp of the most recently imported order. Managed automatically: you do not normally change it. |
Which statuses
| receive.orderStatuses | The statuses eligible for import. Default Placed. Add Parked, Backordered or Completed only if those orders should flow onwards. |
|---|---|
| receive.cancelledStatuses | Statuses that mean an order already imported has been cancelled. Default empty. See below. |
receive.cancelledStatuses is how a cancellation in Unleashed reaches the systems the order was sent to. When an order that was already imported reaches one of these statuses, it is not imported again. Instead its Document is tagged unleashed:status: followed by the status, and its fulfilment status is set to Cancelled, which passes the cancellation on. An order that was never imported is left alone.
A few details matter here:
- Statuses are matched against the custom status first, then the order status, ignoring case.
- Unleashed only allows a custom status on a
Parkedorder. So if your team cancels with a custom status calledCancelled, those orders arrive as Parked with that custom status, and listingCancelledcatches them. - Include
Deletedto catch deleted orders. Unleashed leaves deleted orders out of a list unless they are asked for, and this setting asks.
Which customers and warehouses
| receive.customerCodeExclusionList | Skip orders for these customer codes. Use it to keep internal or test accounts out. |
|---|---|
| receive.customerCodeInclusionList | When not empty, import only orders for these customer codes. An allowlist: everything else is skipped. |
| receive.warehouseCodeExclusionList | Skip orders assigned to these warehouses. |
| receive.warehouseCodeInclusionList | When not empty, import only orders assigned to these warehouses. The usual choice when one warehouse is run by a 3PL. |
How much detail to bring
| receive.serialBatch | Include serial and batch numbers on imported lines. Turn it on if the receiving system needs them. |
|---|---|
| receive.loadDetailedCustomerInformation | Load the full customer record from Unleashed rather than the summary on the order. Use it when the receiving system needs customer fields the order does not carry. |
| receive.getCustomerAndShipToFromOriginalTargetData | Find the original Document that created this order in Unleashed, and use its customer and ship-to details. Useful when the Unleashed record may have been edited after the order arrived. |
| weightUnit | The unit your Unleashed account records weight in, such as kg or lb. Unleashed does not expose this through its API, so state it here. Leave it empty and line weights are not imported. |
| weightFromAlternateUnits | Off by default. When a line and its product both lack a weight, work one out from the product alternate units of measure. Needs weightUnit. |
| autoCompleteParkedAssemblies | Off by default. Complete any Parked assembly on an imported order line before importing the order. If an assembly cannot be completed, the order is not imported and is only reconsidered next time it changes in Unleashed. |
Only one dedupe per document type
Once an order has been imported, it is not imported again as an Order when its status changes later. Plan your receive.orderStatuses around the status an order should be in when it is ready to flow onwards, not an earlier one.
Hilltop's 3PL phase
In phase two, Hilltop moves café stock to a 3PL warehouse coded 3PL-LEEDS. Café orders are keyed into Unleashed and placed when approved. Priya sets receive.setupDate to the go-live date, keeps receive.orderStatuses at Placed, sets receive.warehouseCodeInclusionList to 3PL-LEEDS so web orders fulfilled in-house are skipped, and adds Deleted and Hilltop's custom Cancelled status to receive.cancelledStatuses so cancellations reach the 3PL.
Recap
- Importing fetches orders modified since the last run, then applies your filters.
- Set
receive.setupDatebefore the first run to avoid importing history. receive.orderStatusesdefaults toPlaced; choose the status at which an order is ready to flow onwards.receive.cancelledStatusespasses cancellations on for orders already imported; includeDeletedto catch deletions.- Customer and warehouse inclusion lists are allowlists; exclusion lists skip specific codes.
Quick guides for this topic
Your progress is saved in this browser. Create a free account to keep it everywhere, take quizzes and earn certificates.