Issues with Iterator and Google Sheets Search Rows - Only First SKU Processed

Hi Community,

Using similar topics posted here as guidance, I have attempted the following goal.

Goal: Automate processing of Shopify order SKUs to send data to my supplier. The process involves matching Shopify SKUs with vendor SKUs and other relevant data in Google Sheets, then sending both Shopify data and matched row-level data from Google Sheets to an API.

Current Setup:

  • Shopify Watch Orders: Captures new orders.
  • Iterator: Splits 2.line_items[] into individual items.
  • Google Sheets Search Rows: Matches each SKU from the order to the Shopify SKU in Google Sheets and retrieves additional data from the matched row.
  • HTTP Request: Sends data from both the Shopify order and the matched Google Sheets row to an API.

Issue: Only the first SKU is processed. The Google Sheets Search Rows module doesn’t iterate through the remaining SKUs, despite there being multiple SKUs in an order.

Steps Tried:

  • Confirmed that the Iterator splits items correctly.
  • Ensured that the matching works and that the API receives data from both the Shopify module and the matched row.

Overall Scenario Setup

Iterator Configuration

Google Sheets Search Rows Configuration:

No error messages, but only the first SKU is matched and processed.

Any advice on ensuring all SKUs are processed?

Thank you!

Hey @RK

Welcome to the make community

I think the problem is that you are mapping the SKU value from the Shopify module. You should map the SKU value from the Iterator.

If this is not working, you can share the blueprint of the scenario.


Hi @RK

When mapping the SKU from an array, only the first element of the array will be provided. To get all elements, you need to use an iterator.

If you require additional assistance, please don’t hesitate to reach out to us.
MSquare Support | Book Live Implementation
Visit us here
Youtube Channel

Many thanks!

Yes that was the issue. My Watch Rows was still looking at the SKU from Shopify instead of the SKU from the Iterator. Once I changed that I was able to match every SKU in the order and pass it through to the API.