CyberFreezeDev Loading
  1. Home
  2. Blog
  3. Industry guides
  4. COD confirmation on WhatsApp for Shopify stores

Industry guides

COD confirmation on WhatsApp for Shopify stores

A cash on delivery order is only real when the customer pays at the door. Here is how a Shopify store can confirm each COD order on WhatsApp before dispatch, hold the ones nobody confirms, and send order updates within Meta's template rules.

Sealed parcels on a packing table with a phone glowing beside them
Sealed parcels on a packing table with a phone glowing beside them

To confirm cash on delivery orders on WhatsApp, send the customer an approved utility template as soon as the Shopify order is created, with buttons to confirm, change the address or cancel, and hold the order's fulfillment until they answer. After dispatch, the same number sends shipped, out for delivery and delivered updates as utility templates, so the customer rarely has to ask where the parcel is.

This guide is for Shopify store owners in India who offer COD.

Why a COD order needs a second yes

A prepaid order is settled at checkout. A COD order is a promise. Shopify treats cash on delivery as a manual payment method: the order shows as unpaid and Pending until you receive the money and mark it paid.

A delivery rider handing over a parcel as the customer holds out cash
With cash on delivery, the order is only real when the customer pays at the door.

If the buyer refuses the parcel, gave a wrong address or cannot be reached, the courier marks it RTO, return to origin, and sends it back to your pickup address. Courier aggregators such as Shiprocket charge shipping on RTO parcels, so a refused order pays for the trip out and the trip back, and the stock is tied up until it returns.

A common fix is a confirmation call before dispatch, which means someone dialling all day. A WhatsApp message arrives the moment the order is placed, and one tap answers it.

The confirmation flow, step by step

  1. Catch the new order. Shopify publishes every new order to the orders/create webhook topic, or you can start a Shopify Flow workflow from the Order created trigger. Flow is free on the Basic, Grow, Advanced and Plus plans, but its Send HTTP Request action, which calls an outside system, only works on Grow, Advanced and Plus.
  2. Keep only COD orders. Prepaid orders skip the confirmation and go straight to packing.
  3. Hold fulfillment. Flow's Hold fulfillment order action puts the order On hold. Stock can stay reserved, but nobody can fulfill the order until the hold is released.
  4. Send the template. Order number, items, amount due, delivery address, and three quick-reply buttons: Confirm, Change address, Cancel.
  5. Act on the answer. Confirm releases the hold and tags the order. Change address passes the chat to a person, or asks for the new address in the same chat. Cancel cancels the order in Shopify and returns the stock.
  6. Chase silence once. If there is no reply, send one reminder template, then pass the order to your team to call. Decide in advance how long an unconfirmed order waits before it is cancelled.
  7. Reconcile. Shopify warns that webhooks can be missed and recommends reconciliation jobs that fetch data on a schedule. Check every few minutes for COD orders that never got a message.

A button tap is a message from the customer, so it opens a 24-hour customer service window in which your team can reply in normal chat to fix an address.

Utility or marketing: get the category right

Meta sorts templates into marketing, utility and authentication. Utility templates are, in Meta's words, "typically sent in response to a user action or request, such as an order confirmation or update", and must contain nothing promotional. A template with mixed content, such as an order update with a promo, counts as marketing. Since 9 April 2025, a utility template that Meta judges to be marketing is approved as marketing.

So keep the confirmation clean: no discount code, no "you may also like". Send offers separately, as marketing templates, only to customers who agreed to receive them.

Meta has charged per delivered message since 1 July 2025, at rates set by category and country. From 1 October 2026 it also charges for service messages beyond a free tier of 1,000 per business phone number per month. Check Meta's pricing page before you plan volumes.

Opt-in at checkout

Meta asks that the opt-in say clearly the customer is agreeing to messages from your business, name the business, and follow the law. A website is an accepted method, so a checkbox beside the phone number at checkout works. Meta recommends separate opt-in for each message category, so order updates and offers can be switched off independently, with clear instructions for opting out. Phone numbers and addresses are also personal data under India's DPDP Act 2023.

Order status after dispatch

Once the order ships, send utility templates at the moments customers care about: shipped with the tracking link, out for delivery, and delivered. Each one is triggered by a Shopify fulfillment event or a courier tracking update.

The most valuable message is the one after a failed attempt. When the courier raises an NDR, a non-delivery report with the reason, message the customer at once to fix the address or pick a new day, before the parcel turns into an RTO.

A stack of returned parcels in the corner of a small warehouse
Every refused COD parcel costs shipping both ways.

Questions like "where is my order" can be answered from Shopify and courier data. Anything else goes to a person with the order already open.

How we build it

We build COD confirmation and order updates on our WhatsApp CRM, connected to Shopify, usually through n8n workflows on a server you control, with error alerts and a reconciliation check. It runs under your own WhatsApp business account; we are not a Meta Business Partner. We track confirmed, cancelled and returned orders from day one. See also our retail and e-commerce page.

FAQ

Is a COD confirmation a utility or a marketing template? Utility, as long as it only confirms the customer's own order. Add a discount or a product suggestion and Meta treats it as marketing.

Should we cancel orders automatically when nobody replies? You can, but silence is not always refusal. A buyer who does not reply may still be at home and pay at the door. Send one reminder, have someone call, and set a clear cut-off.

Will WhatsApp confirmation stop all returns? No. It catches wrong addresses, duplicate orders and buyers who changed their mind before dispatch. How much it helps depends on your products and customers, which is why we measure it from the start.


Tell us your order volume and courier setup and we will map a COD confirmation flow for your store. Book a consultation.