E-commerce · n8n

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.

difficulty Intermediatesetup 40 minresult Customers receive an instant SMS with their Zendrop tracking link the moment their order ships, reducing support tickets and improving satisfaction.
  1. 1

    Receive the Zendrop Shipment Webhook

    Add a Webhook node as the trigger. Set HTTP Method to 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. 2

    Extract Order Fields with a Set Node

    Add a Set node connected to the Webhook node. Create three fields: customerPhone mapped to the webhook body field containing the customer phone number (e.g. {{$json.body.customer_phone}}), trackingNumber mapped to {{$json.body.tracking_number}}, and trackingUrl mapped to {{$json.body.tracking_url}}. Adjust the field paths to match your actual Zendrop payload keys.

  3. 3

    Check That a Tracking URL Exists

    Add an If node 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. 4

    Send the Tracking SMS via Twilio

    Add an HTTP Request node on the TRUE branch of the If node. Set Method to POST and URL to https://api.twilio.com/2010-04-01/Accounts/YOUR_ACCOUNT_SID/Messages.json. Under Authentication choose Basic Auth and enter your Twilio Account SID as the username and Auth Token as the password. Set Body Content Type to Form-Data and add three form fields: To set to {{$json.customerPhone}}, From set to your Twilio phone number (e.g. +15551234567), and Body set to Your 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}}`.

About this recipe. Recipes on FlowRecipesHub are written for business owners, not developers, and are tested before publishing — how recipes get made. Some ingredient links are affiliate links that cost you nothing — full disclosure.