For a distributor, the window between order placement and delivery is when customer trust is either built or eroded. A customer who knows exactly when their order shipped, has a tracking number before they have to ask, and gets an invoice at the right time has a fundamentally different experience than one who has to call in to find out where their order is.

The gap between those two experiences is almost entirely an automation problem.

Most distributors have the data. The 3PL or WMS records the shipment. The carrier generates a tracking number. The ERP has the order and the customer's contact information. What's missing is the connection between those systems that moves the data automatically and sends the notification without a person doing it.

This post walks through how to build that connection.

What's Happening Without Automation

In an unautomated shipment notification workflow, the sequence looks roughly like this:

  1. The warehouse ships the order and confirms it in the WMS or 3PL portal
  2. At some point later (end of day, next morning, when someone has time), a person checks the 3PL portal for new shipments
  3. They copy the tracking numbers and update the orders in the ERP
  4. They manually send shipment confirmation emails to customers, either individually or via a batch export
  5. Separately, someone in finance triggers invoices based on shipment status, once they've been told orders shipped

Every step in that sequence has delays built in. The customer may wait hours or a full day to learn their order shipped. The invoice is delayed. The ERP's order status is stale until someone updates it. And the people doing the manual work are spending meaningful time on a task that generates zero value beyond the data movement itself.

The Automated Version

An automated shipment notification workflow eliminates all of the manual steps and replaces them with a single trigger: the shipment event in the 3PL or WMS.

Here's how the logic flows with n8n as the orchestration layer:

Step 1: Capture the shipment event

When a shipment is confirmed in the 3PL or WMS, that system fires a webhook, or n8n polls the system's API on a short interval (every few minutes) to check for new shipments. Either method works; webhooks are preferable when the system supports them because they're instant and don't require polling overhead.

n8n receives the event with the shipment details: order number, tracking number, carrier, and ship date.

Step 2: Enrich the data from the ERP

n8n calls the ERP's API using the order number to pull the additional data needed for the notification: customer name, email address, order contents, delivery address, and any account-specific details (for example, whether this customer has a custom notification format or receives copies to multiple contacts).

Step 3: Update the order status in the ERP

n8n writes the tracking number and shipment status back to the ERP order record. The order is now marked as shipped in the system of record, in real time, without anyone doing it manually.

Step 4: Send the customer notification

n8n triggers a shipment confirmation email to the customer with:

  • Order number and summary
  • Tracking number with a direct link to the carrier tracking page
  • Estimated delivery date (pulled from the carrier API if available)
  • Customer service contact for any issues

For B2B customers with multiple contacts (the buyer plus a receiving manager, for example), n8n can send to all configured contacts simultaneously.

Step 5: Trigger the invoice

If your invoicing system triggers on shipment, n8n fires the invoice creation at this point. The invoice goes out the same day the order ships, not days later when someone manually confirms the shipment.

For operations using a separate finance system (QuickBooks, Sage, NetSuite AR, or similar), n8n calls the finance system's API to create or release the invoice automatically.

The entire sequence runs in seconds from the moment the 3PL confirms the shipment.

The Full Workflow Diagram

3PL / WMS confirms shipment

           ↓

n8n receives shipment event (webhook or API poll)

           ↓

n8n calls ERP API to pull order and customer data

           ↓

n8n writes tracking number + shipped status to ERP order

           ↓

n8n sends shipment confirmation email to customer(s)

           ↓

n8n triggers invoice creation in finance system

           ↓

(Optional) n8n logs event to CRM account history

Handling Common Variations

Shipment workflows in distribution aren't always straightforward. Here are the most common variations and how to handle each:

Partial shipments

When an order ships in multiple packages or multiple fulfillment events, the workflow needs to distinguish between a partial and a complete shipment.

n8n checks the remaining open quantity on the order after each shipment event. If quantity remains, the notification is labeled as a partial shipment with a note that remaining items are on the way. If the order is fully shipped, the standard completion notification fires. Invoice triggering logic depends on your terms: some operations invoice per shipment, others invoice on order completion.

Orders fulfilled by multiple warehouses or 3PLs

If your operation routes different product lines through different fulfillment partners, the workflow needs to aggregate notifications sensibly. n8n can be configured to hold notifications for a defined window (a few hours, for example) to see if additional shipments from the same order come in, then send a single consolidated notification rather than multiple emails from different shipping points.

Freight and LTL shipments

For LTL or freight shipments, tracking works differently than small parcel. The workflow still captures the PRO number or BOL number from the freight carrier and includes it in the notification, but the delivery date estimate may not be available at ship time. n8n can trigger a follow-up notification when the freight carrier's API reports an estimated delivery, or on day-of-delivery based on the carrier's status API.

Customer-specific notification formats

Some B2B customers have specific requirements: notifications to a purchase order number rather than order number, copies to a procurement team alias, or data formatted to match their receiving system. n8n handles these with customer-level configuration stored in the ERP or CRM, which the workflow reads at the enrichment step to apply the right format and recipients.

Adding Delivery Confirmation

Extending the workflow beyond shipment to delivery closes the loop completely.

Most major carriers (UPS, FedEx, USPS) expose delivery status through their APIs. n8n can poll carrier APIs for open shipments on a daily schedule and trigger a delivery confirmation notification when the carrier marks the shipment as delivered.

This creates a complete post-order sequence without manual intervention:

  • Order confirmed (at order placement)
  • Order shipped (at shipment event)
  • Order delivered (at carrier delivery confirmation)
  • Invoice (at shipment or delivery, depending on terms)

Each notification is triggered by a real system event, not a scheduled send or a manual action. The customer's experience is current and accurate at every stage.

What to Build in Retool Alongside This

The n8n workflow handles the automated path. Retool adds the human-facing layer for exceptions and visibility:

Shipment exception dashboard Orders that have been in "fulfillment pending" status beyond a defined threshold, orders where the 3PL confirms shipment but the ERP update failed, or orders where the customer notification bounced. These surface in a Retool dashboard so the operations team can act on exceptions without sifting through all shipments.

Manual notification trigger For cases where a shipment needs a custom or corrected notification, a Retool interface lets an ops team member trigger a one-off email with the correct details, using the same template as the automated notification, without going into the email client and doing it manually.

Customer contact management For B2B accounts with multiple notification contacts, a Retool interface lets the ops or account management team update which contacts receive shipment notifications per account, without requiring developer access to change the workflow configuration.

Measuring the Impact

Once the automated shipment notification workflow is running, the metrics that change are:

  • Time from shipment confirmation to customer notification: typically drops from hours to seconds
  • Invoice cycle: days faster when invoicing is triggered at shipment rather than after manual confirmation
  • "Where is my order" inbound inquiries: drops significantly when customers receive proactive, accurate notifications
  • ERP data accuracy: order statuses reflect reality in real time rather than lagging by hours or a day

Each of these has a measurable dollar value: fewer inbound service inquiries means fewer labor hours on the phone, faster invoicing means faster collections, and accurate ERP data means fewer planning errors downstream.