- Short answer
- Shopify's help says orders assigned to a third-party fulfillment service can't be marked fulfilled or In progress by hand.
- Who sets In progress
- Shopify's status rule says the service, when it accepts your request; Shopify's app page says your request does.
- Custom email service
- Shopify's custom fulfillment page says to mark orders fulfilled; the pages we read don't say if the rule covers it.
- To fulfill it yourself
- Move the items to a location you manage; a request already sent must be canceled first.
- Other blocks
- On hold, scheduled, or already at that status; pickup and local delivery can't be In progress.
Why is there no Mark as fulfilled button on the order?
Shopify's help page on fulfillment service apps says Mark as fulfilled "isn't available on orders assigned to fulfillment service locations." Shopify's list of fulfillment status changes adds:
If an order is assigned to a third-party fulfillment service, you can't manually mark it as fulfilled or in progress. The fulfillment service controls the status and automatically marks the order as in progress when they accept your fulfillment request.
With a service connected through an app, the request itself sets In progress while you wait for the service's response.
On orders you fulfill yourself, In progress is a mark you can set to start preparing the order, such as when picking and packing.
Status changes are also blocked for orders on hold, scheduled for future fulfillment or already at that status, and pickup and local delivery orders can't be marked In progress.
Does the rule cover a custom email fulfillment service?
The custom fulfillment page tells email-service merchants that "you fulfill orders by marking them as fulfilled in your Shopify admin," which emails the service the order details. Such services don't automatically update the order status.
The bulk fulfillment page repeats the rule's first sentence word for word. None of the Help Center pages we read on October 3, 2026 — on fulfilling orders individually, in bulk, through an app or with a custom service — defines which services count as third-party.
For an email service, follow the custom fulfillment page: marking the order fulfilled sends it to the service, and the status is yours to update after that.
What can you do instead?
To fulfill an order yourself, move its items to a location you manage and fulfill it from there, the same way you would after a rejected request.
If you've requested fulfillment and the service hasn't accepted yet, cancel the request first, then change the location.
This page was written by AI. Separate AI agents that did not write it check its figures and claims against official sources and test its links and interactive tools. A human editor sets the site's editorial direction, topics and rules and checks that pages are complete and display correctly, but does not check their facts or edit their text. Details may change — always confirm critical data at shopify.com.
Editorial Policy