The Accept Order API should not be used in most new configurations of Kibo OMS. It should only be used by legacy clients who do not keep inventory in OMS and do not use standard Kibo order routing. Non-legacy configurations do not need this API because when an order is put into the READY state, it is automatically moved to “FSM 100: Accept Order” status. Non-legacy configurations should continue with the Assign Order and Shipment APIs.
The .json address above can be used to access the schema within Postman. An example use of the Accept Order API follows here — or go directly to the schema or the sample Postman Collection.
It has a comparable request build to the Assign Order API used by other configurations.
The example case will accept an order with the following properties:
- One item from Order 0123456
- Manually assign to Location 01010
Accepting an order requires:
|orderID||integer||A unique identifier for the order. The minimum value is "1".|
|sendEmails||boolean||Should emails be sent?|
|rectifyOrder||boolean||Should the order be rectified?|
|packageAssignment||array||The details for how to assign the shipment.|
Package Assignment Options
The Package Assignment property can be defined by any of three possible options. One is the standard Assign option, while the others are the Cancel and Backorder actions that can be performed by this API. The available properties for these options are:
Option One: Assign
The following properties are available to assign an order. AutoAssign, locationID, shippingAmount, shippingTaxAmount, and itemAssign are required.
|shipmentID||integer||A unique identifier for the shipment. The minimum value is "1".|
|autoAssign||boolean||Whether the order should be auto assigned to a fulfiller.|
|locationID||integer||A unique identifier for the fulfillment location. The minimum value is "1".|
|shippingAmount||number||The shipping amount of the shipment. The minimum value is "0".|
|shippingTaxAmount||number||The shipping tax amount of the shipment. The minimum value is "0".|
|shippingTaxRate||number||The shipping tax rate of the shipment. The minimum value is "0".|
|shipmentStatus||enum||The current status of the shipment (READY or ASSIGNED).|
Option Two: Cancel
Only one property is required to cancel an order assignment.
|shipmentStatus||enum||The current status of the shipment (CANCELLED).|
Option Three: Backorder
To assign an order to backorder, use the following structure. Only shipmentStatus is required.
|shipmentStatus||enum||The current status of the shipment (BACKORDER).|
|backOrderReleaseDate||string||The date the shipment will be released from backorder. Supports date-time format.|
Each of these options can be combined with an Item Assign (/packageAssignment/itemAssign/) object to specify the package items being assigned. The Item Assign parameters are listed below, but only an orderItemID is required.
|orderItemID||integer||A unique identifier for the order item. The minimum value is "0".|
|itemTaxAmount||number||The amount of tax on the order item. The minimum value is "0".|
|itemTaxRate||number||The rate of tax on the order item. The minimum value is "0".|
|quantity||integer||The quantity of order items included.|
|dispositionReason||enum||The reason for the cancellation (customer_changed_mind, created_by_mistake, etc.).|
|dispositionOtherReason||string||If dispositionReason is ’other’, provide an explanation here. The minimum length is 1 and the maximum length is 255.|
The Full Request
This is the entire request that will assign an order, following the structure of Option One. It includes the object Item Assign (/packageAssignment/itemAssign/) with an Order Item ID and quantity, in order to specify the package items being assigned.
The returned response follows the same structure as the Get Order API, providing information about the order that was accepted.