Support · n8n

Automatically Post Zendrop Delivery Status as a Gorgias Ticket Note

Fetches the latest delivery status for an order from Zendrop and posts it as an internal note on the matching Gorgias ticket. Support agents get live shipping context without leaving their helpdesk.

difficulty Intermediatesetup 45 minresult Every time a Gorgias ticket is updated, the workflow pulls the Zendrop tracking status and appends it as an internal note so agents always have current delivery information.
  1. 1

    Trigger on Gorgias Ticket Update

    Add a Webhook node as the entry point. In Gorgias, go to Settings > Integrations > HTTP and create a new integration that sends a POST request to this webhook URL whenever a ticket is updated. Map the payload to include ticket_id and the customer order number (stored in a ticket tag or custom field such as order_id). Set the HTTP Method to POST in the webhook node.

  2. 2

    Extract Order ID from Webhook Payload

    Add a Set node after the webhook. Create two fields: set ticketId to {{ $json.body.ticket_id }} and orderId to {{ $json.body.order_id }}. This keeps downstream expressions clean and readable.

  3. 3

    Fetch Delivery Status from Zendrop

    Add an HTTP Request node. Set Method to GET and URL to https://app.zendrop.com/api/v1/orders/{{ $json.orderId }}/tracking. Under Authentication, choose Header Auth and add your Zendrop API key as Authorization: Bearer YOUR_ZENDROP_API_KEY. Store this credential in n8n credentials and reference it here. The response will include fields like status and tracking_number.

  4. 4

    Build the Note Message

    Add a second Set node. Create a field called noteBody with a value such as: Zendrop Delivery Update — Status: {{ $json.status }} | Tracking #: {{ $json.tracking_number }} | Last Updated: {{ $json.updated_at }}. This formats the tracking data into a human-readable string for the Gorgias note.

  5. 5

    Post Internal Note to Gorgias Ticket

    Add an HTTP Request node. Set Method to POST and URL to https://YOUR_STORE.gorgias.com/api/tickets/{{ $node['Set'].json['ticketId'] }}/messages. Under Authentication, use Basic Auth with your Gorgias email and API token stored in n8n credentials. Set Body Content Type to JSON and provide the body: { "body_text": "{{ $json.noteBody }}", "source": { "type": "internal-note" }, "sender": { "email": "your-bot@yourstore.com" } }. Replace the sender email with your Gorgias agent email.

Frequently asked questions

Where do I find my Zendrop API key?

Log in to Zendrop, go to Settings > API and copy your personal API key. Paste it into n8n as a Header Auth credential with the value `Bearer YOUR_KEY`.

How does the workflow know which order belongs to which ticket?

The Gorgias webhook payload must include the order ID. You can store the order number as a ticket tag or a custom field in Gorgias and include it in the HTTP integration payload. Make sure your support team tags tickets with the order number when creating them.

Can I trigger this on demand instead of on every ticket update?

Yes. Replace the Webhook node with a manual trigger or a Gorgias webhook filtered to a specific tag such as `check-shipping`. That way the workflow only runs when an agent deliberately requests a tracking update.

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.