← All N8N workflows
Data & databasesCodeGoogle SheetsGraphqlIfNo Op

Shopify to Google Sheets Product Sync Automation

Configured with Google Sheets, Graphql, Schedule Trigger, Wait. Review the connections and setup before adapting this template.

Workflow preview
WaitWait1WaitRoutingNo Operation, donothingNo OpWeb / APIShopify get productsGraphqlCodeSplit outputCodeRoutingCheck if there is nextpageIfData storewriting first productdetailsGoogle SheetsTransformSet cursorEdit FieldsData storewriting remaningproduct info to google…Google SheetsTriggerSchedule TriggerSchedule TriggerData storeupdate CurserGoogle SheetsRoutingIfIfCodeCodeCodeTransformBatchSizeEdit FieldsData storeLastCursorGoogle SheetsWeb / APIshopify-initialGraphqlRoutingCheck cursor is notemptyIf

Node categories in this workflow

  • Wait
  • Routing
  • Web / API
  • Code
  • Data store
  • Transform
  • Trigger

Icons describe general node roles, inferred from node types. Inspect the parameters for the configured action.

Drag to pan; use + and − to zoom. Reconstructed from the exported node positions; nothing runs here. Dashed lines represent non-main connections. Full node names and notes appear below.

How it works

The exported workflow contains the following configured nodes. Their connections are shown above; inspect the JSON for the complete logic, expressions, and external actions.

Workflow node names, types, and operations
NodeCategoryTypeOperation
Wait1WaitWaitSee node parameters
No Operation, do nothingRoutingNo OpSee node parameters
Shopify get productsWeb / APIGraphqlSee node parameters
Split outputCodeCodeSee node parameters
Check if there is next pageRoutingIfSee node parameters
writing first product detailsData storeGoogle Sheetsappend
Set cursorTransformEdit FieldsSee node parameters
writing remaning product info to google sheetsData storeGoogle Sheetsappend
Schedule TriggerTriggerSchedule TriggerSee node parameters
update CurserData storeGoogle Sheetsupdate
IfRoutingIfSee node parameters
CodeCodeCodeSee node parameters
BatchSizeTransformEdit FieldsSee node parameters
LastCursorData storeGoogle SheetsSee node parameters
shopify-initialWeb / APIGraphqlSee node parameters
Check cursor is not emptyRoutingIfSee node parameters

Setup

  1. Download the JSON and import it into an isolated n8n instance. Leave the workflow inactive.
  2. Connect your own credentials through n8n’s credential store. Replace REPLACE_WITH_* values with your resource identifiers.
  3. Inspect API destinations, Code nodes, database queries, file paths, and outbound actions.
  4. Run with synthetic data and harmless destinations. Enable triggers only after checking the actual outputs.

Requirements

An n8n instance with the listed node types and compatible versions. Service-connected workflows may require accounts, credentials, or paid APIs.

Credential types declared in the source

  • googleSheetsOAuth2Api
  • httpHeaderAuth

Workflow notes

Sticky Note

This workflow automates the synchronization of product data from a Shopify store to a Google Sheets document, ensuring seamless management and tracking. It retrieves product details such as title, tags, description, and price from Shopify via GraphQL queries. The outcome is a comprehensive list of products neatly organized in Google Sheets for easy access and analysis.

Sticky Note1

Schedule Trigger: Sets the timing for the automation to run, ensuring regular updates. Currently set to trigger every day at 7:00 AM

Sticky Note2

BatchSize: Defines the number of products to fetch from Shopify at a time, optimizing data retrieval. Currently set to 100, but it can be adjusted to a maximum of 250 for a single run

Sticky Note3

LastCursor: Checks if the last cursor data is already present in Google Sheets to facilitate incremental data fetching. This ensures that the synchronization process does not start from the beginning each time, optimizing efficiency by picking up where it left off

Sticky Note4

Shopify-initial: Fetches the initial set of products from the Shopify store to start the synchronization process. This node will only run once if there is no cursor found in the previous node, which retrieves the cursor and the first set of products

Sticky Note5

This code node merges data from different sources (BatchSize, LastCursor, and Shopify-initial) to ensure the synchronization process starts efficiently and picks up where it left off. It checks for available data and retrieves the last cursor position from Google Sheets to facilitate incremental data fetching.

Sticky Note6

The "Split output" node acts as a bridge between data retrieval and subsequent processing nodes. Since the Shopify node fetches batches of 100 results at a time, this node splits those batches into individual product entries, ensuring seamless processing and storage of each product's details in subsequent workflow steps

Sticky Note7

Set cursor: Updates the cursor for the next page of products to fetch from Shopify.

Sticky Note8

The GraphQL query within this node is crafted to extract essential product details such as title, description, tags, and price. This query can be customized to fetch additional product information as needed for specific synchronization requirements.

Shopify to Google Sheets Product Sync Automation

Shopify to Google Sheets Product Sync Automation

Purpose and structure

This folder contains the Shopify to Google Sheets Product Sync Automation workflow. Its executable nodes use code, googleSheets, graphql, if, noOp, scheduleTrigger, set, wait. The table and connection map below are derived from the JSON, not an inferred guarantee of behavior.

Setup

Import inactive. Configure your own credentials and replace REPLACE_WITH_* values. Review external destinations and Code nodes before running.

Entry points

Schedule Trigger

Verification

Sanitized source candidate; not runtime-tested. This overview is generated from node metadata. Read the folder README for the connection map, credential types, and license.

Attribution

https://github.com/Zie619/n8n-workflows/blob/94007c1445d9258a7da116646b79473e7c7c3282/workflows/Wait/1743_Wait_Code_Sync_Scheduled.json MIT; preserve source notices.

More in Data & databases