Skip to content
MiddleEastEcomMiddle East Ecommerce
Payments · Cash on delivery

How to Reduce Fake COD Orders: OTP, WhatsApp Confirmation and Deposits

Verify the phone number with an OTP at checkout, confirm every COD order on WhatsApp before it ships, require a valid address, and ask risky carts for a deposit. Gulf stores that do this cut refusals from around 15% to 6–8%, for about one US cent per message.

MayaBy MayaUpdated 10 min read
Key takeaways
  • Most bad COD orders aren't fraud. They're impulse buys, unreachable phones and vague addresses, and all of them can be caught before the parcel leaves.
  • Stack five cheap checks: OTP at checkout, WhatsApp confirmation before dispatch, address validation, a deposit or fee on risky carts, and a blocklist for repeat refusers.
  • A WhatsApp confirmation costs USD 0.0107 in Saudi Arabia and USD 0.0157 in the UAE in Meta fees. One refused parcel costs about SAR 78.
  • Confirming within an hour and not shipping after two failed contacts cuts everyday refusals from about 15% to 6–8%.
  • Track confirmation rate and RTO by campaign every week. A campaign full of unconfirmed orders is buying you the wrong customers.

Cash on delivery wins you first-time buyers in the Gulf. It also invites orders that never turn into cash.

A fake number, a shopper who cooled off overnight, or an address the driver can't find. Each one costs you a delivery, a return trip and the ad that won the order.

The fix is simple: check every COD order before it leaves your shelf. Verify the phone, confirm on WhatsApp, get the address right, and ask risky carts for a small deposit.

Here's the full verification playbook, what each layer costs, and the numbers to track. It works on Shopify, Salla, Zid or WooCommerce.

15% → 6–8%
Everyday COD refusals before and after 1-hour WhatsApp confirmation
LianLian Global, 2026
−10–15 pts
Cut in COD return-to-origin from pre-dispatch confirmation
Quiqup, 2026
$0.0107
Meta fee per WhatsApp utility message in Saudi Arabia
Meta, from 1 Oct 2026
SAR 78
Lost per refused parcel on a SAR 230 order
MiddleEastEcom worked example

Why do COD orders fail?

Most failed COD orders aren't criminal. They're ordinary buyers who weren't ready, plus a few pranksters.

They fall into four groups:

  • Fake orders. Made-up phone numbers, prank orders, or an order placed in someone else's name.
  • Impulse orders. A shopper taps "buy" on an Instagram or TikTok ad, then changes their mind before the driver arrives.
  • Unreachable shoppers. A wrong digit in the phone number, a phone switched off, or nobody answers the driver.
  • Wrong or vague addresses. A district and a landmark, with no building number the driver can find.

Each group needs a different check. An OTP catches fake numbers, but it can't stop a real buyer who cools off. Confirmation catches that buyer, but only a good address gets the parcel to the right door.

That's why verification works as a stack, not a single app. For the cost side of a refused parcel, see COD refusals and returns.

The COD verification stack

Think of it as five filters. Each one catches orders the one before it missed, and the cheapest go first.

LayerWhen it runsWhat it stopsTypical cost
1. OTP phone checkAt checkoutFake and mistyped numbers, prank ordersFrom USD 5 a month, or about 1 US cent per code
2. WhatsApp or call confirmationWithin 1–4 hours of the orderChanged minds, duplicate orders, wrong detailsUSD 0.0107 per message in Saudi Arabia
3. Address validationAt checkoutFailed first attempts, lost parcelsFree format checks, low-cost autocomplete
4. Deposit, COD fee or prepaid discountAt checkoutLow-intent orders on big or risky cartsSome lost conversions, or SAR 5–10 off prepaid
5. Blocklist and COD rulesBefore COD is shownRepeat refusers and high-risk cartsFree in most platforms and apps
The five layers, cheapest and earliest first

You don't need all five on day one. Start with layers 1–3, then add deposits and rules once you see where refusals come from.

Layer 1: verify the phone with an OTP

An OTP (one-time password) is a short code sent to the shopper's phone. They type it in before the COD order is created.

It does one job very well: it proves the number is real and belongs to the person ordering. That alone removes most prank orders and typos, because the driver will now reach a working phone.

Set it up like this:

  1. Send the code on WhatsApp first, with SMS as the fallback.
  2. Ask for it only on COD orders, so prepaid buyers skip the step.
  3. Hold orders that fail the check, send a reminder after about 10 minutes, and auto-cancel after 30.
  4. Save the verified number, so returning buyers don't need a new code every time.

Meta bills an OTP as an authentication message, which costs the same as a utility message. Shopify apps start at about USD 5 a month, and we compare them in our guide to Shopify COD and OTP apps.

Layer 2: confirm every order before dispatch

Confirmation is the layer that saves the most money. A real buyer can still change their mind, and you want to know before you pay the courier.

Send an automatic WhatsApp message soon after the order, with a one-tap "Confirm" button. The faster you send it, the fresher the buyer's intent.

