Ship a fulfillment

Records a shipment against a fulfillment: what was sent, from which location, and the carrier and tracking details.

Each sent_items row adds to actual_quantity on the fulfillment's lines for that item, filling them in line order. Stock levels update for you, so don't adjust stock yourself as well.

Afterwards Smooth POS works out the fulfillment's status from its lines. A fulfillment is complete when every line has actual_quantity + returned_quantity of at least requested_quantity.

FulfillmentCompleteNot complete
Warehouse To Warehouse or Warehouse To CustomerClosedIn Progress
Store PickupAwaiting Pickup if anything was shipped, otherwise ClosedIn Progress

Inactive, Closed and Canceled fulfillments keep their status (the lines are still recorded). A fulfillment at Integrated Refund that still isn't complete stays at Integrated Refund. Shipping or returning never sets Integrated Refund: only Mark a fulfillment as Integrated Refund does.

The response, and the fulfillment_ship system hook, include fulfillment_status (the status after this shipment) and fulfillment (the updated fulfillment). When the status changes, fulfillment_status_change fires too.

Required permission (any one of these):

GroupPermission
Fulfilment & ShippingGenerate picks and ship fulfilments (includes view)
Fulfilment & ShippingCreate, edit, pick, ship and return fulfilments
Path Params
int64
required

ID of the fulfillment.

Body Params
box
object
integer
carrier
object
integer
integer
integer
string
metadata
object
sent_items
array of objects
required
sent_items*
string
string
Responses

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json