Not Update Fulfillment Status Using order Shopify API

Topic summary

Issue: Attempt to change an order’s fulfillment_status via the Orders API succeeds with 200 OK but does not update the status in Shopify.

Context: A webhook sends new Shopify orders to ShipStation. After adding tax and marking the order “Shipped” in ShipStation, the expectation is that Shopify reflects the fulfillment status. A Postman request to /admin/api/2022-10/orders/{id}.json sets fulfillment_status along with other fields, but Shopify shows no change.

Key clarification: In Shopify, fulfillment_status is derived from Fulfillment records and cannot be directly edited on the order. You must create a Fulfillment to mark items as shipped.

Action recommended:

  • Use the Fulfillments endpoint (POST /admin/api/{version}/fulfillments) to create a fulfillment for the order’s line items.
  • Ensure ShipStation sends fulfillment data (items, tracking) rather than trying to update the order object.

Technical note: “Fulfillment” represents shipment creation; updating the order resource does not mark items as fulfilled.

Status: Guidance provided; no confirmation from the original poster. Likely resolved by using the fulfillments endpoint.

Summarized with AI on January 24. AI used: gpt-5.

Hello Support, I want to share one problem regarding the order update fulfillment status in the Shopify account using Shopify order API. I have set up a webhook in the ship station. When an order is created in Shopify, the order is also get added to the ship station at the same time. after that admin add a tax on that particular order and change the status (Shipped). When admin is updating an order from Shipstation then the same order in Shopify should be update to fulfillment status. I also calling an update order API to change the status but they are not reflecting in Shopify store. So could you please suggest me that change the fulfillment order status is possible in Shopify?

I am using this request in postman
URL: https://myhoneycomb-us.myshopify.com/admin/api/2022-10/orders/4948402012385.json

{
“order”: {
“order_number”: 1127,
“note”:“This is for testing purpose”,
“fulfillment_status”: “fullfilled”,
“phone”: “+917788448888”
}
}
The request status is 200 Ok but fulfillment_status is not changed.
Please help me if any solution for this.

Hi there,

I am afraid that is not how fulfillments work. If you want to fulfill the order (e.g. change the fulfillment status) you need to use the fulfillments endpoint and create a fulfillment.

https://shopify.dev/docs/api/admin-rest/2023-01/resources/fulfillment#post-fulfillments

Cheers,

Gary