How to cut your cash-on-delivery cancel rate
Short answer: Most cash-on-delivery cancellations in Bangladesh happen in the silence between the order and the courier's call, not because the buyer changed their mind. Send one written confirmation the same day — the item, one total including delivery charge, the delivery days, and the courier's name so the unknown number gets picked up. Keep phone calls for high-value orders and unusable addresses.
Twenty orders confirmed last week. Fourteen delivered. Three refused at the door, two the courier could not reach, one address that did not exist. You paid the courier both ways on all six.
COD is not the problem, and removing it is not the fix. A first-time buyer will not send bKash to a page they found yesterday. The fix is reducing the number of confirmed orders that die between the chat and the door.
Nobody cancels because they stopped liking the product
Cancellations cluster around four causes, and none of them is price.
The order cooled off. It was placed at 11:40pm while the buyer was scrolling in bed. The courier calls on Thursday afternoon. By then they have been through a salary week and two more shopping sessions, and the order feels like something that happened to someone else.
The delivery date was never actually stated. The buyer decided in their own head that it would come the next day, because that is what they hoped. You shipped on day four. Nothing was promised and nothing was broken, but the product arrived after the wedding it was for.
Nothing happened in between. From "order confirm holo" to a courier at the gate there were three days of complete silence. Silence is where second thoughts go to grow.
The courier called from an unknown number. An unrecognised 01 number reads as a scam call or a loan agency, so it rings out. Two missed calls and the parcel goes back to the hub — recorded as a cancellation, though the buyer never refused anything.
A cancelled COD order is worse than a sale you never made. On a lost sale you paid nothing. On this one you paid a courier to carry your product in both directions.
The message that stops most of it, and when to send it
Send it the same day, within a few hours of the order. And send it inside 24 hours no matter what: Messenger only allows a page to send an ordinary message within 24 hours of the customer's last message, and nothing Tanet Chat sends gets around that. A confirmation you write on day three is not delivered at all.
The message has six jobs:
- Repeat the item exactly — with size, colour and quantity spelled out. Size is the single most disputed detail at the door.
- Give one total. Product plus delivery charge, as the one number they will hand over. If it is ৳1,450 plus ৳60, write ৳1,510.
- Give delivery days, not a mood. "Rob-Shombar er moddhe" beats "khub taratari".
- Name the courier and warn about the number. Say the call will come from an unknown number, and that they should pick it up.
- Write their address back to them. This is when a wrong flat number gets corrected, not when the rider is downstairs.
- End with a question that needs a reply. A one-word answer is a small commitment — and every reply from the customer restarts Messenger's 24-hour clock, so you can write to them again tomorrow.
Assalamu alaikum! Apnar order ta confirm kora hoyeche.
Product: Cotton Kurti — Maroon, size L, 1 pcs
Total: 1510 taka (1450 + 60 delivery), hate peye diben
Delivery: Robibar-Shombar er moddhe
Courier: Steadfast — unknown number theke call ashbe,
please receive korben
Address: House 12, Road 4, Shewrapara, Mirpur, Dhaka
Address ta thik ache?
Say the delivery window like a date
"2-3 din" is what everyone writes, and it is fine — as long as it is true and the buyer can turn it into a day of the week. Friday is not a working day for most couriers, so an order taken Thursday night is not a Saturday delivery. Say so.
If you genuinely do not know, do not invent a date — and the bot follows the same rule. On the default escalation setting a specific delivery date is something it is not allowed to guess: unless you have written your real delivery window into the FAQs, it tells the customer it is checking and sends you the exact question on Telegram. So write the window in, if you have one. An owner who answers a handoff in ten minutes beats a bot that confidently says "2-3 din" and is wrong on day five.
Which orders are worth an actual phone call
Calling every order costs more time than it saves, and repeat buyers find it irritating. Sort them:
| Order | What it gets |
|---|---|
| First-time buyer, above ~৳2,000 | A call. High value plus no history is where refusals concentrate. |
| Address with no house or road number, or just "Mirpur" | A call — you are calling for the address, not the confirmation. |
| Repeat customer who has taken delivery before | Written confirmation only. They already know the drill. |
| Under ~৳1,000 with a complete address | Written confirmation only. The call costs more than the loss it prevents. |
| Placed after midnight | Confirm in the morning. A night order that stays silent all day is the one that gets refused. |
Pick your own threshold and keep it — the point is that it is a rule, not a mood. On the call, take twenty seconds: confirm the items and the total, ask what time of day someone is home, hang up. Do not sell anything.
Your own cancel rate is the only benchmark
There is no reliable published figure for Bangladeshi F-commerce, and the numbers traded in seller groups are guesses repeated confidently. Count yours instead.
Take orders created more than 30 days ago, so nothing is still in transit. Divide cancelled by cancelled plus delivered. Export the orders as CSV from the dashboard and do it in a spreadsheet once a month.
Count orders marked incomplete separately. Those are not buyer decisions — they are orders where a field you marked mandatory never got collected, which is a problem with your setup, not your customers.
Then watch whether it moves. If a month of same-day confirmations does not move it, your problem is upstream: over-promised delivery dates, or product photos that flatter the product more than it deserves.
What the product does here, and what it does not
- Order capture. You define the fields collected on every order, and mark which are mandatory. If one is missing the order is still saved — flagged
incomplete, with the Telegram alert marked as such — so you can chase it rather than lose it silently. - Messy addresses. "Jatrabari kutubkhali, opposite mastoor shop" names no district. The order record works one out from the address — Jatrabari is Dhaka — so the courier label is not blank.
- An invoice image in the chat. On a complete order it sends the item, size, order total, phone, address and a status line that defaults to Cash on Delivery — a written confirmation the buyer can screenshot. The total is the product total; it does not add your delivery charge, so say that number yourself. This is off by default; turn it on in the Invoices tab of the agent settings. Adding your own logo needs a paid plan, and the details are on the pricing page.
- A Telegram alert per order with contact, address and district, so calling the ones that need a call is a two-tap job.
- Follow-up rules with a delay, a status filter and a message template exist in the dashboard — but proactive sending is disabled at the platform level right now, so those rules queue instead of sending until it is switched on. Until then, the same-day confirmation is something you send.
- A blacklist. A buyer who has refused two deliveries can be blocked by phone number or profile, and the bot stops replying to them entirely.
The bot removes the typing, not the judgement. And if the earlier problem is that messages never turn into orders at all, fix that first — a cancel rate is a problem you have to earn.
Do this week
- Write the confirmation message once, with your courier's name in it, and keep it somewhere you can paste from.
- Send it the same day for every order, before the buyer's 24-hour window closes.
- Export last month's orders and calculate one number: cancelled ÷ (cancelled + delivered). Write it on paper.
- Call only the orders above your threshold and the ones with unusable addresses.
- Block the two people who have now refused twice.
Access is invite-only right now — apply here if you want the inbox handled while you work on the door.
Common questions
Why do customers cancel cash-on-delivery orders?
Rarely because they changed their mind about the product. The usual causes are an order that cooled off over three silent days, a delivery date the buyer assumed and you never stated, and a courier calling from an unknown number that nobody picks up. All three are fixed by one written confirmation on the day of the order.
When should I send the order confirmation message?
Within a few hours of the order, and always inside 24 hours. Messenger only lets a page send an ordinary message within 24 hours of the customer's last message, so a confirmation written on day three is not delivered at all. Same-day is also when the buyer still remembers ordering.
Should I call every customer to confirm the order?
No. Calling every order costs more time than it saves, and repeat customers find it annoying. Call first-time buyers on high-value orders, and any order whose address is missing a house or road number. Everything else gets the written confirmation only.
What is a normal COD cancel rate in Bangladesh?
There is no trustworthy published national figure, and the numbers passed around in seller groups are guesses. Count your own: cancelled orders divided by cancelled plus delivered, over orders placed more than 30 days ago. That number, and whether it moves after you start confirming, is the only benchmark worth having.
Does taking an advance payment stop cancellations?
A small advance for the delivery charge does cut cancellations, because it costs the buyer something to walk away. It also costs you first-time orders from people who do not yet trust the page. Use it selectively — for remote districts, very large orders, and buyers who have refused a delivery before — not as a blanket policy.