In Indian e-commerce, an order is not revenue until the door opens
What is different about building a store in India is that a placed order is not yet a sale. Cash on delivery is ordinary rather than exceptional, and every refused parcel costs picking, packing, forward freight and return freight while the dashboard quietly records it as a cancellation.
Most Indian stores are built to take an order. Far fewer are built to survive one being refused at the door, and the distance between those two things is where the margin goes. Return to origin is not a courier problem to be handed downstream. It is a checkout, category, pricing and communication problem, and almost all of it is decided before the parcel moves.
A customer orders on a Thursday. The item is picked, packed and handed over on Friday. It travels, is attempted twice, and comes back. The business has paid forward freight, return freight, packaging and the cost of that unit sitting unsellable for the whole round trip. In the admin panel it appears as a cancelled order, filed next to the ones abandoned at checkout, and it is never counted as the loss it is. Stores in this position usually know their conversion rate precisely and cannot say which categories, pin codes or repeat customers are responsible for the refusals.
When this work makes sense
Questions worth asking any supplier
Ask whether the proposal treats cash on delivery as a payment option or as an operating model, because as an option it is a checkbox and as a model it needs confirmation, address quality and reporting.
Ask whether the store will report return to origin by category, pin code and customer, because rules set without that data punish good customers alongside bad ones.
Ask what the plan is for moving customers to prepaid, because a store that switches cash on delivery off in a cash-on-delivery category loses orders it could have kept.
Ask who reconciles your order records against the aggregator's and the courier's remittances, because those three rarely agree and the gap is real money.
Ask how the customer is contacted between order and dispatch, because most refusals are decided in that window and most stores are silent through it.
Deliverables
Cash on delivery configured by rule, category, order value, pin code, customer history, not on or off for everyone
An order confirmation step before dispatch, run over the channel your customers actually reply on
Address and phone checks at checkout, including pin code serviceability against the couriers you use
Prepaid incentives built into checkout so the cheaper path is visibly the better one
UPI and card payment configured so paying now is easier than paying at the door
Return-to-origin reporting by product, category, pin code and repeat refuser, with the real cost attached
Reconciliation between your orders, the aggregator's records and courier remittances
Built with
Process
We begin by pricing one refused order, because until that number exists every later decision is argued from opinion. That means adding picking, packing, forward freight, return freight, the unsellable window and any gateway or aggregator charges that still apply, then holding it against the refusals you already have on record. Most owners have never seen it expressed as a single figure for their own business, and seeing it reorders the project immediately. A store bleeding on refused parcels in two categories has a more valuable problem than its homepage layout.
The standard nine stages, discovery, strategy, UX/UI, development, content and SEO, testing, launch, measurement and continuous improvement, apply to every project. The paragraph above is what differs for this one.
What moves the number
Pricing depends on scope, functionality, integrations and content requirements. These are the factors that change it most:
Three ways to move customers towards prepaid
Prepaid discount at checkout
Fits: Stores with margin to share some of the avoided return cost with the customer who pays now
Limits: You pay it on every prepaid order, including ones that would have prepaid anyway, so price it against the refusals it prevents
Part-payment on cash-on-delivery orders
Fits: Higher-value or made-to-order items, where a small advance makes refusal less casual
Limits: Adds friction at the moment of commitment, and some genuine buyers drop out rather than pay up front
Cash on delivery withdrawn by segment
Fits: Categories, pin codes or customers with a repeated refusal record, once the data supports it
Limits: Blunt if applied widely, and it will occasionally block a good customer whose area has a bad average
Case studies
Nothing is published yet. There is no Indian e-commerce case study on this site, no client names, no refusal figures, no before-and-after claims. Our head office is Road No. 36, Plot No. 1202 & 1215A, 3rd Floor, SL Jubilee, Jubilee Hills, Hyderabad 500033, Telangana. We will publish when a client permits us to name them and the outcome can be evidenced.
MBGDesk operates from 4 offices in India, United States, United Kingdom, United Arab Emirates. We hold no industry certifications and do not imply otherwise.
Frequently asked questions
Should we just stop offering cash on delivery?
In most Indian categories that costs more than it saves. Removing it outright in a category that depends on it removes orders rather than losses. The better question is which orders should be allowed to use it, and that is answerable from your own refusal record once you keep one by category, area and customer.
What actually reduces refusals?
A confirmation step before dispatch does most of the work, because it catches orders placed impulsively or by someone who will not be there. After that: accurate addresses and phone numbers at checkout, realistic delivery expectations on the product page, and rules that stop offering cash on delivery to repeat refusers.
Why does a refused order not show as a loss in our reports?
Because most platforms record it as a cancellation, the same label they give an order abandoned before you spent anything. One cost you nothing; the other cost two freight legs and a stretch of unsellable stock. Separating them and attaching the real cost is the first reporting change worth making.
Can we charge a delivery fee on cash-on-delivery orders?
You can, but treat it as a signal rather than cost recovery. A modest fee tilts customers towards prepaid without feeling punitive. Setting it high enough to genuinely cover a refused parcel usually pushes the order away altogether, which is why a small fee paired with a prepaid incentive works better.
Does UPI change any of this?
It changes what prepaid feels like. Paying at checkout used to mean entering card details on a phone, which was reason enough to choose cash instead. UPI removes most of that friction, which is why prepaid nudges work better now than they did. It does not remove customers who prefer to see the goods first.
How long should we keep trying to deliver before giving up?
That depends on the value of the item against the cost of each attempt, which your own numbers can answer and a generic rule cannot. What matters more is what happens between attempts: a second attempt with no contact is usually wasted, while a message or call that reschedules converts many near-refusals.
Do we need our own store if we already sell on marketplaces?
Only if you want the customer relationship and the margin with it. The trade-off is that the marketplace absorbed much of the refusal problem for you, and on your own store it becomes visible and yours. Go in knowing which costs you are taking back along with the control.
Services that connect to this
Talk to us about this
Tell us what you are trying to build and we will come back with scope, approach and an estimate.