In reading through the API documentation, I'm confused about how FulfillmentServices are associated with Products and Orders.
We have an application where numerous suppliers will be providing catalogs of Products. We'll use the Product APIs to add these Products into Shopify and keep the inventory_quantity up to date. (We might also provide the webhook support for the realtime queries if necessary)
Here are my specific questions:
1. In the Product documentation, it says that I can set a variant: fulfillment_service to associate the Product with a specific FulfillmentService. BUT, the documentation says "fulfillment_service: Service who is doing the fulfillment. Valid values are: manual," Does this mean that I can not actually assign a valid FulfillmentService with the Product?
2. Now, when I retrieve Orders, IF I am able to assign a FulfillmentService to a Product, then can I see all of the variants for each line item in an Order to be able to retrieve the FulfillmentService for each line item?
Our idea is that we would either register a webhook, or query for new orders, and then parse the order line items to determine how to properly split the orders to the various FulfillmentServices. If this is not correct, or there is a better way to handle this, can you point me to documentation that will assist me in better understanding your model?
You create a fulfillment service and when an app is installed add it to the shop. Instead of having a user add a service like how it was in the past (i.e. with Amazon or Shipwire) with credentials they can install an app that does the fulfillment for them. One of the advantages of this is it removes a burden on Shopify to add fulfillment providers which requires custom code.
What you'll do is register your fulfillment service and then it'll show up as an available provider if the merchant chooses to have automatic fulfillment. I'm not entirely sure about the naming convention, but you'll probably have some kind of name/id and the merchant will choose that. Now when the say "fulfill" a webhook/request will be fired off to that fulfillment service.
Sadly the feature hasn't really been hammered out that well in terms of solid documentation and examples.
Our mutual customer is a large Internet retailer, and I know they are not going to want to manually process orders. We're looking for a way to completely automate the integration of our two systems. Since our system is going to be representing numerous (perhaps hundreds!) of fulfillment services, we want to be able to "tag" products with the supplier name or identity as we push them into Shopify. Then, as we pull orders to process we can (hopefull!) retrieve that "tag" and know which one of the numerous suppliers to route the fulfillment orders to.
Will your current platform prevent me from putting any other value into the "fulfillmentService" variant? Since we can use your API in our app to create all of the fulfillment services, we know who they are, and could then create these associations to products.
Likewise, as we get the order acknowledgements and tracking details from the various suppliers, we'll be adding and updating fulfillment information on orders using the Fulfillment APIs.
Is this just completely off base?