Fulfill Order
POST//:domain/api/3pl/orders/fulfillmentOrder/fulfill
Report a shipment for a fulfillment order — the partner confirms what it shipped. Creates one SalesOrderFulfillment against the FO (inventory + COGS post at ship-time), decrements each line's remaining, and advances the FO Open → Incomplete ("Partially shipped") → Closed.
Body:
lines(required, min 1):{id, quantity_fulfilled}whereidis the FULFILLMENT ORDER LINE id (from List Orders),quantity_fulfillednumeric ≥ 0 (clamped to remaining).fulfilled_at(required date): the actual shipped timestamp (drives COGS dating).shipping_method,tracking_number(optional).provider_shipment_id(optional): idempotent dedup — a retried fulfill never records a duplicate shipment.
All-zero report → 422.
Auth: 3PL Integration Token (Bearer).
Request
Responses
- 200
Successful response