Return Unsold Consigned Stock
POST/api/purchase-orders/:purchaseOrder/consignment/returns
Return unsold consigned stock to the supplier for a consignment purchase order. This removes the returned units from sellable stock; it creates no bill and no credit, because unsold consigned stock was never owed for. Returning stock also updates the purchase order's consignment settlement status, and a purchase order whose stock is now entirely sold-and-settled or returned is automatically closed.
Request body (all optional):
- line_quantities (object): map of purchase order line ID to the quantity to return for that line. Each value is clamped to the units still unsold on hand. Omit to return every unsold unit across all lines.
Returns 422 when the purchase order is not a consignment order.
Authentication: Requires a Bearer token.
Request
Responses
- 200
- 401
- 403
- 404
- 422
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not found — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
Validation failed — the body is a field → messages map (Laravel shape) or the platform envelope with a stable machine-readable code. Fix the payload and resubmit.
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.