I'm finding the order source_name when created through draft orders to be inconsistent. Sometimes it's "shopify_draft_order" and other times "web". Following their draft order and order timelines, I'm unable to find any differences between the order/draft orders. The API doc merely lists the Shopify values (web, pos, shopify_draft_order, iphone, and android) but does not explain the conditions of their assignment. Yes, they would be self-explanatory if it weren't for this inconsistency.... Does anyone know why this is happening?
I'm running into this issue as well.
I'm trying to add a tag with the API when a new order is created from a draft order, but I can't reliably evaluate source_name to be what I expect. These are my steps:
It seems like it should always be shopify_draft_order in this case.
I am not a programmer but here's what I've found.
If one creates and completes the draft order entirely via the backend, the source name is "shopify_draft_order".
If one creates a draft and uses the link from the email, the source is "web", although a new field (something about landing site) populates with a long string which contains the word "invoice". That field does not appear in regular, customer-generated orders.
Hope this helps