Bulk Delete Purchase Orders
DELETE/api/purchase-orders
Bulk delete purchase orders by IDs or by filter criteria.
purchase-orders:writeGrant this scope to your token under Settings → Developer → Personal Access Tokens.
Authentication: Requires Bearer token.
Pass either ids[] or filters{} (Spatie filter params — same as list endpoint). Filters are resolved to IDs before deletion.
Purchase orders that cannot be deleted are skipped and reported per id in warnings — e.g. a dropship purchase order whose shipping label is still being bought, refunded, or in transit (warnings.ids.{id}.dropship_labels, code PurchaseOrderIsLinked), or a purchase order with invoices attached (warnings.ids.{id}.purchase_invoices, same code; delete the invoices first). The rest are deleted.
Requires permission: purchase_orders.delete
Request
Responses
- 200
- 401
- 403
- 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.
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.