Skip to main content

Send Shopify shipping tracking WhatsApp notifications with full tracking info

Workflow preview

Workflow preview
100%
Send Shopify shipping tracking WhatsApp notifications with full tracking info preview
Open on n8n.io

1. Workflow Overview

Order Fulfillment & Shipping Notification System Automatically notify customers via WhatsApp when their orders ship, with intelligent phone validation, multi country support, and bilingual messagin...

Best for

  • Miscellaneous automation workflows
  • intermediate n8n builders looking for reusable templates

Tools used

n8n-nodes-base.code, n8n-nodes-base.postgres, n8n-nodes-base.if, n8n-nodes-base.httprequest, n8n-nodes-base.shopifytrigger, n8n-nodes-base.stickynote

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Mira Melhem.

Original n8n.io source

1.1 Workflow description

Title
Send Shopify shipping tracking WhatsApp notifications with full tracking info
Workflow name
Send Shopify shipping tracking WhatsApp notifications with full tracking info

Order Fulfillment & Shipping Notification System

Automatically notify customers via WhatsApp when their orders ship, with intelligent phone validation, multi-country support, and bilingual messaging including complete tracking information.

What does this workflow do?

When you fulfill an order in Shopify, this workflow instantly updates your database, validates the customer's phone number across 23+ countries, and sends a professional WhatsApp notification with full tracking details in their preferred language.

Key features:

  • ๐ŸŒ 23+ Country Phone Validation - Automatically detects and formats phone numbers for GCC, MENA, and international customers
  • ๐Ÿ“ฆ Complete Tracking Info - Includes tracking number, courier name, and clickable tracking URL
  • ๐ŸŒ Smart Bilingual Messaging - Arabic and English with luxury brand tone
  • ๐Ÿ’พ Real-time Database Sync - Updates order status and shipping details instantly
  • ๐Ÿ”’ Test Number Protection - Blocks notifications to development phone numbers
  • โœจ Personalized Messages - Addresses customers by first name
  • โฑ๏ธ Delivery Expectations - Communicates clear 7-12 business day timeline
  • ๐ŸŽฏ International Format - Handles phone numbers with automatic country code detection

Setup Requirements

Integrations Needed:

  1. Shopify - For order fulfillment webhooks
  2. PostgreSQL - For order and customer data storage
  3. WhatsApp Business API - For sending notifications via Facebook Graph API

Credentials Required:

  • Shopify Access Token (with fulfillment webhook permissions)
  • PostgreSQL database credentials
  • WhatsApp Business API Bearer Token (Facebook Graph API v18.0)

How to Use

  1. Import the workflow into your n8n instance
  2. Configure credentials:
  • Add your Shopify store access token
  • Connect your PostgreSQL database
  • Add your WhatsApp Business API credentials
  1. Update test phone numbers in filter nodes (If10 and If11) with your actual test numbers
  2. Customize brand name in WhatsApp message templates if needed (currently "" / "")
  3. Activate the workflow to start sending shipping notifications

Workflow Structure

1. Trigger (Shopify Webhook)

Listens for fulfillments/create events when orders are marked as shipped in Shopify

2. Update Order Status

Updates PostgreSQL database with:

  • Status changed to 'shipped'
  • Shipping company name
  • Tracking number

3. Customer Lookup

Retrieves customer record from database using phone number from fulfillment data

4. Phone Validator (Code Node)

Intelligent phone number formatting:

  • Detects country from shipping address
  • Validates and cleans phone number
  • Adds appropriate country code if missing
  • Supports 23 countries across GCC, MENA, and international markets
  • Ensures proper international format (+CountryCode)

5. Get Customer Preferences

Retrieves language preference and first name for personalization

6. Language Detection

Routes workflow based on customer's preferred language (Arabic vs. English)

7. Test Number Filter

Prevents notifications to internal/development phone numbers

8. WhatsApp Notification

Sends comprehensive shipping notification with tracking details in customer's language

Supported Countries & Codes

GCC Region:

  • ๐Ÿ‡ด๐Ÿ‡ฒ Oman (968)
  • ๐Ÿ‡ฆ๐Ÿ‡ช UAE (971)
  • ๐Ÿ‡ธ๐Ÿ‡ฆ Saudi Arabia (966)
  • ๐Ÿ‡ฐ๐Ÿ‡ผ Kuwait (965)
  • ๐Ÿ‡ถ๐Ÿ‡ฆ Qatar (974)
  • ๐Ÿ‡ง๐Ÿ‡ญ Bahrain (973)

