DPD’s tracking system is one of its strongest differentiators — multiple scan events throughout the delivery journey, a one-hour delivery window notification on delivery day, and live driver tracking when the parcel is out for delivery. A DPD tracking API integration embeds this data directly into your platform: the customer tracks their parcel on your own tracking page, automated notifications trigger at key events, and your customer service team can see parcel status without leaving your system. This post covers how DPD tracking works via the API and what a complete tracking integration looks like.
DPD tracking events
DPD’s tracking returns a chronological list of scan events for each consignment number. The key events in a standard DPD delivery:
Collected. DPD’s driver has collected the parcel from your premises or it has been dropped at a DPD depot. This is the first scan after despatch.
In transit. The parcel is moving through DPD’s network — processed at a hub, transferred between depots. Multiple transit scans may appear for longer journeys or cross-network transfers.
Out for delivery. The parcel is on the delivery vehicle. At this point DPD has already sent the recipient their one-hour delivery window notification. This event is the trigger for your own “out for delivery today” notification to the customer if you want to send one.
Delivered. Confirmed delivery with the name of the person who signed (if signature service), or confirmation of safe place or neighbour delivery. The final event for a successful delivery.
Delivery attempted. A delivery attempt was made but unsuccessful. The reason is included — no answer, business closed, address not found. DPD will automatically attempt redelivery or hold for collection depending on the recipient’s chosen preference.
Delivery to Pickup shop. For parcels redirected to a DPD Pickup point, this event confirms the parcel is available for collection.
Using the DPD tracking API
The DPD tracking API is queried using the consignment number returned when the shipment was created. The API returns the full event history as a structured list, with each event containing the event type, timestamp, location and any additional details.
The integration stores the consignment number against the order when the shipment is created. The tracking page calls the tracking API with the stored consignment number and displays the event history. For customer-facing tracking pages, this call happens server-side — the tracking API credentials are not exposed to the browser.
Tracking data can be cached with a short TTL (time to live) to reduce API calls for popular orders. A parcel that’s already been delivered doesn’t need its tracking data refreshed. A parcel that’s out for delivery benefits from more frequent updates — cache it for 5 minutes rather than an hour.
Automated customer notifications from tracking events
Tracking events are the trigger for automated customer notifications at key delivery milestones. The most common notification patterns:
Despatch confirmation. Triggered when the “collected” event appears — confirmation that the parcel has left your warehouse. Many businesses trigger this on label creation rather than waiting for the collection scan, but the collection event is more accurate evidence that DPD actually has the parcel.
Out for delivery. Triggered by the out-for-delivery event. Customers who receive an “your parcel is out for delivery today” notification are less likely to contact customer service asking where their order is. DPD already sends their own notification, but sending your own branded one keeps the customer experience within your platform.
Delivered confirmation. Triggered by the delivered event. A confirmation email or SMS that the parcel has been delivered, potentially including a prompt for a review or feedback. Customers who received good delivery service are in a positive frame of mind at this moment.
Failed delivery alert. Triggered by a failed delivery attempt. A notification that tells the customer what happened and what their options are — DPD will reattempt, they can redirect to a Pickup shop, or they can contact DPD to rearrange. Proactively communicating a failed delivery significantly reduces “where is my order” customer service contacts.
Building a customer-facing tracking page
A branded tracking page on your own domain — rather than sending customers to DPD’s own tracking tool — keeps the post-purchase experience within your platform, reinforces your brand, and allows you to add context the DPD tracking page doesn’t have: the order contents, an estimated delivery date from your system, a returns initiation button, or a customer service contact option.
The tracking page retrieves the latest status from the DPD API and displays the event timeline. DPD’s one-hour delivery window, where available, can be displayed prominently on the day of delivery. The page can be linked from the despatch email as “Track your order” using the order reference in the URL, which the server resolves to the consignment number for the DPD API call.
Tracking in customer service systems
Customer service teams spend significant time answering “where is my order” contacts. A DPD tracking integration in your order management system or CRM means the agent can see the current tracking status alongside the order record without opening the DPD tracking website in a separate tab. The consignment number is stored against the order, the integration retrieves the latest status, and the agent has everything they need in one screen.
For high-volume customer service operations, automated resolution of tracking queries is possible: when a customer contacts you asking for their tracking status, an automated reply can pull the live DPD status and send it back without agent involvement. This works well for chat-based support and email, where the consignment number can be retrieved from the order reference the customer provides.
For the full DPD service and pricing, see the DPD API integration service. For WooCommerce integration, see DPD API integration for WooCommerce. For the complete DPD API guide, see DPD API integration guide. For what the build costs, see DPD API integration cost.
Related posts
- DPD API integration: a complete guide
- DPD API integration for WooCommerce
- DPD API vs Royal Mail API
- DPD API integration cost
Tracking data and returns management
DPD tracking events for returns shipments work identically to outbound shipments — the consignment number on the returns label provides the same event stream. For businesses with a returns tracking page, the integration can display the status of inbound returns alongside outbound shipments: “Your return is in transit”, “Your return has been received at our warehouse.” This reduces customer anxiety about whether a return has been received and reduces the associated customer service contacts.
When a return is delivered to your warehouse — confirmed by the DPD tracking API’s delivered event — the integration can trigger your returns workflow automatically: updating the return status in your OMS, triggering the refund process, or alerting the warehouse team that a return has arrived. Connecting the tracking event to your returns workflow removes a manual monitoring step from the process.
DPD Predict — the one-hour window data
DPD’s Predict service is what generates the one-hour delivery window notification. The window time is available through the DPD tracking API when the parcel is out for delivery — your tracking page can display it just as DPD’s own tracking page does. Showing “Your parcel will be delivered between 10am and 11am today” on your own tracking page, rather than sending the customer to DPD’s website to find this information, is a meaningful improvement to the post-purchase experience.
The one-hour window is only available once the parcel is loaded onto the delivery vehicle and DPD’s routing has been finalised — typically early morning on the delivery day. The tracking page should handle the state where the parcel is in transit but the window hasn’t been set yet, displaying the estimated delivery date rather than an unavailable window.
If you need help with a custom API integration for your website or business application, I can help. I build bespoke API integrations for UK businesses. See API integration pricing or get in touch to discuss your project.
Need a custom integration built?
I build custom API integrations — Stripe, Companies House and bespoke data pipelines. Reliable, well-documented, no agency overhead.
Discuss your project →