Here's the timing that works:

  • Send within an hour. LianLian Global reports everyday refusals falling from about 15% to 6–8% when stores confirm within an hour.
  • Close the window within 2–4 hours. Quiqup, a UAE courier, puts the RTO cut from confirming in that window at 10–15 points.
  • Chase twice, then stop. One reminder, one call. If both fail, don't ship.
  • Call high-value carts. A 30-second voice call settles size, colour and delivery time on expensive orders.

Keep it a utility message: no offers, no discount codes. A promo turns it into a marketing message, which costs USD 0.0576 in Saudi Arabia instead of about one cent. Our WhatsApp marketing guide covers templates and opt-ins.

A young Saudi shop worker at a packing table checking a WhatsApp order confirmation on a smartphone beside sealed parcels
Every order confirmed at the packing table is a parcel that won't come back.

Layer 3: get the address right

A verified, confirmed buyer can still lose you a parcel if the driver can't find the door. So the address is part of verification too.

In Saudi Arabia, the National Address is now required. Since 1 January 2026, couriers can reject, hold or return parcels without a valid one.

Make the Short Address a required checkout field. It looks like ABCD1234: four letters, then four digits.

Validate the format at checkout, and tell shoppers they can find it in the SPL, Absher or Tawakkalna apps. Mordor Intelligence found only 68% of Saudi shoppers entered a compliant address before the mandate. Our guide to the Saudi National Address rule explains the full format.

In the UAE there's no national code, so ask for a building name, a landmark and a map pin.

Layer 4: deposits, COD fees and prepaid discounts

Some carts deserve more than a confirmation. A small payment upfront filters out anyone who isn't serious.

You have three tools, from strongest to softest:

  • Partial deposit. Take 10–20% online, or just the shipping fee, and the rest in cash. EasySell, a COD checkout app, reports 20–40% lower RTO from deposits.
  • COD fee. Charge a small, clearly shown fee for paying cash. Couriers charge you SAR 3–14 per COD parcel in Saudi Arabia, so a fee of a similar size recovers it.
  • Prepaid discount. Offer SAR or AED 5–10 off, or free express, for paying online.

Use deposits for new customers and big carts, not for everyone. A deposit on a SAR 99 first order costs more in lost sales than it saves.

Layer 5: blocklists and COD rules

The last layer decides who sees COD at all. Some shoppers refuse again and again, and you don't need to keep paying for it.

Rules worth setting:

  • Prepay-only for repeat refusers. Flag any phone number with a past refusal and hide COD for it.
  • A COD cap. Above an order value you choose, ask for a deposit or full prepayment.
  • Risky areas and products. If one district or product line refuses far more often, require a deposit there.
  • Duplicate orders. Merge or cancel several COD orders from one number within minutes.

Zid added a setting in December 2025 that hides COD from customers with a history of cancellations. On Shopify and WooCommerce, COD rule apps do the same job.

What to ask your courier

Your courier sees the last mile, so its tools finish what your checkout started. Before you sign, ask:

  • Does it check the Saudi National Address at booking, and what happens if it's missing?
  • Does the driver message or call the shopper before arriving?
  • Can shoppers pay by card at the door? SPL, for example, offers POS terminals and payment links.
  • Does it send you a daily report of refused and undelivered parcels, with a reason for each?
  • Can you change the address or reschedule a parcel that's already out?

The answers decide how many confirmed orders actually turn into cash. For delivery attempts, failed-delivery handling and delivery speed, see our guide to cutting COD return-to-origin. To compare couriers, browse COD logistics providers.

The numbers to track every week

You can't fix what you don't measure. Five numbers tell you whether verification is working:

MetricHow to calculate itWhat good looks like
OTP pass rateVerified COD orders ÷ COD checkouts startedWatch for sudden drops by campaign
Confirmation rateConfirmed orders ÷ COD orders placedNearly all orders confirmed or cancelled before dispatch
Refusal rateRefused parcels ÷ COD parcels shipped6–8% with fast confirmation
COD RTORefused + undelivered ÷ COD parcels shipped8–15% for COD-heavy stores, 3–5% for prepaid
Prepaid switch rateCOD orders paid online after confirmation ÷ COD ordersRising month on month

Split every metric by ad campaign and city. A campaign with a low confirmation rate is buying you people who never meant to pay.

Feed confirmed or delivered orders back to your ad platform where you can, so it learns to find more real buyers.

Worked example: a Dammam fragrance store

Picture a Dammam fragrance store taking 1,000 COD orders a month at SAR 230 each. It ships every order unchecked, and 15% come back refused.

It adds the first three layers: WhatsApp OTP, one-hour WhatsApp confirmation and a required Short Address. Each layer stops a different slice of the bad orders:

