How can I add the Staff who converted the order from Draft to Actual Order?

Hi everyone!

I am planning to add the information of an order into Google Sheet using the Shopify Flow. The goal here is to know who created the draft order after it was converted into an actual order. We wanted to get the Order Number, Who created the draft, and Who converted the draft order.

So, I have been trying to check options here, and what I am seeing are:

  • You can create separate flow for the Draft order to know the staff who created it
  • After converting the order from draft, there is no option to know who created it as well as in the order timeline

I’ve been trying to figure out options what I can do but I am not seeing anything as of the moment. I also read some variables in the dev docs, and variables you can use in the flow, but no luck.

Perhaps, someone knows what we can do? Since we tried to have tag in the draft orders but for some reason Shopify is removing the tags whenever our team updates the draft orders.

Please share your insights.

Thank you so much!

staffMember field in the graphql api or the ORDER of a completed draft order

This means querying the draftorder to it’s order property and getting that orders fields.
see this mechanic task for example of the graphql https://tasks.mechanic.dev/auto-tag-draft-orders-by-originating-staff-member.
:bomb: I think there’s some gotcha’s with what “completed” means and when the staffmember order field actually populates.
but I can’t find what I’m thinking of possibly due to the recent forum change only the tangential issue of reports for draftorder creation View or Report to show who created draft order?.

Also see the fields for app, customerjourney shopify.dev/docs/api/admin-graphql/latest/objects/Order#field-Order.fields.app , shopify.dev/docs/api/admin-graphql/latest/objects/Order#field-Order.fields.customerJourneySummary

Or you might need to dig into Draftorder events attributeToUser field

That sounds like some other process is wiping tags.
Draft orders with tags should become orders with the same tags.
Even duplicating should preserve tags

Hi PaulNewton! I appreciate your insights about it. I would like to confirm, does it mean that it cannot be done by using the Shopify Flow? If it is possible, can you share a sample flow that I can replicate in my store? I am a bit lost as of the moment. Thank you!

No, i never said that.
You have to build up the custom queries.

That’s work to recreate and test your setup, if you need services reach out by PM or request that I PM you.

Hey @ligaya,

Hope this finds you well! You’re absolutely right that Shopify Flow doesn’t have a direct way to track the draft order creator once it’s converted to a regular order. The good news is there are several workarounds that can solve this for you!

The Best Solution: Use Metafields with Shopify Flow

Since you mentioned tags are being removed when draft orders get updated, metafields are going to be your most reliable option. Shopify Flow can update draft order metafields, and these are much more persistent than tags during the conversion process.

Here’s exactly how to set this up:

Step 1: Create a Draft Order Flow

  • Trigger: “Draft order created”
  • Action: “Update draft order metafield”
  • Metafield details:
    • Namespace: staff_info
    • Key: creator_name
    • Value: Use liquid to capture the staff member info

Step 2: Create an Order Conversion Flow

  • Trigger: “Order created”
  • Condition: Check if order source is “shopify_draft_order”
  • Action: “Add row to Google Sheet” with:
    • Order Number: {{order.name}}
    • Draft Creator: Pull from the metafield you created
    • Order Converter: Staff member who processed the payment

Alternative Option: The Mechanic App

If Flow doesn’t give you the flexibility you need, there’s actually a specific Mechanic task called “Auto-tag draft orders by originating staff member” that automatically tags each draft order with the name of the store staff member who created it. This might be more reliable than Flow for this specific use case.

Why Your Current Approach Isn’t Working

The tag removal you’re experiencing happens because Shopify automatically processes and updates draft orders during conversion, which can strip custom tags. It’s not something you’re doing wrong - it’s just how the system works, unfortunately.

My Recommendation

Start with the metafield solution since it should work immediately and doesn’t require any additional apps. If you find you need more advanced tracking down the road, we can always explore custom app development or other solutions.

Let me know if you need help setting up those specific Flow steps - I’m happy to walk through the exact configuration!

Best regards,
Shubham | Untechnickle

P.S. - Once you get this set up, you’ll wonder how you ever managed without it. The ability to track the full order lifecycle is such a game-changer for accountability and customer service!

This is great! Let me work on it, thank you!

Have you tried simply using the value from the staffMember field from the order? At least for me, this approach works:

1 Like

Hello @ligaya , Have you later gotten solution’s to this or you would like me to be of help to you?