SHOPIFY: Iterator x Numeric Aggregator

:bullseye: What is your goal?

I want the scenario to detect product SKU variants, assign a value, aggregate/sum those values, and place inside a Data Store.

:thinking: What is the problem & what have you tried?

I did some test runs and it appears to be that Make is only recognizing the 1st SKU in the array.

I tried searching the community and found something along the lines that Make.com may experience difficulty interpreting a complex array from Shopify and that users should add a Set Variable module before the Iterator. I have tried this but it still doesn’t work.

:clipboard: Error messages or input/output bundles

No specific error.

The output just shows value for the 1st lineitem.sku

:link: Create public scenario page

https://us2.make.com/public/shared-scenario/HUwSFzxneyg/integration-shopify

Hey mat,

your mapping is wrong. Inside the iterator you mapped the array as an item inside an array instead of as an array it self.

Then in module 17 you are checking only against the first item of the line items array’s quantity value.

The Iterator [15] is referencing the variable created module [23]. Module [23] is referencing the umbrella variable Line Items [ ].

The Shopify Watch Order appears to be pulling data fine as it is showing 7 Line items.

But when I try to reference the Line Items [ ] from Shopify Watch Orders. Results show one item now.

I’ve only been using Make.com for less than week so really appreciate the guidance here.
Thank you for being generous with your time Stoyan!

Ok lets start one by one:


This isn’t doing anything, replace it with ifempty()


This needs to be replaced with the Parse a phone number module.


You cant map variables that were declared in the same module. This needs to be done later.


There is no need for this module at all, just use the array instead.


This is wrong. What this is doing is mapping the array inside the first item of the array. See its in Item 1 and not in the array it self. Toggle the map option on top and change it to this:


This needs to be replaced with a switch module, since its checking the value and switching the output to something else. Also, once you add the array properly in the iterator, you will see the actual mappable items inside, so make sure you use the correct one.


Here you are multiplying the previous output with the first item from he line items array’s quantity, not with the current one. Take the quantity value coming from the iterator to take the current one. Also you can do this multiplication directly in the aggregator and skip this module entirely.