Delivery Notifications for Logistics: WhatsApp and SMS Playbook
Design delivery notifications for couriers and logistics firms: shipment updates, delivery windows, address confirmation, COD, failed-delivery recovery and returns.
By OmniChannels.ai Editorial Team · Reviewed by BroadNet Messaging Solutions Team
Marketing
Short answer
Send a small number of event-driven messages, not every scan: shipment created, out for delivery with a time window, and delivered or failed. Ask for address confirmation and a location pin before dispatch, confirm cash-on-delivery amounts, and give one-tap reschedule options after a failed attempt. Use WhatsApp utility templates with SMS fallback, and route replies to a shared inbox the dispatch team works from.
On this page
- Which delivery notifications should you send?
- How do you confirm addresses before dispatch?
- How should COD deliveries be confirmed?
- How do you recover failed deliveries?
- How should returns be communicated?
- What compliance and channel considerations apply?
- Worked example: a Jeddah last-mile courier cuts repeat attempts
- Common mistakes and honest limits
- How OmniChannels.ai helps
Key takeaways
- Shipment, delivery-window, failed-delivery and return messages are non-promotional and specific to the recipient, which fits Meta's description of utility templates.
- Address confirmation before dispatch prevents failed attempts that are expensive to recover.
- COD messages should state the exact amount and payment options before the driver arrives.
- Failed-delivery messages need a one-step recovery action such as reschedule, redirect or collect.
- SMS fallback driven by delivery status covers recipients who are not reachable on WhatsApp.
This guide is for operations, customer service and product leads at courier companies, third-party logistics providers and merchants running their own delivery fleets. It shows which delivery notifications to send, how to confirm addresses and cash on delivery (COD), and how to recover failed deliveries and returns with as little manual work as possible. Merchant-side order messages are covered in our ecommerce guide.
Which delivery notifications should you send?
Send messages at the moments a recipient can act or plan: before dispatch, on the day, and when the outcome is known. Hub-to-hub scans belong on a tracking page.
| Message | Channel | Template category | Timing |
|---|---|---|---|
| Shipment created, with tracking link | WhatsApp, SMS fallback | Utility | When the label is created |
| Address and location confirmation | Utility | Before dispatch or when the address fails validation | |
| COD amount confirmation | WhatsApp, SMS fallback | Utility | Day before or morning of delivery |
| Out for delivery with time window | WhatsApp, SMS fallback | Utility | When the route is assigned |
| Driver nearby | WhatsApp or SMS | Utility | 15–30 minutes before arrival, if your system supports it |
| Delivered, with proof | WhatsApp, email | Utility | On delivery |
| Failed delivery with recovery options | WhatsApp, SMS fallback | Utility | Immediately after the attempt |
| Customs or duties payable | WhatsApp, email | Utility | When the shipment is held |
| Return pickup scheduled or refund issued | WhatsApp, email | Utility | On booking and on completion |
All of these are about a shipment the recipient expects, which fits Meta's utility description. Keep promotions out; see template categories.
How do you confirm addresses before dispatch?
Ask for confirmation whenever the address is incomplete, fails validation or belongs to an area with frequent failures. In many GCC cities, addresses rely on landmarks and building names, so a location pin and a reachable phone number save attempts.
Address confirmation template (utility)
Hello {{1}}, your {{2}} parcel is scheduled for delivery on {{3}}. Please confirm your address: {{4}}. Buttons: Address is correct | Change address | Share location
Procedure
- Validate the address against your geocoding rules at order import.
- Send the confirmation message for shipments that fail or fall into risk areas.
- "Address is correct" marks the shipment ready for routing.
- "Change address" or "Share location" opens a conversation in the dispatch inbox; recipients can share a location pin.
- Agents update the shipment record with the new address or coordinates.
- Unanswered confirmations trigger an SMS with a link, then a call for high-value parcels.
- Hold or flag shipments still unconfirmed at route planning, according to your policy.
How should COD deliveries be confirmed?
Confirm the exact amount and payment options before the driver leaves, so the recipient has cash or a card ready and can cancel unwanted orders before an attempt is wasted.
Hello {{1}}, your {{2}} order will be delivered on {{3}}. Amount due on delivery: {{4}}. Payment: cash or card. Buttons: Confirm delivery | Reschedule | I did not order this
Route "I did not order this" to the merchant or fraud review before dispatch. Reconcile driver collections against confirmed amounts daily.
How do you recover failed deliveries?
Send a failed-delivery message immediately after the attempt, with the reason, the default next step and one-tap alternatives. The faster the recipient acts, the more likely the second attempt succeeds.
| Failure reason | Message focus | Recovery options |
|---|---|---|
| Recipient not available | Reschedule | New date or time window, safe place, neighbour |
| Address not found | Location | Share location pin, call driver, change address |
| Refused or cancelled | Confirm intent | Confirm return, talk to merchant |
| COD cash not available | Payment | Reschedule, pay online if offered |
| Access restricted (gated compound, office closed) | Access | Gate instructions, alternative address, collection point |
Hello {{1}}, we could not deliver your {{2}} parcel today: {{3}}. We will try again on {{4}} unless you choose another option. Buttons: Reschedule | Change address | Collect from point
Record each recovery action against the shipment. A recipient who does not respond should still get the default second attempt.
How should returns be communicated?
Returns need a pickup confirmation with the time window and packing instructions, then a confirmation when the return is received and when the refund or exchange is processed. The refund message usually comes from the merchant, so agree the event hand-off.
What compliance and channel considerations apply?
Recipients of parcels are often not the people who placed the order, and they may never have consented to messages from the courier. Agree with each merchant who collects consent, what the order form says, and which brand appears as the sender. See our opt-in guide.
- Data minimisation. Show partial addresses in messages and avoid listing parcel contents.
- Sender identity. Register SMS sender IDs where required; see sender ID registration.
- Fallback. Use Meta's sent, delivered, read and failed statuses to decide when to send SMS; see delivery status explained.
- Scam awareness. Fake "delivery failed, pay a fee" messages are common. Use consistent sender names, avoid fee requests by link where possible, and publish your official channels.
- Cost. Meta charges per delivered template by category and market; Meta's pricing documentation describes changes to utility and service message charging from 1 October 2026, so confirm in Meta's rate card.
Worked example: a Jeddah last-mile courier cuts repeat attempts
"Sahm Express", a synthetic last-mile courier in Jeddah, delivers for online merchants and handles a large share of COD parcels. Drivers lose time calling recipients who are not home or whose addresses are vague.
The courier now sends a WhatsApp address confirmation with a share-location option for shipments that fail address validation, and a COD confirmation with the amount on the evening before delivery. Out-for-delivery messages include a time window. Failed attempts trigger an immediate message with reschedule, change address and collection-point buttons.
Recipients not reachable on WhatsApp get SMS with a tracking link. Replies land in a dispatch inbox, where agents update shipment records. Sahm compares first-attempt delivery rate, COD refusals and calls per route with the months before launch, using its own data.
Common mistakes and honest limits
- Messaging every scan. It increases cost and teaches recipients to ignore you.
- Unclear sender. Recipients ignore messages from a courier name they do not recognise; include the merchant name.
- Buttons with no back-end action. Reschedule taps must change the route plan.
- No default next step. Silence should not mean the parcel disappears.
- Duplicate messages from merchant and courier. Agree who sends which event.
- Ignoring opening hours. Avoid late-night sends except time-critical delivery updates.
- Expecting messaging to fix addressing. It reduces failed attempts; it does not replace address data quality.
How OmniChannels.ai helps
OmniChannels.ai supports WhatsApp utility templates with variables and quick-reply buttons, phone preview and approval tracking, in Arabic and English. Scheduled campaigns on WhatsApp and SMS can be sent from an Excel or CSV upload of the day's shipments, with duplicate filtering. Recipient replies arrive in the Omni Inbox for dispatch agents. Channel fallback can switch undelivered WhatsApp messages to SMS, delivery reports with filters and CSV export identify failures, and dispatch systems connect through the public REST API and webhooks. See SMS or book a demo.
Frequently asked questions
How many delivery notifications should a customer receive?
Usually three to five per shipment: created or dispatched, out for delivery with a window, and delivered or failed, plus address confirmation or COD confirmation when needed. Sending every hub scan adds cost and noise. Let customers who want detail follow a tracking link rather than pushing every event by message.
Who should send the messages, the courier or the merchant?
Agree this in the contract. If the courier sends them, the recipient sees a brand they may not recognise, so include the merchant name in the message. If the merchant sends them, it needs courier events by API or webhook. Avoid both sending the same update, which confuses recipients and doubles cost.
Can customers share their location on WhatsApp for delivery?
Yes. A recipient can share a location pin in a WhatsApp chat, and the driver app or dispatch team can use it alongside the written address. Ask for it in the address confirmation message, store it against the shipment, and still check that the written address meets your carrier and customs requirements.
What should a failed delivery message include?
State that the attempt failed, the reason in plain words, and what happens next by default, such as a second attempt tomorrow or return to sender after a set number of days. Add buttons to reschedule, change the address or collect from a point, and a way to reach an agent.
Are delivery notifications marketing or utility messages on WhatsApp?
Updates about a shipment the recipient is expecting, without promotion, fit Meta's description of utility templates. Adding discounts, cross-sell or app download prompts can lead Meta to classify the template as marketing, which changes pricing and requires marketing opt-in. Meta makes the final decision at review.
Sources
Keep reading
More guidesMarketing
Automated Appointment Reminders on WhatsApp and SMS: A Guide
Automate appointment reminders on WhatsApp and SMS for clinics, salons, hotels and services: timing, templates, confirm and reschedule buttons, and fallback.
8 min read
Marketing
Healthcare Patient Messaging: Reminders, Results and Privacy
How clinics and hospitals can message patients on WhatsApp and SMS: appointments, pre-visit instructions, results-ready notices without health data, consent and privacy.
8 min read
Omnichannel
Channel Fallback Strategy: WhatsApp, RCS and SMS
How to design a channel fallback strategy across WhatsApp, RCS and SMS: fallback triggers, timeouts per message type, duplicate prevention, consent and cost.
12 min read
