Skip to main content
Back to changelog

OrderDisplayFulfillmentStatus now returns FULFILLMENT_NOT_REQUIRED for orders with no items to fulfill

As of API version 2026-10, the OrderDisplayFulfillmentStatus enum can return a new value: FULFILLMENT_NOT_REQUIRED. It is returned for orders that are not fulfilled but have no items remaining to fulfill — for example, an order that was fully cancelled or fully refunded before any items were fulfilled. Previously, these orders returned UNFULFILLED.

This is an additive change, and integrations that handle unrecognized enum values gracefully won’t break. If your app branches on or filters by UNFULFILLED, see “What you may need to do” below. As with all GraphQL enums, treat the set of values as open — new values may be added in future versions.

What's changing

  • Order.displayFulfillmentStatus (and any field typed as OrderDisplayFulfillmentStatus) may return FULFILLMENT_NOT_REQUIRED on API version 2026-10 and later.
  • This value represents an order whose remaining fulfillable quantity is zero — for example, all line item quantities were removed through order edits, or the order was closed by cancellation.
  • API versions earlier than 2026-10 are unchanged and continue to return UNFULFILLED for these orders.

Why The UNFULFILLED status was misleading for orders that have nothing left to fulfill. FULFILLMENT_NOT_REQUIRED makes the order's true state clear to merchants and to the apps that read it.

What you may need to do

  • If your app exhaustively maps OrderDisplayFulfillmentStatus values (switch statements, status-to-label/badge maps, or generated types), add handling for FULFILLMENT_NOT_REQUIRED when you adopt 2026-10.
  • If your app branches on or filters by UNFULFILLED, note that orders with no fulfillable items report FULFILLMENT_NOT_REQUIRED instead on 2026-10 and later.
Was this page helpful?