First 2 months ৳200/month + 100% money-back guarantee — launch your store today!
All articles

Fake orders and COD returns: how to cut them without losing real customers

Phone verification, advance payment, courier history checks, a confirmation-call script and blocking repeat offenders — without losing real buyers.

By the Eazifiy teamPublished 8 min read

Cash on delivery is why ecommerce works in Bangladesh, and it is also the reason a parcel can travel to Rangpur and come back unopened. Every returned COD parcel costs you the delivery charge both ways, the packaging, the days the stock was unavailable, and the time someone spent booking it. A store with a high return rate is not unprofitable because of its prices; it is unprofitable because of its returns.

The good news is that fake orders are not random. They come from a small number of predictable sources, and each source has a filter that catches most of it. This post goes through them in the order you should apply them — cheapest and least intrusive first — so you cut returns without making it harder for a genuine customer to buy.

Where fake orders come from

Before filtering, know what you are filtering. Returned COD parcels in Bangladesh come from four places:

  • Pranks and bored browsing. Someone fills in a checkout with a friend's number, or their own, with no intention of paying. Common on stores that advertise heavily to a young audience.
  • Buyer's remorse. The order was real when it was placed. By the time the courier knocks two days later, the customer has changed their mind, spent the money, or bought it elsewhere. This is the biggest category and it is not fraud — it is a gap between ordering and paying.
  • Wrong or incomplete addresses. A genuine buyer, a parcel that cannot be delivered. Missing house numbers, a phone that does not answer, "near the mosque".
  • Deliberate abuse. A small group of numbers that order repeatedly and refuse every time, sometimes competitor mischief, sometimes people who enjoy it.

The filters below map to those sources. No single one solves everything; together they change the economics of your store.

Filter 1: Verify the phone number

The cheapest filter is making sure the phone number is real and belongs to the person ordering. Two layers:

  • Format validation — only accept valid Bangladeshi mobile numbers. This removes typos and nonsense entries before they become orders.
  • OTP verification — send a one-time code by SMS and require it before the order is placed. The prankster using someone else's number cannot complete the order; the genuine buyer taps a code and moves on.

OTP adds one step to checkout, and some stores worry it costs sales. In practice the buyers it deters are the ones who were never going to pay. On Eazifiy the number format check and order OTP are part of checkout and cannot be disabled by accident.

Filter 2: Take an advance on cash-on-delivery orders

This is the single most effective filter for buyer's remorse, because it closes the gap between ordering and paying. The customer still pays most of the amount at the door, but pays something now — typically the delivery charge, or a fixed amount — through bKash.

What it does:

  • A customer who pays ৳100 today rarely refuses the parcel on Thursday. They have already committed.
  • If they do refuse, the advance covers your courier charge, so a return costs you nothing out of pocket.
  • Pranksters do not pay advances. The order simply never completes.

What to set it to: enough to cover the return trip with your courier, not so much that it feels like the product is no longer cash on delivery. Many stores start with the delivery charge and adjust.

On Eazifiy this is a checkout setting called Advance Payment: switch it on, set the amount or percentage, and the customer pays it with bKash before the COD order is confirmed. Payment goes straight to your own bKash merchant account. See the bKash payment page for how it fits with a full bKash discount and delivery-fee-in-advance options.

Filter 3: Check the customer's delivery history

Couriers know something you do not: whether this phone number accepted or refused parcels from other stores. Several couriers in Bangladesh expose that history to merchants — how many parcels were delivered, how many returned, sometimes per courier.

A number with 12 deliveries and 0 returns is a customer. A number with 2 deliveries and 9 returns is not, whatever they say on the phone.

Use it at confirmation time, not at checkout: let the order in, then check before you ship. On Eazifiy the Fraud Check screen queries the couriers you have connected — Steadfast, Pathao, RedX, Paperfly, eCourier and CarryBee, each one you have enabled — for a phone number, and the result is shown on the order (Fraud Check is included on the Lite and Premium plans). On Premium, orders that look risky can be held in the Fraud Review queue rather than shipped automatically.

