SalesOrders

Cancels a sales order (the app's Cancel page): delivered goods come back, transfers are cancelled.

Requires ManageSalesOrders and an Idempotency-Key header. Body optional: { "reason": "Customer changed their mind" }. Same code path as the app's Cancel page: units already delivered by completed transfers are returned to inventory, live transfers are cancelled and their reserved stock released, the order's lines are removed, and the order and its payment status become Cancelled with the history entry "Order cancelled by … (was …) (via API key '…')". Cancelled is terminal; Complete and Cancelled orders are refused.

post/api/v1/sales-orders/{id}/cancel

Request

  • Base URL: https://app.flexonthejob.com
  • URL: https://app.flexonthejob.com/api/v1/sales-orders/{id}/cancel
  • Auth: HTTP bearer

Path parameters

idinteger required

Sales-order id. Example: 318.

Request body

reasonstring nullable

Why the order is cancelled, up to 500 characters; omitted or blank = No reason provided (as the app's Cancel page). Example: Customer changed their mind.

Response

Cancelled; itemsReturned and transfersCancelled say what was undone.

salesOrderIdinteger

The sales order's id. Example: 318.

statusstring

Order status after the step: Pending, Picking, Packed, Shipped, Delivered, Complete or Cancelled. Recalculated from the order's transfers, so always read it rather than assuming the next status. Example: Packed.

fulfillmentStatusstring nullable

Aggregate status of the order's transfers (None, Pending, InTransit, AtWaypoint, Completed, Cancelled…), as fulfillmentStatus on the order. Example: InTransit.

transferIdinteger nullable

The transfer the step acted on (resolved when the request did not name one); null for /complete and /cancel. Example: 904.

messagestring nullable

Human-readable confirmation, as the app shows it. Example: Transfer status updated to In Transit.

unitsPickedinteger

/pick: units marked picked by this call (0 for other steps). Example: 10.

itemsReturnedinteger

/cancel: delivered units returned to inventory (0 for other steps). Example: 0.

transfersCancelledinteger

/cancel: transfers cancelled (0 for other steps). Example: 1.

Changes

No recorded changes to this operation across all 1 revision of this API.