Fulfillment orders is a new concept within Shopify that refers to what needs to be fulfilled on an order, from one location. There can be multiple fulfillment orders on an order if it contains items stocked at different locations. A location can refer to either a Fulfillment Service location, or a merchant created and managed location. This new granularity provides apps with the ability to give merchants more insight into the fulfillment process.
New App Capabilities
Fulfillment Apps have a lot of new capabilities with the Fulfillment API. Apps can now:
- Transfer fulfillment orders between locations.
- Accept or decline fulfillments requests from merchants, providing more clarity over whether the app intends to fulfill or not.
- Communicate to merchants about specific fulfilments requests including passing messages when accepting, rejecting, or creating fulfillments.
- Register a callback_url to be notified when there are pending fulfillment requests.
- Have fulfillment work assigned to them instead of having to pull details from the Shopify.
- Access the location that an order is to be fulfilled from.
Get started in the Unite developer preview
To get started with the developer preview, create a new development store with the Unite 2019 developer preview enabled. In developer preview you will be able to see the new merchant workflows in the order and fulfillment sections of the Shopify Admin.
To start working with the Fulfillment Orders API check out the Getting Started guide. For the full technical specifications see either the GraphQL API Reference or the REST API Reference.
Please note that this API is in early access and is accessible only through the unstable API version. As such there are a few known issues that are expected to be addressed shortly that should be considered before testing in your development store.
- Orders that are edited using the new Order Editing feature or API will not have those changes reflected in the fulfillment orders assigned to that order. A fix is expected shortly. If you want to test the features currently, we recommend you do so on independent development store with developer preview enabled until the fix is made.
- Issuing a refund for, or completely cancelling an order that is populated with fulfillment orders will cause the fulfillment orders to become out of sync with the original order. It is recommended to not perform these actions on the same shop you are testing fulfillment orders with.