Filter 4: Confirm before you ship

A confirmation call or message catches wrong addresses and half-hearted orders at the same time, and it takes a minute. Keep it short and specific:

"Assalamu alaikum, [store name] theke bolchi. Apni [product] order korechen, [amount] taka, cash on delivery. Address ki [address] thik ache? Kal/porshu delivery hobe. Confirm korle amra pathiye dei."

Three things happen on that call: you confirm the person exists, you confirm the address is deliverable (ask for a landmark if the address is thin), and you give the customer a chance to cancel now instead of refusing later. A cancelled order costs nothing; a refused parcel costs two delivery charges.

For stores that ship too many orders to call each one, send an SMS with the order summary and a reply option, and call only the ones that do not respond or that the delivery-history check flagged.

Filter 5: Block repeat offenders

Once a number has refused two parcels, stop shipping to it. Keep a blocklist and check it at confirmation. If the same person keeps coming back with new numbers from the same device or address, block at that level too.

On Eazifiy, a customer can be blocked from the Customers screen, and on the Premium plan an IP Blocklist handles the more determined cases. Blocked customers can browse, but their orders are not accepted.

Filter 6: Fix the checkout itself

Some returns are caused by your own checkout:

  • Delivery charge appearing late. If the customer sees the charge only after entering their details, they feel tricked and refuse the parcel. Show it early.
  • No delivery-time expectation. "2–4 days outside Dhaka" on the checkout page prevents "I thought it would come tomorrow" refusals.
  • Address fields that are too loose. Ask for district, area and a landmark separately rather than one free-text box.
  • No order confirmation SMS. A message with the order number, amount and expected date reminds the customer that they ordered — and gives them a way to cancel early.

Track your return rate

You cannot manage what you do not measure. Once a week, look at returned parcels as a share of shipped parcels, and split it by courier, by district and by whether an advance was paid. The split tells you where the problem is: a courier with a weak district, a product that disappoints on arrival, or a campaign that attracted the wrong buyers.

The Eazifiy dashboard shows the order-status breakdown — pending, confirmed, sent to courier, delivered, returned, partial return — for the store, and the Reports section breaks sales and orders down by date.

A realistic sequence

Do not switch everything on at once. A sensible order:

  1. Phone validation and OTP — no cost, no friction worth mentioning.
  2. Confirmation call or SMS for every order.
  3. Delivery-history check on first-time COD customers.
  4. Advance payment on COD, starting with the delivery charge.
  5. Blocklist for the numbers that still get through.

Most stores see the return rate fall substantially after steps 1–3, and advance payment on COD does the rest. Genuine customers barely notice any of it.

Frequently asked questions

Will advance payment scare away real customers? Some customers prefer pure COD, and you may lose a few orders. The ones you lose are disproportionately the ones that would have been returned. Start with a small advance, watch the numbers for two weeks, then decide.

Can I ask for advance payment only on some orders? On Eazifiy the advance payment setting applies to COD orders at checkout; use the delivery-history check and confirmation call to decide which orders to hold or cancel before shipping.

What about a customer who refuses one parcel but has a good history? One refusal is not a pattern. Talk to them; it is often a genuine reason. Two refusals is a pattern.

Does the courier charge for a returned parcel? Most do, and the charge is on their rate card. This is exactly the cost an advance payment covers. For choosing a courier with return costs in mind, see Pathao vs Steadfast vs RedX.

Is any of this available on a free trial? OTP verification, advance payment on COD and customer blocking are on every Eazifiy plan; courier fraud checks are on Lite and Premium. The first 2 months are ৳200 a month on any plan — see pricing.

Ready to open your own store?

Storefront, admin panel, bKash and cash-on-delivery checkout, Pathao & Steadfast courier — ৳200 a month for the first 2 months on any plan.

Start for ৳200/month

No coding required · Cancel anytime

More guides