Track Shipments with DHL/Delhivery APIs & Send Google Sheets Updates to Customers via WhatsApp/Email
Go to WorkflowDescription
This workflow automatically tracks shipments across multiple courier services, updates Google Sheets, and notifies customers via WhatsApp/Email when status changes.
Good to know
Runs daily at 9 AM and only sends notifications when shipment status actually changes
API costs may apply for courier tracking (Delhivery, DHL) and WhatsApp notifications
Requires Google Sheet with proper column structure and valid API credentials
Currently supports Delhivery and DHL APIs but easily expandable
How it works
Daily Trigger**: Cron node runs workflow every day at 9 AM
Get Shipments List**: Fetches all shipment data from Google Sheet
Filter Active Shipments**: Excludes delivered orders and empty tracking numbers
Route by Courier**: Directs shipments to appropriate API (Delhivery or DHL)
Track via APIs**: Makes real-time tracking calls to courier services
Parse Tracking Data**: Normalizes different API responses and detects status changes
Check Status Change**: Only processes shipments with actual status updates
Update & Notify**: Simultaneously updates Google Sheet, sends WhatsApp message, and email notification
Execution Summary**: Logs workflow performance metrics
How to use
Import the JSON workflow into n8n
Create Google Sheet with columns: tracking_number, order_id, customer_email, customer_phone, courier, status, location, last_updated, estimated_delivery
Configure credentials: Google Sheets OAuth2, Delhivery API, DHL API, WhatsApp API, SMTP
Replace YOUR_GOOGLE_SHEET_ID with actual sheet ID
Test workflow manually before enabling daily schedule
Requirements
Google Sheets API access
Courier API keys (Delhivery, DHL)
WhatsApp Business API credentials
SMTP email service
n8n instance (self-hosted or cloud)
Customizing this workflow
Add courier services**: Create new HTTP Request node and update routing logic
Change frequency**: Modify cron expression (hourly: 0 * * * *, twice daily: 0 9,17 * * *)
Customize notifications**: Edit WhatsApp/Email templates in respective nodes
Add CRM integration**: Insert CRM update node after status change detection