The Order API is used to manage fulfillment orders. Use it to create new orders, or to update, cancel or to get information about already created orders.

Order API vs. Purchase Order API
Our Purchase Order and Order APIs are both used to send fulfillment orders to our warehouses for outbound shipments. The Order API will be sufficient for B2C orders as it would have the necessary fields for standard direct-to-consumer shipments such as the customer’s contact info, ship-to address, SKU and QTY, shipping method, etc.

For B2B shipments, most retailers will require additional info to process your Purchase Order. The Purchase Order API will have all the fields available in the Order API, along with additional fields to meet the requirements for these more complex retailer orders. These fields include retailer SKUs, bill-to info, shipping/delivery windows, and more.

Use of externalIds and the “canSplit” option
External ids must be unique in our system, so, when splitting orders across two warehouses, we follow the convention of adding “.1” to the first order’s externalId and “.2” to the split order. You will need to use this when trying to GET an order by its externalId, or to cross reference the externalId in an order.completed webhook JSON body with the original externalId on your end.

List of values for status field
  • held
  • unprocessed
  • processed
  • submitted
  • cancelled
  • completed
  • delivered
  • returned