An order tracking WhatsApp bot that deflects 'where is my order?'
An order tracking WhatsApp bot asks the customer for their AWB or order number, calls your tracking API through an HTTP request block, and replies with the current status in seconds. The same flow can push proactive updates when a shipment status changes, and it only escalates to a human agent when the tracking API shows a genuine delay or exception.
- Most 'where is my order?' messages can be answered from data you already have via an API — no human needed.
- An HTTP/API request block inside the flow does the lookup live, so the answer is never stale.
- Proactive status updates sent automatically reduce inbound tracking queries before they happen.
- Escalation rules should trigger only on real exceptions — delay past SLA, failed delivery, damaged report.
Why tracking queries flood support
For a courier or logistics company shipping hundreds of parcels a day out of Bhiwandi, Guwahati or Coimbatore, "where is my order?" is often the single most common message across WhatsApp, calls and email combined. Each one takes an agent a minute or two to look up manually in the tracking system and type back.
At scale, this is pure repetition: the answer already exists in your system, it just needs to reach the customer without a human in between.
The pattern repeats in a predictable way too: a burst of tracking messages right after a shipment is booked ("has it been picked up yet?"), a second burst the day it's expected ("what time will it arrive?"), and a smaller trickle of genuine exceptions. Automating the first two removes most of the volume and leaves agents free for the third.
How the automated lookup works
The customer messages your WhatsApp number with their AWB or order number. An Ask a Question block captures it, and an HTTP/API request block sends it to your tracking or courier partner's API, pulling back the live status — picked up, in transit, out for delivery, delivered, or exception.
A Condition block then picks the right reply template for each status, so the customer gets a clear, specific answer rather than a generic "it's on the way".
Proactive updates without being asked
The same lookup logic can run in reverse: when your system marks a shipment as out for delivery or delivered, an inbound webhook triggers a flow that messages the customer directly, no enquiry needed. This alone prevents a large share of tracking questions from being asked in the first place.
Three proactive checkpoints cover most of what customers actually want to know:
| Trigger event | Message sent |
|---|---|
| Shipment picked up | "Your order AWB SR4487213 has been picked up and is on its way to Andheri East." |
| Out for delivery | "Your parcel is out for delivery today, expected by 7 PM." |
| Delivered | "Delivered at 6:42 PM. Reply if anything looks wrong with your order." |
These use WhatsApp Utility templates approved by Meta, since they're business-initiated messages outside a live conversation. Keep the wording factual and specific rather than promotional.
Building it on Convo360
Here is the whole thing built on Convo360, no code required.
- In Flow Builder, start with a keyword trigger for "track", "status", "order" alongside New Conversation.
- Add an Ask a Question block for the AWB/order number and store it with Set Variable.
- Add an HTTP/API request block calling your tracking endpoint, then a Condition block to branch on status.
- For the proactive side, set up an inbound webhook trigger from your logistics system that fires a "shipment update" flow automatically.
- Add an escalation branch to live chat for any status marked delayed or exception.
See webhooks docs and Flow Builder docs.
Handling messy AWB numbers
Customers rarely type an AWB number cleanly. Extra spaces, a mix of upper and lower case, or the order ID instead of the AWB are all common. Before calling the tracking API, add a simple cleanup step: trim whitespace and normalise case with a JavaScript block, so a lookup for "sr 4487213 " matches the same record as "SR4487213".
If your system uses both an internal order ID and a courier AWB number, let the flow accept either — an AI Reply or a Condition on the input format (letters+digits pattern vs pure digits) can route to the right lookup field, rather than forcing customers to know which number you actually need.
What genuinely needs a human, and common mistakes
Not every tracking query should be automated end to end. Damaged parcel reports, repeated failed delivery attempts, or a shipment stuck past its expected date deserve a person's attention. The Condition block should route these straight to your support team's live chat inbox instead of looping the customer through more automated status checks.
The most common mistake is a status reply that's technically correct but useless — "Status: 3" or "In Transit" with no context. Always pair the raw status with what it means in plain language and, where possible, a time estimate, the way the example reply above names a specific area and a time window rather than just a status word.
A second mistake is having no fallback when the AWB doesn't match anything — a bot that goes silent or repeats the same question in a loop frustrates customers faster than a slow human reply would have.
What it costs and what to measure
This flow runs on the Starter plan (₹999/month, ex-GST) since it needs only the flow builder, WhatsApp channel and webhook support — no AI agent is required if your statuses are a fixed set. Adding an AI Reply block for free-text questions like "why is it delayed?" needs the Pro plan (₹2,999/month, ex-GST) and your own AI provider key, billed at cost.
Track two things in Analytics monthly: the share of tracking conversations resolved without reaching a human (deflection), and how many proactive update messages are sent versus how many inbound "where is my order" messages still arrive despite them. A high inbound volume even after proactive updates usually means the trigger events from your logistics system are firing late or missing a status.
Example conversation
Industry guide: AI agents for Logistics & Courier — Shipment tracking, COD & delivery updates.
Automate your order tracking replies
Start free in minutes — no code, no credit card. Bring your own AI keys and pay no per-message markup.
Frequently asked questions
Does the bot need access to our courier partner's system?
It needs an API endpoint — either your own order management system's API or your courier partner's tracking API — that the HTTP/API request block can call with the AWB number.
Can it handle multiple courier partners in one flow?
Yes. A Condition block can route the lookup to the right API based on which partner the order was shipped through, before replying with a single consistent format.
What happens if the API is down or the AWB is invalid?
The flow should include a fallback message explaining the issue in plain language and offering to connect the customer to a live agent, rather than showing a raw technical error or looping the same question.
Can this also send delivery OTPs or confirmation requests?
The bot itself never asks for or shares OTPs for verification purposes; it can, however, send a delivery confirmation message with buttons like 'Received' or 'Not yet'.
Related reading
Available across India — see WhatsApp & AI calling automation by state and city.