📋 Playbooks · D2C & E-commerce

The WhatsApp order notifications playbook: what to send and when

Updated 2026-09-19 · 5 min read · By the Convo360 team

In short

Send WhatsApp order notifications for five events only: order confirmed, packed, shipped, out for delivery and delivered (plus a delayed variant). Each uses an approved Utility template triggered by a webhook from your order system, not a person typing messages. Customers can opt out anytime, and Convo360 charges no markup on Meta's per-message rate.

Key takeaways
  • Stick to five to six order events — more than that feels like spam and increases opt-outs.
  • Order notifications qualify as Utility templates, which are cheaper and more reliably delivered than Marketing templates.
  • Trigger every notification from a webhook or Google Sheets update, never manually, so updates are instant and consistent.
  • Always include an opt-out line and honour STOP requests immediately — this is a WhatsApp policy requirement.
  • A delayed-shipment template with an apology and revised date reduces support tickets more than silence does.

Why order notifications belong on WhatsApp

Indian shoppers check WhatsApp far more often than email or SMS. When an order status changes, a WhatsApp message gets opened within minutes, which is exactly when a customer wants to know it. Email order updates often sit unread; SMS is limited to 160 characters and cannot carry a tracking button.

The trade-off is that WhatsApp notifications must follow Meta's rules. You cannot free-text a customer about their order unless they messaged you first within the last 24 hours. Outside that window, you need a pre-approved template. This is what makes order notifications a template-driven, event-triggered system rather than a chat.

The customer segment matters too. A prepaid buyer mainly wants proof the order is moving; a cash-on-delivery buyer wants a stronger signal because they haven't paid yet and is more likely to forget the order exists by the time the courier arrives. Treat COD orders with a slightly firmer notification set: mention the amount payable in the out-for-delivery message so there are no surprises at the door, and consider a same-day morning nudge for COD deliveries scheduled that day.

The six events worth sending

Resist the urge to notify on every internal status change. Customers care about six moments:

Six is already generous. If your catalogue ships same-day, drop 'packed' entirely and keep four events. Use the table below as a quick reference for who should trigger each event and how consistently it should fire:

EventSend it?Trigger source
Order confirmedAlwaysPayment or order-placed webhook
PackedOptionalWarehouse status update
ShippedAlwaysCourier AWB generated
Out for deliveryAlwaysCourier live-status API
DeliveredAlwaysCourier proof-of-delivery status
DelayedConditionalShipped-to-delivered gap crosses your set threshold

Utility templates, not Marketing

Order notifications are transactional, so they should be submitted to Meta as Utility templates, not Marketing. Utility templates are reviewed against a narrower policy (they must relate to an existing transaction), but they are more likely to be approved quickly and are priced differently from Marketing sends. See Meta's own category rules at business.whatsapp.com before you submit.

A common rejection reason is mixing a discount code or upsell line into what should be a pure status update. Keep each template to one job: status plus a tracking link, nothing promotional. A typical 'order_shipped' Utility template reads something like: 'Hi {{1}}, your order #{{2}} has shipped via {{3}}. Track it here: {{4}}. Reply STOP to opt out of order updates.' Keep the same structure for every event, name, order number, one status line, one link, so customers recognise the format instantly and don't need to read closely to know what happened.

Building the flow on Convo360

  1. In WhatsApp Studio, create one template per event, for example 'order_shipped' with variables for name, AWB and courier, and submit each for Meta approval.
  2. In your order system (Shopify, WooCommerce or a custom cart), configure an outbound webhook that fires on each status change.
  3. In Flow Builder, add an inbound webhook trigger that receives this event and maps fields into a Send Template block using Set Variable.
  4. Add a Condition block so 'delayed' only fires when the gap between shipped and delivered timestamps crosses your limit.
  5. Turn on Preview / Try-it to dry-run the flow with sample payloads before going live, and check the health-check warnings for any dead ends.

See /docs/webhooks/ and /docs/templates/ for the exact field mapping steps.

