Skip to content

Templates · Utility

WhatsApp delivery update templates for couriers and last-mile teams

Last-mile utility templates beyond basic order updates: slot booking, failed attempt and reattempt, address confirmation, delivery code, store pickup and installation visits.

By Broadchat teamPublished 5 min read

हिन्दी में पढ़ें

Before you submit these templates

  • Every delivery template should name the shipment: AWB or order number, the sender brand and the date. Without them a reviewer cannot tell it apart from spam.
  • If you are a courier writing on behalf of a brand, name both ("your Rangoli Home parcel, shipped with SwiftKart Logistics"), so the customer knows why you have their number.
  • Do not ask for an OTP or a delivery code to be typed back in chat. Ask the customer to show or tell the code to the delivery partner at the door.
  • Keep cross-selling out of delivery messages. "Rate us and get ₹50 off" changes the category to marketing.
  • Use quick replies for anything the customer must choose (slot, reattempt date, address correct or not), so your system can read the answer without a human.
  • Tracking links must open your or the courier's own domain, with the AWB number as the button variable.

Delivery updates beyond "your order has shipped"

These WhatsApp delivery update templates cover the last mile, where most delivery problems happen: choosing a slot, failed attempts, unclear addresses, secure handover, parcels stuck at a hub, store pickups and installation visits. They are written for couriers, D2C brands that run their own logistics, hyperlocal delivery teams and appliance sellers. For the standard confirmation, shipped and delivered messages, use the order update templates; this page picks up where those stop.

All of them are utility templates: they report on a shipment the customer is already waiting for and ask them to make a choice about it. That is also why customers answer them.

Which templates save the most failed deliveries

ProblemTemplateWhat the customer does
Nobody homedelivery_slot_choicePicks a slot the evening before
Attempt faileddelivery_attempt_failedPicks a reattempt day or fixes the address
Incomplete addressaddress_confirmationConfirms or corrects before dispatch
Parcel about to go backreturn_to_origin_noticeReplies to stop the return

Each question is answered with a tap. Your system then needs to act on the reply: a reattempt date that nobody reads is worse than no message at all.

Wiring replies back to your system

  1. Create the templates in CRM → WhatsApp Templates under Utility.
  2. Send them from your courier or order system through Broadchat's developer API, or by posting the shipment event to a workflow's Custom Webhook in Automations → Workflow.
  3. In Chatbots, create a flow with a Keyword Match trigger for each button text (Tomorrow, Update address, 9 am to 1 pm). Use Ask Question where you need more detail, such as the corrected address.
  4. Forward the answer to your system: add an Add Automation App step with the External API Call tool to call your API, or let your system read incoming messages from the channel's Webhooks tab, which forwards incoming messages in Meta's format. See the webhooks integration.

Volume and quality

Logistics senders reach many people once, which makes the messaging limit matter: a new business portfolio starts at 250 unique customers in a rolling 24 hours and moves up as quality stays high and volume grows. Delivery messages that customers expect rarely cause blocks, but a wrong number in your shipment data does. Validate numbers before sending; see quality rating and messaging limits.

Meta charges per delivered utility template. Rates by country are on WhatsApp API pricing, and the WhatsApp message templates guide explains the category rules.

Sources

  1. Template components — Meta for Developers, checked 12 October 2026
  2. Messaging limits — Meta for Developers, checked 12 October 2026
  3. Template categorization guidelines — Meta for Developers, checked 12 October 2026

Broadchat team · Product and partner success team

The people who build and support Broadchat, the white-label WhatsApp Business API platform. We write from what we see while onboarding partners and their clients on the official WhatsApp Cloud API, and we check every article against Meta's current documentation.

Last updated:

11 delivery updates templates

