Shopify Flow is an ecommerce automation platform that enables you to automate tasks and processes within your store and across your apps.
We use a third-party inventory system that is synced with Shopify to list our product. Recently, we were told to fill out things like Age, Gender, color, and other metadata information that does not carry over from our third-party system. Doing this via Bulk Edit is too time-consuming for the volume we work with (and how many people we have), so I'm looking at Flow to automate as much as we can.
Basically, the entire flow will (hoepfully) work like this (The bolded/underlined section is already done and works)
Right now, I'm focusing on having it automatically assigning the correct category as the first step. So if our product type/category is Crossbody Bags, then it will automatically fulfill the Taxonomy under gid://shopify/TaxonomyCategory/aa-5-4 (which is Handbags).
So, I guess my question is how the heck do I do this??? Do I have it Get the Product Data, the Product Variant Data, or both (because it lists everything as a variant. I don't know why)?
I appreciate any help you can give! I'm going to continue researching and playing around with the flow, but making sure I"m getting the right information to then ensure I'm fulfilling the right thing is the tough part!
Solved! Go to the solution
This is an accepted solution.
Aha! I figured it out! I will do my due diligence to help others. 😉
After my product is listed, I check the category. (Right now I only have handbags, but everything in our store can be narrowed down to 7 categories for sorting). Then I had it get the product data, and then I executed the code below.
I specifically had to use the productCategory and productTaxonomyNodeId, as seen below. (These are depreciated, as Paul stated above, but Flow hasn't updated to fully depreciate these yet, so once we're able to use the actual list we'll have to update this)
{
"input": {
"id": "gid://shopify/Product/8606116380921",
"productCategory": {
"productTaxonomyNodeId": "gid://shopify/ProductTaxonomyNode/329"
}
}
}
However! All links to get to the node are depreciated. But, thanks to the Wayback Machine, I found a list of the numbers!
Tested it, ran it, and it worked! Manually updating is now a thing of the past. :3
It's not clear what you have built in Flow versus outside of Flow. The first question is what triggers this to happen and what information do you have in the workflow based on that trigger?
If you have a lot of categories this could get unwieldy pretty quickly. I'd probably use Run code as it would allow you to write complex logic all in one place.
Everything is built inside the flow (so far).
Basically, now that I've had more time to think on it and tweak it: I need it to assign a category based on the collection it's in (so if a bag is in the Handbag collection, it would assign the Taxonomy category for handbags).
I've narrowed it down to using the Send Admin API Request, and doing a productUpdate mutation, but I'm not 100% sure on where to add "category" so I can include the specific piece for the category. I'm THIS close to figuring it otu!
I think you probably need the productCategory { productTaxonomyNodeId } field. It's deprecated, so one risk there is you might need to fix it after Flow implements the next API version (it changes to just category). You'll need to know the node id for the category you want to assign.
So I've tried both the productCategory as well as the category, and neither one seems to work. Not sure what or where I need to be doing this, but it either gives this error, or just flat out doesn't seem to work.
Also, I have the list of the taxonomy IDs, but it's not specifically the one that goes gid://shopify/ProductTaxonomyNode/XXXX. The links to that list seem to be broken!
This is an accepted solution.
Aha! I figured it out! I will do my due diligence to help others. 😉
After my product is listed, I check the category. (Right now I only have handbags, but everything in our store can be narrowed down to 7 categories for sorting). Then I had it get the product data, and then I executed the code below.
I specifically had to use the productCategory and productTaxonomyNodeId, as seen below. (These are depreciated, as Paul stated above, but Flow hasn't updated to fully depreciate these yet, so once we're able to use the actual list we'll have to update this)
{
"input": {
"id": "gid://shopify/Product/8606116380921",
"productCategory": {
"productTaxonomyNodeId": "gid://shopify/ProductTaxonomyNode/329"
}
}
}
However! All links to get to the node are depreciated. But, thanks to the Wayback Machine, I found a list of the numbers!
Tested it, ran it, and it worked! Manually updating is now a thing of the past. :3
Slight update to this!
In order to get it to sort everything properly, I changed the Check If to see what the product type was (Backpacks OR Shoulder Bags OR totes, OR etc...) and then if it met those requirements, it assigns handbags. Otherwise, it checks for the next batch (jewelry Product Types), and so on and so forth.
Next step: Assigning gender and age! \o/
This is amazing. Can you kindly screenshot your update.
This is exactly the thread I was hoping to find!!! Love it.
BUT.... I built all of this on a trigger of "Product created" and found that it works 100% of the time when I'm exporting/creating items one at a time, but only about 60-75% of the time when I'm creating items in bulk, exporting from our BC backend. My guess is the Get Product Data action is returning product ID results before the next item is finished being created so it's just updating the previous item again, resulting in the gaps (just a hunch). In a world where we might have bunches of items flowing into Shopify at the same time, is there a more reliable trigger than on "Product created"?
Flow triggers are based on events that come from Shopify. Flow doesn't drop events so if you are seeing it not run, there is likely a specific reason. For example you may be updating a product not creating it.
Hey @paul_n thanks for the response!
Sorry if I wasn't clear - the problem isn't that it isn't running. It IS running once for each new item that was just created, as I would hope. But it's not always updating the right item. Sometimes it updates the most recent item, but then sometimes it repeats and updates the same item more than once. For example, I just tried exporting 8 items all at once from our back-end to Shopify. The flow ran 8 times, as one would expect. But here are the ID's it used for each run
So only 4 of the newly created items were assigned the right category. The other 4 runs of the flow just used the ID of an item that had already been updated.
So maybe I've done something wrong with the "Get Product Data" action? I did have to depart a little from the OP's screenshot, because his shows "Get products sorted by created at, in ascending order", and when I did that, it always retrieved product data for the very first item I created in our system, not the most recent item. So I changed that to descending order, rather than ascending. And then it worked (but one at a time only).
Is there a better way to fetch the product data? I'm confused why we can't just, say, get the product ID for the exact item whose creation triggered this whole flow in the first place. Or can we?
I can't really troubleshoot your workflow without seeing it and the details. I'd start a new topic and post some screenshots
I started a new thread with screenshots etc at https://community.shopify.com/c/shopify-flow-app/quot-get-product-data-quot-not-keeping-up-with-item...
Thanks!
When is it expected that https://shopify.github.io/product-taxonomy/releases/2024-07/ will be incorporated into Flow? Working a launch now and trying to assess the change and even if it's even worth it to build at this time. This use case (using taxonomy to assign tags) is a huge opportunity for automation. In my spec, I'd like it to map each taxonomy node as a tag to allow for easier merchandising to department/categories.
Thus, a Necklace at level 3 "necklace" also gets tagged with level 2 "Jewelry" and level 1 "apparel and accessories".
Thanks - SD
The product.category object in Flow should already contain the taxonomy. Not sure what you need from that specific release, but Flow is currently using 2024-04 as the API version. We are probably 1-2 months away from adopting 2024-07.
Hello,
where exactly can I find the product.category object?
I tried to search for it under the "Send Admin API request" but this mutation does not exist.
Thank you,
Patrizia
It's not a mutation but a variable that is available in workflows that have a product
Hello,
Thank you!
After a ton of trial and error and research I was able to find the number I need for T-shirts.
Thank you for your info!
I wouldn't have been able to make this work without your post!
@summitsoul I am looking everywhere for the number for the T-shirt category. I am glad that you are able to find it. Please point me in the right direction.
For my tshirt category: gid://shopify/ProductTaxonomyNode/9532
> You can find yours too.
It took me days to figure this out since I'm a beginner with all of this:
1. Install GraphQL https://shopify.dev/docs/api/usage/api-exploration/admin-graphiql-explorer
2. Give it the necessary permissions (I just gave it all)
3. Create one product where you manually add the correct taxonomy category
4. Open this product in Shopify > Products. Note down the product id (last number in the url link)
5. Enter query in the GraphQL app:
query MyQuery {
product(id: "gid://shopify/Product/yourproductID") {
options {
id
}
productCategory {
productTaxonomyNode {
fullName
id
}
}
}
}
Flow now supports Admin API version 2024-07.
Discover how to increase customer engagement on your store with articles from Shopify A...
By Jacqui Apr 23, 2025Hey Community 👋 Did you know that March 15th is National Everything You Think Is W...
By JasonH Apr 1, 2025Discover how to increase the efficiency of commerce operations with Shopify Academy's l...
By Jacqui Mar 26, 2025