Handling replies and opt-outs

Once a customer replies to a notification, such as 'where is my parcel', you are inside the 24-hour service window and can reply freely with an AI Reply or route to your team inbox. Set up a keyword trigger for common words like 'cancel', 'return' or 'wrong address' so these branch to the right sub-flow instead of a generic answer. A customer replying 'change address' on an out-for-delivery message, for example, should route straight to a human or a reschedule form rather than get a templated response that doesn't help.

Every template must let a customer opt out, and STOP-style requests must be honoured immediately; this is a WhatsApp platform policy, not just good practice. Convo360's contact groups let you tag opted-out numbers so no future template reaches them, and it's worth reviewing this list monthly since customers occasionally opt back in by messaging you directly.

What this costs

You pay Meta directly for each template message at Meta's published Utility message rate. Convo360 adds no per-message markup because the platform runs on BYOK. Your own WhatsApp number and Meta billing account are used throughout. Budget by estimating notifications per order (typically 3–4) multiplied by monthly order volume; see /blog/whatsapp-conversation-pricing-india/ for how Meta's pricing model works.

Measuring whether it's working

Track three numbers in Flow Logs and Analytics: the delivery rate on each template (a falling rate often points to an expired opt-in or a wrong number format from checkout), the reply rate on 'out for delivery' (a spike usually means customers have questions about access, timing or building instructions for the courier), and the opt-out rate over a rolling month. A rising opt-out rate on notifications customers generally want is a signal you've added too many events or the wording feels repetitive rather than useful.

It also helps to compare 'where is my order' support ticket volume before and after switching on notifications. A well-built set of order updates should visibly reduce this ticket category, since most customers get their answer before they think to ask for it. That reduction, more than any single open-rate number, tells you the playbook is paying for itself.

Step by step

  1. Create Utility templates for each eventDraft 'order_confirmed', 'order_shipped', 'out_for_delivery', 'order_delivered' and 'order_delayed' in WhatsApp Studio and submit for Meta approval.
  2. Connect your order system webhookPoint your cart platform's status-change webhook at Convo360's inbound webhook URL for this flow.
  3. Map fields in Flow BuilderUse Set Variable to pull customer name, AWB and courier from the webhook payload into the template variables.
  4. Add the delay conditionInsert a Condition block comparing shipped and current timestamps; branch to the delayed template past your threshold.
  5. Test with Preview before going liveRun sample payloads through Try-it mode and check Flow Logs for any dead ends before publishing.

Example conversation

Hi, when will my order reach Pune?
Your order #4821 is out for delivery with Delhivery and should reach you by 7 PM today. I'll notify you the moment it's delivered.

Industry guide: AI agents for D2C & E-commerce — Order updates, COD confirmation & abandoned-cart recovery.

Automate your order notifications on WhatsApp

Start free in minutes — no code, no credit card. Bring your own AI keys and pay no per-message markup.

Frequently asked questions

Can I add a discount code inside an order notification template?

Avoid it. Order-status templates should be submitted as Utility, and mixing in promotions risks rejection or reclassification as Marketing, which follows stricter opt-in rules and is billed at a higher rate.

How many order updates should a customer receive per order?

Three to four is typical: order confirmed, shipped, out for delivery and delivered. Adding more, or notifying on every minor internal status change, increases the chance of opt-outs without adding real value for the customer.

What happens if a customer doesn't reply to a WhatsApp order update?

Nothing extra is required. Templates are one-way notifications, so silence is the expected outcome, and the customer can reply anytime to open a 24-hour window and ask questions directly.

Do I need Meta approval for every new template?

Yes. Every Utility or Marketing template goes through Meta review before it can be sent. Approval usually takes a few hours to a couple of days.

Can this flow work without an AI agent?

Yes. Order notifications are event-triggered templates, so a Guided (no-AI) bot can run this entire flow — AI is only useful for handling free-text replies.

Related reading

Available across India — see WhatsApp & AI calling automation by state and city.