API
Errors

order-not-cancelable

The order is past the point where the API can cancel it.

order-not-cancelable

HTTP 409. The order exists and belongs to your connection, but it can no longer be canceled through POST /v1/orders/{orderId}/cancel.

{
  "type": "https://developers.supliful.com/errors/order-not-cancelable",
  "title": "Order cannot be canceled",
  "status": 409,
  "detail": "The order is ACCEPTED and can no longer be canceled through the API. Contact the merchant to stop it.",
  "instance": "/v1/orders/b1d0f9c4-2a6e-4f88-9c3a-70f1d2e5a6b7/cancel",
  "orderStatus": "ACCEPTED"
}

What it means

An order can only be canceled while it is NEW, which is roughly the first two hours after you create it, before it is accepted for fulfilment. An order whose payment failed can also be canceled. Otherwise the order is on its way to, or already with, a warehouse, and pulling it back takes a person. orderStatus tells you where it stands:

  • PROCESSING: the order requires additional review. It never had a cancel window.
  • ACCEPTED or later: the window has closed and the order is being fulfilled.

The status in this error is the one the order had when you asked. Fetch GET /v1/orders/{orderId} if you need its current state.

How to fix it

Your integration can't fix this. If the order really must be stopped, the account owner has to contact Supliful. Treat the order as live in the meantime: it can still ship, and you'll get its webhooks as normal.

To avoid this, send cancellations as soon as your own system decides on them. The window is measured from creation, not from your last request.

Retry behaviour

Don't retry. An order only ever moves further from being cancelable, so the same request will get the same answer.

On this page