Why cash on delivery costs more than it looks
In markets such as Egypt, Pakistan, Saudi Arabia and the UAE, cash on delivery is how most shoppers prefer to pay. It lowers the barrier to buying, but it moves the risk to you. A customer can order on impulse, order twice by mistake, give a wrong address, or simply refuse the parcel at the door.
Industry estimates across the Middle East and South Asia put refused, returned or fake COD orders at roughly 10–25% of all orders, and higher in some categories. Each one costs outbound shipping, return shipping, packaging, courier fees and stock that sits in a van instead of on your shelf.
The hidden second cost: your ad data
The standard Meta Pixel fires a Purchase event the moment someone completes checkout, before any cash has changed hands. If a fifth of those orders are refused, Meta is optimizing your campaigns, and building your lookalike audiences, partly from people who never paid.
The result is inflated return on ad spend in Ads Manager, budgets that scale on the wrong signal, and audiences that get worse over time. Fixing fake orders at the warehouse without fixing the data leaves half the problem in place.
The playbook
Confirm every order before it ships
Send each new COD order a WhatsApp message from your own business number with Confirm and Cancel buttons. Whapi tags the Shopify order to match the answer, so accidental, duplicate and fake orders are filtered out before you pay for shipping.
With Whapi · WhatsApp automationHold unconfirmed orders, then follow up
Filter your Shopify order list by the confirmation tag and only fulfil confirmed orders. Set a clear cut-off, for example 24 hours, after which unconfirmed orders get one reminder or a phone call if the basket is large enough to be worth it.
With Whapi · WhatsApp automationTell customers the courier is coming
Many refusals come from customers who forgot they ordered or did not expect the delivery that day. Automatic shipping updates with the tracking link, in the customer’s own language, keep the order top of mind until the courier arrives.
With Whapi · WhatsApp automationOnly report paid orders to Meta
Trackinator holds the Purchase event until a real-world signal confirms the sale, then sends it server-side through Meta’s Conversions API. Choose the trigger that matches your operation: courier delivery, order archived in Shopify, or a tag such as PAID_VERIFIED. Refused and returned orders are never reported, so Meta learns from real buyers.
With Trackinator · Server-side pixel
Answer “where is my order?” before it becomes a refusal
Customers ask on WhatsApp, Instagram and email, sometimes all three. Convo Desk puts every channel in one inbox with the Shopify order beside the conversation, so your team can fix an address or reassure a customer before the courier’s first attempt.
With Convo Desk · Unified inbox + AI
Measure the right numbers
Track your confirmation rate, refusal rate by courier, region and product, and the gap between the revenue Meta reports and the cash you actually collect. When that gap shrinks, your ad budget starts working on real demand.

