Hi Charlie,
After doing some investigation, I’ve been able to find out the reason you get that error message for some requests. Find below an explanation of what that error means, and why you’re possibly seeing it.
-
Every
line_itemin an order has afulfillment_servicewhich indicates a third-party warehouse that’s fulfilling the item as described here. Valid values aremanual(merchant would fulfill item), or the name of the provider, such asamazonorshipwire(a warehouse capable of fulfilling the item) as shown in the docs here. -
An order item with
fulfillment_serviceasmanualindicates the merchant would be fulfilling that order ‘themselves’ (used loosely here to mean there isn’t an automated third-party service), and hence no need to make a request to a third-party service to handle that order. On the other hand, if thefulfillment_serviceof the order item is a service (amazon, shipwire, etc.), then the merchant would be using that service to fulfill the order item. -
The FulfillmentOrder resource which represents either an item or a group of items in an order that are to be fulfilled from the same location has a
fulfillment_service_handlefield indicating how a fulfillment order would be handled. This isn’t documented but I believe thefulfillment_service_handleexpects the same valid values asfulfillment_servicementioned above. Thus, the only time one would need to send a fulfillment request for a fulfillment order is when thefulfillment_service_handlehas a valid value other thanmanual. -
Making a fulfillment request sends a request to a service provider asking them to handle a fulfillment order (all orders associated with it) or an order item from the fulfillment order. For such a call to be valid, the
fulfillment_service_handleshould have the value of a valid fulfillment service centre capable of API integrations.
To answer your question about checks, yes, I believe that is the case. You would have to check to make sure the fulfillment_service_handle field of a fulfillment order is not manual before making a fulfillment request.
I hope this throws more light on the error in question and helps you take measures to avoid having this error message or to handle the error appropriately should you encounter it.
Let me know if there’s anything you’d like me to throw more light on. Thank you!
Best,
Seth.