MENA Region:

  • ๐Ÿ‡ฏ๐Ÿ‡ด Jordan (962)
  • ๐Ÿ‡ช๐Ÿ‡ฌ Egypt (20)
  • ๐Ÿ‡ฎ๐Ÿ‡ถ Iraq (964)
  • ๐Ÿ‡ฑ๐Ÿ‡ง Lebanon (961)
  • ๐Ÿ‡ธ๐Ÿ‡พ Syria (963)
  • ๐Ÿ‡ต๐Ÿ‡ธ Palestine (970)
  • ๐Ÿ‡พ๐Ÿ‡ช Yemen (967)

International:

  • ๐Ÿ‡บ๐Ÿ‡ธ USA (1)
  • ๐Ÿ‡ฌ๐Ÿ‡ง UK (44)
  • ๐Ÿ‡ฉ๐Ÿ‡ช Germany (49)
  • ๐Ÿ‡ซ๐Ÿ‡ท France (33)
  • ๐Ÿ‡ฎ๐Ÿ‡น Italy (39)
  • ๐Ÿ‡ช๐Ÿ‡ธ Spain (34)
  • ๐Ÿ‡น๐Ÿ‡ท Turkey (90)
  • ๐Ÿ‡ฎ๐Ÿ‡ณ India (91)
  • ๐Ÿ‡ต๐Ÿ‡ฐ Pakistan (92)

Message Templates

Arabic Message (ุนุฑุจูŠ):

ู…ุฑุญุจู‹ุง [ุงู„ุงุณู…]ุŒ

ูŠุณุฑู‘ู†ุง ุฅุนู„ุงู…ูƒู… ุจุฃู†ู‡ ุชู… ุดุญู† ุทู„ุจูƒู… ุจู†ุฌุงุญ.
ุฑู‚ู… ุงู„ุทู„ุจ: [order_id]
ุฑู‚ู… ุงู„ุชุชุจุน: [tracking_number]
ุดุฑูƒุฉ ุงู„ุดุญู†: [courier_name]
ุฑุงุจุท ุงู„ุชุชุจุน: [tracking_url]
ุงู„ู…ุฏุฉ ุงู„ู…ุชูˆู‚ุนุฉ ู„ู„ุชูˆุตูŠู„: ู…ู† 7 ุฅู„ู‰ 12 ูŠูˆู… ุนู…ู„.

ูŠู…ูƒู†ูƒู… ู…ุชุงุจุนุฉ ุญุงู„ุฉ ุงู„ุดุญู†ุฉ ุนุจุฑ ุฑู‚ู… ุงู„ุชุชุจุนุŒ ูˆุณู†ุญุฑุต ุนู„ู‰ ุฅุจู‚ุงุฆูƒู… ุนู„ู‰ ุงุทู„ุงุน ุญุชู‰ ุงุณุชู„ุงู… ุงู„ุทู„ุจ.

ู…ุน ุฃุทูŠุจ ุงู„ุชุญูŠุงุชุŒ

English Message:

Hello [Name],

We are pleased to inform you that your order has been shipped successfully.

Order No: [order_id]
Tracking No: [tracking_number]
Courier Company: [courier_name]
Tracking URL: [tracking_url]
Estimated delivery time: 7โ€“12 business days.

You may track your shipment using the tracking number provided. We will continue to keep you informed until your order is delivered.

Kind regards,

Database Schema Requirements

Orders Table:

CREATE TABLE orders (
 order_id VARCHAR PRIMARY KEY, -- Shopify order number
 status VARCHAR, -- Order status ('open', 'shipped', 'delivered', 'canceled')
 shipping_company VARCHAR, -- Courier service name
 tracking_number VARCHAR, -- Package tracking ID
 customer_id INTEGER -- Foreign key to customers table
);

Customers Table:

CREATE TABLE customers (
 id SERIAL PRIMARY KEY,
 website_id INTEGER, -- Shopify customer ID
 phone VARCHAR, -- Customer phone number
 language VARCHAR(2), -- Preferred language ('ar' or 'en')
 first_name VARCHAR, -- Customer first name
 last_name VARCHAR -- Customer last name
);

