This seems like it should be a basic ask, but I just want to ensure we follow best practice when setting this up. We are transitioning a Plus site to Shopify Fulfillment Network, but there are a couple scenarios where a secondary warehouse would fulfill a line item. We need to alert the secondary warehouse to fulfill a line item when:
For the first scenario you mentioned, Shopify will assign the item to be fulfilled by the location that does stock it. So only stocking the hazardous items in the non-SFN location should do the trick.
For the second stock-related scenario, if the item is out of stock, Shopify should automatically assign the order to a next location that does still have stock left.
Check out the FulfillmentOrder resource for more details:
Thanks for the reply. We're still looking for a way to get the FulfillmentOrders for a location that has inventory tracked by Shopify (e.g. "St. Louis Warehouse").
If we try to use assigned_fulfillment_orders.json to get fulfillment orders for the Shopify-tracked "St. Louis Warehouse" location, we are given the error "The api_client is not associated with any fulfillment service." It seems it won't return FulfillmentOrders unless we use a FulfillmentService location.
If we create a FulfillmentService for "St. Louis Warehouse" though, we have a different problem, as now we can't manage inventory inside of Shopify and products that run out of stock at SFN would need to have their "Inventory managed by" setting changed to "St. Louis Warehouse" whenever they run out of stock at SFN.
Can we get FulfillmentOrders for a Shopify-tracked location instead of needing to create a FulfillmentService?
You can use our Fulfillment Order GraphQL API. You can then filter by `assignedLocation` as well as filter orders by a `location_id`. See this walkthrough: