FROM CACHE - en_header

Inconsistent Order `source_name` when created from Draft Order: `shopify_draft_order` or `web`

Shopify Partner
1 0 0

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?

Thank you!

Replies 2 (2)
New Member
1 0 0

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:

  • Create a draft order and send email to customer for payment (through the normal Shopify UI)
  • Customer Pays invoice
  • New order is created and new order webhook is fired
  • Sometimes the source_name is 'web' and other times it's 'shopify_draft_order'

It seems like it should always be shopify_draft_order in this case.

5 0 2

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