Phone Validator Logic

The Phone Validator node intelligently handles phone numbers:

  1. Extracts phone from fulfillment data (checks destination.phone, shipping_address.phone, or root phone)
  2. Detects country from destination.country_code (defaults to 'OM' if not provided)
  3. Cleans number by removing whitespace and non-numeric characters (except +)
  4. Validates length (minimum 5 digits required)
  5. Checks for country code in the number
  6. Adds country code automatically if missing based on shipping country
  7. Ensures + prefix for international format
  8. Returns:
  • phone: Formatted number with country code (+XXX)
  • original_phone: Raw input for reference
  • country_code: ISO country code
  • validation_status: 'success' or 'empty_or_invalid'

Customization Tips

  • Add more countries: Extend the countryCodes object in Phone Validator node
  • Change brand name: Update "" / "" in WhatsApp message nodes
  • Adjust delivery time: Modify "7โ€“12 business days" to match your actual shipping times
  • Add more languages: Create additional language detection branches (e.g., French, Spanish)
  • Include product details: Extend database query to fetch order items and include in message
  • Add delivery date estimates: Calculate and include specific delivery date ranges
  • Email notifications: Add email nodes for customers who prefer email
  • SMS fallback: Add SMS nodes for customers without WhatsApp

Use Cases

  • E-commerce stores shipping to multiple countries
  • Luxury brands requiring premium communication
  • Businesses with Arabic and English speaking customers
  • International retailers with GCC and MENA presence
  • Multi-channel sellers needing unified shipping notifications
  • Stores using various courier services (DHL, FedEx, Aramex, etc.)

Error Handling

  • Empty phone numbers: Workflow marks as 'empty_or_invalid' and skips notification
  • Invalid formats: Phone validator attempts to fix common issues
  • Missing data: Uses fallback values (e.g., 'OM' for country, 'en' for language)
  • SQL injection protection: Single quotes escaped in database queries
  • Test number blocking: Prevents accidental notifications during testing

Performance Notes

  • Execution time: ~2-3 seconds per order
  • Database queries: 3 total (1 UPDATE, 2 SELECT)
  • API calls: 1 WhatsApp message per order
  • Scalability: Handles concurrent fulfillments independently
  • Rate limits: WhatsApp Business API applies standard rate limits

Technical Notes

  • WhatsApp API Version: v18.0
  • Phone API format: Country code without '+' (e.g., 962798087441)
  • Database: PostgreSQL with prepared statements
  • Default country: Oman (+968)
  • Default language: English if not specified
  • Workflow processes one fulfillment at a time (runOnceForEachItem)

Tags: #shopify #whatsapp #fulfillment #shipping #tracking #bilingual #arabic #english #phone-validation #ecommerce #notifications #international

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Phone Validator

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 2 - Update Order Shipped1

Type / Role
n8n-nodes-base.postgres - postgres
Config choices
Version 2

Block 3 - Select rows from a table6

Type / Role
n8n-nodes-base.postgres - postgres
Config choices
Version 2.6

Block 4 - Get Customer1

Type / Role
n8n-nodes-base.postgres - postgres
Config choices
Version 2

Block 5 - Check Language

Type / Role
n8n-nodes-base.if - if
Config choices
Version 1

Block 6 - If10

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.3

Block 7 - If11

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.3

Block 8 - WhatsApp Shipped AR

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4

Block 9 - WhatsApp Shipped EN1

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4

Block 10 - fulfilment

Type / Role
n8n-nodes-base.shopifyTrigger - shopifyTrigger
Config choices
Version 1

Block 11 - Sticky Note15

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 12 - Sticky Note18

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

3. Summary Table

Workflow Send Shopify shipping tracking WhatsApp notifications with full tracking info
Complexity intermediate
Nodes 12
Categories Miscellaneous
Author Mira Melhem
Published 23 Dec 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/12078/12078.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Send Shopify shipping tracking WhatsApp notifications with full tracking info do?

Order Fulfillment & Shipping Notification System Automatically notify customers via WhatsApp when their orders ship, with intelligent phone validation, multi country support, and bilingual messagin...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Miscellaneous use case.