AutomationFlowsE-commerce › Sync Shopify Orders with Your Zendesk Contacts

Sync Shopify Orders with Your Zendesk Contacts

Byn8n Team @n8n-team on n8n.io

This workflow automatically syncs Shopify orders with your Zendesk contacts. Using this workflow, the Shopify email ID, phone number ID and order information will be added or updated to Zendesk contacts. Shopify account and Shopify credentials Zendesk account and Zendesk…

Event trigger★★★★☆ complexity9 nodesShopify TriggerZendesk
E-commerce Trigger: Event Nodes: 9 Complexity: ★★★★☆ Added:

This workflow corresponds to n8n.io template #1808 — we link there as the canonical source.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "nodes": [
    {
      "id": "94fc73af-a35d-4d5c-a192-6190d2a731ff",
      "name": "Keep only UserId and email",
      "type": "n8n-nodes-base.set",
      "position": [
        1200,
        260
      ],
      "parameters": {
        "values": {
          "number": [
            {
              "name": "ZendeskUserId",
              "value": "={{ $json[\"id\"] }}"
            }
          ],
          "string": [
            {
              "name": "ZendeskEmail",
              "value": "={{ $json[\"email\"] }}"
            },
            {
              "name": "ZendeskPhone",
              "value": "={{ $json[\"phone\"]  }}"
            }
          ]
        },
        "options": {},
        "keepOnlySet": true
      },
      "typeVersion": 1
    },
    {
      "id": "6decc852-d5b9-40c4-b51e-832283637027",
      "name": "User exists in Zendesk",
      "type": "n8n-nodes-base.if",
      "position": [
        1660,
        140
      ],
      "parameters": {
        "conditions": {
          "number": [
            {
              "value1": "={{ $json[\"ZendeskUserId\"] }}",
              "operation": "isNotEmpty"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "70fa2ad7-c43c-4d22-ba6d-89495f8b5794",
      "name": "Add Zendesk contact Id to Shopify data",
      "type": "n8n-nodes-base.merge",
      "position": [
        1420,
        140
      ],
      "parameters": {
        "mode": "mergeByKey",
        "propertyName1": "email",
        "propertyName2": "ZendeskEmail"
      },
      "typeVersion": 1
    },
    {
      "id": "346d3e04-433c-4b43-868f-729d3ee67ee2",
      "name": "On customer updated",
      "type": "n8n-nodes-base.shopifyTrigger",
      "position": [
        740,
        120
      ],
      "parameters": {
        "topic": "customers/update"
      },
      "credentials": {
        "shopifyApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "a2ff1fa3-d67a-4abb-94ae-f22cad7de359",
      "name": "NoOp",
      "type": "n8n-nodes-base.noOp",
      "position": [
        2160,
        180
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "41418930-0898-4602-88a3-cf4238f32890",
      "name": "Contact data is modified",
      "type": "n8n-nodes-base.if",
      "position": [
        1940,
        80
      ],
      "parameters": {
        "conditions": {
          "string": [
            {
              "value1": "={{ $json[\"phone\"] }}",
              "value2": "={{ $json[\"ZendeskPhone\"] }}",
              "operation": "notEqual"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "ee1791fb-eaa0-4829-af3b-e72d7b3e80d5",
      "name": "Create contact in Zendesk",
      "type": "n8n-nodes-base.zendesk",
      "position": [
        1940,
        240
      ],
      "parameters": {
        "name": "={{ $json[\"first_name\"] }} {{ $json[\"last_name\"] }}",
        "resource": "user",
        "additionalFields": {
          "email": "={{ $json[\"email\"] }}",
          "phone": "={{ $json[\"phone\"] ?? ' ' }}"
        }
      },
      "credentials": {
        "zendeskApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "67dc85c6-39af-43cc-951e-bcfd31b73e46",
      "name": "Update contact in Zendesk",
      "type": "n8n-nodes-base.zendesk",
      "position": [
        2160,
        -20
      ],
      "parameters": {
        "id": "={{ $json[\"ZendeskUserId\"] }}",
        "resource": "user",
        "operation": "update",
        "updateFields": {
          "phone": "={{ $json[\"phone\"] ?? 0}}"
        }
      },
      "credentials": {
        "zendeskApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "9ab30a51-e599-4361-b170-b18b9d4021cb",
      "name": "Search contact by email adress",
      "type": "n8n-nodes-base.zendesk",
      "position": [
        1000,
        260
      ],
      "parameters": {
        "limit": 1,
        "filters": {
          "query": "={{ $json[\"email\"] }}"
        },
        "resource": "user",
        "operation": "search"
      },
      "credentials": {
        "zendeskApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1,
      "alwaysOutputData": true
    }
  ],
  "connections": {
    "On customer updated": {
      "main": [
        [
          {
            "node": "Add Zendesk contact Id to Shopify data",
            "type": "main",
            "index": 0
          },
          {
            "node": "Search contact by email adress",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "User exists in Zendesk": {
      "main": [
        [
          {
            "node": "Contact data is modified",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Create contact in Zendesk",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Contact data is modified": {
      "main": [
        [
          {
            "node": "Update contact in Zendesk",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "NoOp",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Keep only UserId and email": {
      "main": [
        [
          {
            "node": "Add Zendesk contact Id to Shopify data",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Search contact by email adress": {
      "main": [
        [
          {
            "node": "Keep only UserId and email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Add Zendesk contact Id to Shopify data": {
      "main": [
        [
          {
            "node": "User exists in Zendesk",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

This workflow automatically syncs Shopify orders with your Zendesk contacts. Using this workflow, the Shopify email ID, phone number ID and order information will be added or updated to Zendesk contacts. Shopify account and Shopify credentials Zendesk account and Zendesk…

Source: https://n8n.io/workflows/1808/ — original creator credit. Request a take-down →

More E-commerce workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

E-commerce

Shopify Zendesk. Uses shopifyTrigger, noOp, zendesk. Event-driven trigger; 9 nodes.

Shopify Trigger, Zendesk
E-commerce

Shopify Zendesk. Uses shopifyTrigger, noOp, zendesk. Event-driven trigger; 7 nodes.

Shopify Trigger, Zendesk
E-commerce

This workflow automatically syncs Shopify orders with your Zendesk tickets. Using this workflow, Shopify orders will be added or have their information updated straight to your Zendesk tickets. Shopif

Shopify Trigger, Zendesk
E-commerce

Shopify + Mautic. Uses shopifyTrigger, noOp, mautic, crypto. Event-driven trigger; 26 nodes.

Shopify Trigger, Mautic, Crypto +1
E-commerce

Having a seamless flow of customer data between your online store and your marketing platform is essential.

Shopify Trigger, Mautic, Crypto +1