A shipping delay needs two different triggers, not one. The first sends a short update before the customer has to ask “ถึงไหนแล้ว.” The second, set later, tells your team to stop waiting on the courier and do something about it. Most teams only have the first — so the same polite line that reassures someone on day two is still the only thing anyone says on day six.
Why “it’s still on the way” stops working
A courier tracking page that hasn’t updated in a day is normal; the same silence for four days usually means something went wrong — a missed handover, a wrong address, a parcel sitting at the wrong depot. If a team’s only response to “where’s my order” is checking the same tracking page and repeating “it’s on the way,” customers correctly notice that nobody is actually looking into it. The fix isn’t a warmer tone on that message. It’s sending an update before it’s asked for, and having a second, harder rule for when “still on the way” is no longer true.
Set two thresholds, not one
Pick two points, counted from the courier’s last scan, not from the order date:
- Proactive threshold — the point at which your team messages the customer first, before a ping arrives. For most domestic courier services this is one full day with no scan update past the expected delivery window.
- Escalation threshold — the point at which the team stops repeating the tracking status and instead contacts the courier directly, or offers a resend or refund. This sits further out — commonly two to three days past the proactive threshold — and it’s a judgment call your policy should state once, not one each admin makes mid-chat.
Writing both numbers down, even loosely, turns “let’s wait and see” into a rule an admin can act on without asking a manager first.
What the proactive message actually says
The proactive update only needs three things: which stage the parcel is stuck at, that your team has seen it and is watching, and what happens next if it doesn’t move. It should not promise a new delivery date the courier hasn’t given — a specific date you can’t guarantee is worse than an honest “we’re watching this and will update you by [time]” once that time is picked and kept. Sending this before the customer asks changes the conversation from a complaint to be handled into an update they already expected.
When to stop waiting and act
Past the escalation threshold, checking the same tracking page again isn’t a plan. That’s the point to open a claim or a support ticket with the courier directly, and to tell the customer plainly that the team is now doing that — not just watching for another scan. This is the same judgment call covered in when an AI agent should hand a conversation to a human: a delayed order past its threshold is exactly the kind of case that should route to a person automatically rather than wait for an AI agent, or a tired admin, to keep restating the same tracking status.
Keep the tracking number where the order lives
Both thresholds only work if whoever is on shift can see, at a glance, when a parcel’s clock started — which is hard when the tracking number lives in a courier app and the order sits in a different tab. 1CS’s commerce panel keeps a bill’s delivery address and fulfilment status attached to the same conversation the order was placed in, so the last known status is one click from the customer’s own thread rather than a lookup in a separate system. It’s the same reasoning behind tracking pre-order stages inside the chat itself rather than a spreadsheet: the fewer places a parcel’s status can live, the easier it is to notice when it’s gone quiet for too long.
None of this needs a courier integration or new software — just two numbers your team agrees on once, and a message written before the silence turns into a complaint.