Copy the wording, then submit it from CRM → WhatsApp Templates with the sample values shown. Meta reviews every template; approval is never guaranteed.

  1. Hi {{1}}, your Rangoli Home parcel {{2}} will reach your area on {{3}}. Please choose a delivery slot so someone is home to receive it.

    • 9 am to 1 pm
    • 1 pm to 5 pm
    • 5 pm to 9 pm

    Choose a delivery slot

    Utilitydelivery_slot_choiceLanguage: en

    Use it when: The evening before delivery, for bulky or high-value items where a missed delivery is costly.

    Variables
    VariableMeaningSample
    {{1}}Customer first namePriya
    {{2}}AWB or order numberSKL7734120
    {{3}}Delivery dateThu, 16 Oct
    • The chosen slot arrives as a reply; save it with a chatbot step and send it to your routing system.
  2. Hi {{1}}, our delivery partner tried to deliver your parcel {{2}} today but {{3}}. Please choose when we should try again.

    • Tomorrow
    • Day after tomorrow
    • Update address

    Delivery attempt failed

    Utilitydelivery_attempt_failedLanguage: en

    Use it when: Within an hour of a failed attempt, before the parcel is marked for return.

    Variables
    VariableMeaningSample
    {{1}}Customer first nameArjun
    {{2}}AWB numberSKL7734188
    {{3}}Failure reasonnobody was available at the address
    • Write the reason sample as a full clause so the sentence reads naturally.
  3. Hi {{1}}, before we ship your order {{2}}, please confirm your delivery address: {{3}}. If anything is missing, such as a flat number or landmark, tap Edit address and reply with the correction.

    • Address is correct
    • Edit address

    Confirm or complete the address

    Utilityaddress_confirmationLanguage: en

    Use it when: When your address check flags an incomplete address, or for every first-time cash on delivery order.

    Variables
    VariableMeaningSample
    {{1}}Customer first nameMeera
    {{2}}Order number#48230
    {{3}}Address as enteredB-704, Greenleaf Residency, Baner, Pune 411045
    • Inside the open window after the reply, you can also ask the customer to share their location pin.
  4. Hi {{1}}, your parcel {{2}} is out for delivery today. For security, share the code {{3}} with the delivery partner at handover. Do not share this code before the parcel is in your hands.

    Delivery code for secure handover

    Utilitydelivery_code_shareLanguage: en

    Use it when: On the morning of delivery for high-value parcels such as phones, jewellery or documents.

    Variables
    VariableMeaningSample
    {{1}}Customer first nameKabir
    {{2}}AWB numberSKL7734201
    {{3}}Handover code4827
    • This is a handover code for the doorstep, not a login code, so it is a utility template, not authentication.
  5. Hi {{1}}, your parcel {{2}} is being held at our {{3}} hub because of {{4}}. We will update you here as soon as it moves. No action is needed from you right now.

    Parcel held at hub

    Utilityparcel_held_at_hubLanguage: en

    Use it when: When a shipment is delayed in transit for more than a day, so the customer does not need to call.

    Variables
    VariableMeaningSample
    {{1}}Customer first nameNeha
    {{2}}AWB numberSKL7734156
    {{3}}Hub cityNagpur
    {{4}}Reasona regional transport strike
  6. Hi {{1}}, your order {{2}} is ready for pickup at {{3}}. Please collect it by {{4}} and show this message or your order number at the counter.

    • Store location

    Ready for store pickup

    Utilityready_for_store_pickupLanguage: en

    Use it when: For click-and-collect orders, pharmacy pickups and repair counters.

    Variables
    VariableMeaningSample
    {{1}}Customer first nameSanjay
    {{2}}Order number#48241
    {{3}}StoreRangoli Home, MI Road, Jaipur
    {{4}}Last pickup dateSunday, 19 Oct
  7. Hi {{1}}, your {{2}} was delivered. Our technician will visit on {{3}} between {{4}} for installation. Please keep the box unopened until then so the warranty seal stays intact.

    • Confirm visit
    • Change date

    Installation visit after delivery

    Utilityinstallation_visit_scheduledLanguage: en

    Use it when: For appliances, furniture and electronics that need installation or assembly.

    Variables
    VariableMeaningSample
    {{1}}Customer first nameAnita
    {{2}}Productwashing machine
    {{3}}Visit dateSat, 18 Oct
    {{4}}Time window10 am and 1 pm
  8. Hi {{1}}, {{2}} has picked up your order from Kesar Organics and is on the way. Expected arrival: about {{3}}. Track the rider live using the button below.

    • Track rider

    Rider assigned (hyperlocal)

    Utilityhyperlocal_rider_assignedLanguage: en

    Use it when: For same-day grocery, food, pharmacy or flower deliveries.

    Variables
    VariableMeaningSample
    {{1}}Customer first nameRohit
    {{2}}Rider nameSuresh
    {{3}}ETA25 minutes
    • Do not share the rider's personal phone number in the template; use a masked number or the tracking page.
  9. Hi {{1}}, after {{2}} unsuccessful delivery attempts, your parcel {{3}} is being returned to the seller. If you still want the order, reply here today and we will try to stop the return.

    Parcel returning to sender

    Utilityreturn_to_origin_noticeLanguage: en

    Use it when: When a shipment is marked for return to origin, as a last chance to save the order.

    Variables
    VariableMeaningSample
    {{1}}Customer first namePooja
    {{2}}Number of attemptsthree
    {{3}}AWB numberSKL7734190
  10. नमस्ते {{1}}, आज हमारे डिलीवरी पार्टनर आपका पार्सल {{2}} देने आए थे, लेकिन {{3}}। कृपया बताएँ कि दोबारा कब डिलीवरी करें।

    • कल
    • परसों
    • पता बदलना है

    Failed delivery (Hindi)

    Utilitydelivery_attempt_failed_hiLanguage: hi

    Use it when: For customers in Hindi-speaking regions or those who chose Hindi.

    Variables
    VariableMeaningSample
    {{1}}Customer nameसुनीता
    {{2}}AWB numberSKL7734188
    {{3}}Reasonघर पर कोई नहीं मिला
  11. Hi {{1}}, aapka parcel {{2}} kal {{3}} tak pahunch jayega. Delivery ke liye apna time slot chuniye taaki koi ghar par ho.

    • Subah 9 se 1
    • Dopahar 1 se 5
    • Shaam 5 se 9

    Delivery slot (Hinglish)

    Utilitydelivery_slot_hinglishLanguage: en

    Use it when: For customers who chat in Roman-script Hindi. Submitted under English (en) because WhatsApp has no Hinglish language code.

    Variables
    VariableMeaningSample
    {{1}}Customer first nameRahul
    {{2}}AWB numberSKL7734120
    {{3}}AreaMalviya Nagar

Frequently asked questions

What is the difference between order updates and delivery updates?

Order updates cover the order's life from the shop's side: confirmed, packed, shipped, delivered, refunded. Delivery updates cover the last mile: slots, failed attempts, address checks, handover codes and pickups. Both are utility templates.

Can a courier send WhatsApp updates on behalf of the brand?

Yes, from the courier's own WhatsApp number, as long as the customer agreed to receive delivery updates on WhatsApp. Name both the brand and the courier in the message so the customer understands who is writing.

Can customers reschedule a delivery by tapping a button?

Yes. Add the options as quick-reply buttons. In Broadchat a chatbot flow can start on each reply and pass the choice to your delivery system through an automation step or a webhook.

Are delivery handover codes authentication templates?

No. Authentication templates are for one-time codes that log a user in or verify an account. A code the customer shows to a delivery partner is a utility message about a shipment.

Launch WhatsApp under your own brand

Resell campaigns, chatbots, a shared inbox and CRM on the official WhatsApp Cloud API, with your logo, domain and prices.