Update Shopify inventory with CSV export, but only for matching SKUs

Hello Make community,

I need your help with an automation I’m trying to set up.

:small_blue_diamond:Goal:
I want to update the inventory quantities of my Shopify products daily, using a CSV export from my point of sale system.

:small_blue_diamond:Context:

My CSV file contains more products than are actually listed in my Shopify store.

In the CSV:
Column 26 contains the SKU (e.g., “SKU #1”, “SKU #2”, etc.).
Column 14 contains the quantity in stock that needs to be updated in Shopify.

In Shopify:
Only certain SKUs from the CSV exist as products.
SKUs are used as unique identifiers.

:small_blue_diamond:What I want to achieve:

Loop through the CSV file.
Only update the inventory for products in Shopify where the SKU matches.
Ignore SKUs that exist in the CSV but do not exist in Shopify.

:small_blue_diamond:Problem:
I can parse the CSV and read each line, but I don’t know how to properly:

Search for the Shopify variant by SKU.
Only proceed with the inventory update if the product is found.
Skip or avoid errors when the SKU doesn’t exist on Shopify.

:small_blue_diamond:Important details:

  • Column 26 → SKU (to match with Shopify variant SKU).
  • Column 14 → New stock quantity (to update in Shopify).
  • Some SKUs from the CSV will not be found in Shopify (normal situation).

Any advice, sample scenarios, or tips to structure this properly would be super appreciated! :folded_hands:

Thanks so much in advance!




Hey there,

I think you are misunderstanding the outputs of the modules and how they work.

1st and most important - you need to map an array of items in the iterator module. You are mapping two individual items there, this is fundamentally wrong. I strongly suggest heading over to the make academy and start from there.

2nd - the Parse CSV module is already returning a separate bundle for each row, there is absolutely no need to for an iterator there.