[Bug] Canceling Fulfilment Order does not change its status to "Cancelled"

Topic summary

API behavior mismatch: After canceling a Fulfilment Order (FO)—or canceling a Fulfillment associated with it—the FO status changes to “closed” instead of the documented “cancelled.” Documentation states FO should be “cancelled” when cancelled by the merchant and “closed” only when completed and closed.

Impact: Because both completed and cancelled FOs show as “closed,” it’s not possible to distinguish outcomes via status alone.

Workaround suggested:

  • Inspect each FO line item’s Quantity and FulfillableQuantity.
    • If both are non‑zero and equal, the FO was cancelled.
    • If both are zero, the product was removed from the fulfilment.

Limitations: Requires enumerating all line items, which is cumbersome and error‑prone for larger orders.

Current state: No official clarification or fix reported. The request for clarification remains open, with the key question being why cancellations result in “closed” rather than “cancelled,” and how to reliably differentiate completed vs. cancelled outcomes via status.

Summarized with AI on February 2. AI used: gpt-5.

According to Fulfilment Order Resource, a Fulfilment Order (FO) status should be set to “cancelled” once the fulfillment order has been cancelled by the merchant, and “closed” if the fulfilment order has been completed and closed.

However, if we make a request for cancelling a FO, then its status goes to “closed”, which is not correct since the FO was never completed. In that way, we would never actually know if a FO was cancelled or completed. Please could you clarify that?

2 Likes

[Edit]
However, if we make a request for cancelling a Fulfillment, then its FO status goes to “closed”, which is not correct since the FO was never completed.*

You can usually tell by looking at the Quantity and FulfillableQuantity fields for each line item within the FO. If both fields are non-zero and equal, then the fulfilment order was cancelled. If both fields are zero then the product was removed from the fulfilment.

It would be nice to see this sorted out properly, as enumerating every line item isn’t a very good workaround.