Terms
Model
The shipment is scoped to one FBO account. Everything in the box lands on that account. To receive
for several customers, create one shipment per account.
Statuses
There is no endpoint to add tracking after create. A
created shipment stays created until it is cancelled or it arrives. To ship with tracking, cancel it and create again with carrier and trackingNumber, or with a rateId.
There is no partially_accepted status. A shipment does not close while some units are accepted and others are rejected. After accepted or rejected, pass includeLineItems=true and read quantityAccepted, quantityRejected, and inventoryItemIds.
Status changes are pushed as inbound_shipment.status_changed webhook events. When items are created, each fires inventory.vaulted and inventory.status_changed to in_vault. Those two inventory events are the same moment.
Three ways to ship
Whichever you choose, ship to the account’s intake address. The vault ID in that address is how the package gets matched to the right FBO account.