Skip to main content

Delete Sales Order

DELETE 

/api/sales-orders/:salesOrder

Deletes a sales order along with its dependent records (lines, fulfillments, allocations, payments). Inventory consumed by the order is released back to stock.

Required scope: orders:write

Grant this scope to your token under Settings → Developer → Personal Access Tokens.

The order cannot be deleted when any of its return receipts produced inventory that has already been consumed by other transactions — deleting it would orphan those downstream costs. In that case the request fails with 422 and the response data details which return receipts and quantities are blocking the delete.

Use POST /api/sales-orders/deletable to pre-check deletability, and the bulk delete endpoints to remove many orders in the background.

Authentication: Requires Bearer token.

Path parameters:

  • salesOrder (required): Sales order ID.

Requires permission: sales_orders.delete

Returns 422 when the order has a PayPal payment recorded or still clearing: cancel or archive it instead. Deleting an order cancels its active PayPal pay links. The same block applies to every delete path, including deleting a sales channel or integration whose orders hold PayPal money.

Returns 422 when a sales credit that belongs to another order has a line referring to one of this order's lines — deleting the order would also delete that credit, with the other order's payments. Remove or change that credit line first, or cancel or archive this order instead.

Request​

Responses​

OK

Response Headers
    Content-Type