Send Automatic Shipping Tracking Links to Customers via SMS When Zendrop Fulfills an Order
Whenever Zendrop marks an order as shipped, this workflow automatically sends the customer an SMS with their tracking link via Twilio. No more manual copy-pasting or missed shipping notifications.
- 1
Receive the Zendrop Shipment Webhook
Add a
Webhooknode as the trigger. SetHTTP Methodto POST and copy the generated webhook URL. In your Zendrop dashboard go to Settings > Webhooks, paste the URL, and select the 'Order Shipped' event. This node will fire every time Zendrop ships an order. - 2
Extract Order Fields with a Set Node
Add a
Setnode connected to the Webhook node. Create three fields:customerPhonemapped to the webhook body field containing the customer phone number (e.g.{{$json.body.customer_phone}}),trackingNumbermapped to{{$json.body.tracking_number}}, andtrackingUrlmapped to{{$json.body.tracking_url}}. Adjust the field paths to match your actual Zendrop payload keys. - 3
Check That a Tracking URL Exists
Add an
Ifnode connected to the Set node. Set the condition to check that{{$json.trackingUrl}}is not empty. Connect the TRUE branch to the next step. The FALSE branch can be left unconnected or routed to a notification node to alert you of missing data. - 4
Send the Tracking SMS via Twilio
Add an
HTTP Requestnode on the TRUE branch of the If node. SetMethodto POST andURLtohttps://api.twilio.com/2010-04-01/Accounts/YOUR_ACCOUNT_SID/Messages.json. UnderAuthenticationchooseBasic Authand enter your Twilio Account SID as the username and Auth Token as the password. SetBody Content TypetoForm-Dataand add three form fields:Toset to{{$json.customerPhone}},Fromset to your Twilio phone number (e.g. +15551234567), andBodyset toYour order has shipped! Track it here: {{$json.trackingUrl}}. Replace YOUR_ACCOUNT_SID with your real Twilio Account SID.
Frequently asked questions
What does the Zendrop webhook payload look like so I know which fields to map?
Trigger a test shipment in Zendrop or use n8n's built-in 'Listen for test event' button on the Webhook node. n8n will display the exact JSON payload Zendrop sends, so you can see the real field names and update the Set node mappings accordingly.
My customers' phone numbers are not stored with a country code. Will Twilio still send the SMS?
Twilio requires E.164 format (e.g. +12025551234). If your Zendrop data omits the country code, update the `customerPhone` field in the Set node to prepend it, for example `+1{{$json.body.customer_phone}}` for US numbers.
Can I customize the SMS message to include the customer's name or order number?
Yes. In the `Body` field of the HTTP Request node, add extra Zendrop payload fields to the Set node first (e.g. `customerName`, `orderId`), then reference them in the message like `Hi {{$json.customerName}}, order #{{$json.orderId}} has shipped! Track it: {{$json.trackingUrl}}`.