Per monthBeforeAfter
COD checkouts1,0001,000
Stopped at OTP040
Cancelled, not confirmed050
Shipped1,000910
Refused at the door150 (15%)60 (6.6%)
Delivered and paid850850
Lost on the 90 stopped orders (SAR 40 ad spend each)SAR 0SAR 3,600
Lost on refusals (SAR 78 each)SAR 11,700SAR 4,680
Total COD lossSAR 11,700SAR 8,280

The 90 stopped orders still cost their ad spend, but never reach a courier. The store delivers the same 850 paid orders and keeps SAR 3,420 a month. It also books 90 fewer courier trips and frees up stock that used to sit in vans.

What does it cost? About 2,000 WhatsApp messages (codes plus confirmations) run roughly SAR 80 in Meta fees. Add an app at around USD 10 a month, and the bill stays near SAR 120.

That's about 28 riyals back for every riyal spent. Plug in your own order value, courier fee and refusal rate:

COD cost calculator

What cash on delivery really costs you, and what moving buyers to prepaid or BNPL is worth.

SAR

Shelf price incl. 15% VAT. VAT is removed before margins.

50%
20%

UAE merchants report 20-35% COD RTO; prepaid target 3-5%.

4%

Confirm COD orders on WhatsApp before dispatch

Reported to cut COD RTO by 10-15 points (Quiqup, 2026).

SAR

KSA via OTO: SAR 3 (Shipa) to 14 (Naqel); Aramex 6.

SAR

Your cost to win an order. A refused parcel burns it. (Estimate)

SAR
SAR
Margin assumptions
SAR
%

% of shelf price. Gateway + platform fees; BNPL contracts vary (est. 2-8%).

SAR
SAR

Monthly cost of COD

SAR 11,000

  • COD fees: SAR 3,200
  • 100 failed COD parcels: SAR 7,800

COD fees plus everything a refused COD parcel burns: both shipping legs, handling and the ad spend.

Cost per delivered order

CODSAR 47.5
PrepaidSAR 33.6

Shipping, payment fees and failed-parcel costs, spread over the orders that arrive.

Contribution margin per month

With your COD mix (50%)SAR 37,07221.1% of net revenue
Without COD (all prepaid)SAR 47,14424.6% of net revenue

What the COD mix costs you: SAR 10,072 / month

Move buyers to prepaid / BNPL

30%

Extra contribution

+SAR 3,022/ month

+SAR 36,259 per year

COD share falls from 50% to 35.0%. Assumes the same orders, now prepaid at prepaid RTO and fees.

Estimates based on published courier fees and RTO benchmarks as of October 2026 (OTO, Quiqup) and our SAR 230 worked example. Ad and return costs are estimates; confirm rates with your courier and payment provider.

Notes for Ramadan and peak seasons

  • Refusals rise around Ramadan. LianLian Global puts them near 25% in that period, so tighten deposits and caps before it starts.
  • Message after sunset. Saudi daytime activity drops sharply in Ramadan, so schedule confirmations and calls for the evening.
  • Plan ahead. Our guide to running an online store during Ramadan covers staffing and delivery windows.

Notes for Salla, Zid and WooCommerce stores

  • Use the built-in rules first. Switch on Zid's cancellation-history filter before you pay for a rules app.
  • Add WhatsApp confirmation through an app. Connect your own WhatsApp Business number, so shoppers see your brand name.
  • Make the Short Address a required field in Saudi checkout settings, and check your courier reads it.

Notes for cross-border sellers

  • Verify harder, because refusals cost more. A refused parcel shipped from abroad rarely makes it back profitably.
  • Hold stock locally. COD works best from a Saudi or UAE 3PL, where refused stock goes straight back on the shelf.
  • Confirm in Arabic. Shoppers trust a message in their own language from a local-looking number.

Verification turns COD from a gamble into a steady source of new customers. Start with OTP and WhatsApp confirmation this week, then add deposits where the data points. More payment guides live in our GCC payments hub.

Frequently asked questions

Yes, as long as you tell shoppers upfront. Add one line at checkout and in your order confirmation saying COD orders ship after WhatsApp confirmation. Shoppers who meant to buy will tap confirm, and the rest were unlikely to accept the parcel anyway.

Sources & further reading

  1. How to reduce your RTO rate in UAE ecommerce — Quiqup
  2. COD risk and localised operations in Middle East ecommerce — LianLian Global
  3. WhatsApp Business Platform pricing — Meta
  4. Saudi National Address for ecommerce — Quiqup
  5. Cash on Delivery Is Dying Faster Than You Think — EasySell
  6. Saudi Arabia e-commerce logistics market — Mordor Intelligence
  7. Cash on delivery without losses — Zid
  8. COD-Verify: WhatsApp OTP for COD orders — Shopify App Store

This guide is for general information only and is not legal, tax or financial advice. Rules and fees change — always confirm with the official source or a licensed advisor.

Maya
Maya

Maya is MiddleEastEcom's lead guide and editor. She researches GCC marketplaces, payments and regulations and turns them into practical playbooks for sellers.

Meet Maya