---
title: >-
  OrderDisplayFulfillmentStatus now returns FULFILLMENT_NOT_REQUIRED for orders
  with no items to fulfill - Shopify developer changelog
description: >-
  Shopify’s developer changelog documents all changes to Shopify’s platform.
  Find the latest news and learn about new platform opportunities.
source_url:
  html: >-
    https://shopify.dev/changelog/orderdisplayfulfillmentstatus-now-returns-fulfillmentnotrequired
  md: >-
    https://shopify.dev/changelog/orderdisplayfulfillmentstatus-now-returns-fulfillmentnotrequired.md
metadata:
  effectiveApiVersion: 2026-10
  affectedApi:
    - displayName: Admin GraphQL API
      handle: admin-graphql
  primaryTag:
    displayName: API
    handle: api
  secondaryTag:
    displayName: Update
    handle: update
  indicatesActionRequired: false
  createdAt: '2026-06-24T13:25:23-04:00'
  postedAt: '2026-07-03T12:00:00-04:00'
  updatedAt: '2026-06-29T14:41:16-04:00'
  effectiveAt: '2026-06-25T12:00:00-04:00'
---

July 3, 2026

Tags:

* Admin GraphQL API
* 2026-10

# 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 a backward-compatible, additive change: integrations that already handle unrecognized enum values gracefully don't need to do anything. 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.
