The customer paid less than the total. How to tell a bank fee from a rounding from a quiet renegotiation, and what to say in each case without losing them.
Sailo team13 min read
The order was ₹2,450. The credit sitting in your account says ₹2,444. Six rupees missing, a parcel packed and taped, and a customer who almost certainly thinks they've paid you in full.
Work out the size of the gap before you work out what to say. Under about 1% of the order, it's a fee, a rounding or a fat finger, and you ship. Above that, it's a decision, and the decision has to be a written rule you apply to everybody rather than a judgement you make at eleven at night about whether this particular person seems nice. Sellers who improvise this lose money slowly and lose customers quickly.
There's a second thing to check before either of those, and it takes four seconds: look at the time on the credit.
A shortfall that lands at 23:51 is very often not a shortfall at all. It's the first half of a payment that hit a daily transfer limit, and the balance is queued in someone's head for one minute past midnight.
Indian banking apps carry per-day caps that most people never adjust, and UPI has its own daily ceiling per app and per bank. A buyer sending ₹2,450 rarely hits one. A buyer sending ₹48,000 for a bulk order hits one constantly, and they will not tell you, because from their side it looks like a normal thing their bank does.
So before you type anything: is the payment short by an amount that looks like a fee, or short by an amount that looks like "the rest of it"? ₹2,444 out of ₹2,450 is a fee. ₹25,000 out of ₹48,000 is a limit. Those two situations need completely different messages and sending the wrong one makes you look either careless or accusatory.
Almost every partial payment you'll ever see is one of these. Identifying which takes about ten seconds once you know the list.
1. The rail took a cut. This is the most common cause of small shortfalls and the least understood. In India, the RBI removed charges on online NEFT for savings account holders from January 2020, and RTGS online charges before that, so those two usually arrive whole. IMPS is a different story and many banks still charge per transaction by slab. UPI person-to-person and most person-to-merchant payments carry nothing. If your buyers are on IMPS and you're seeing consistent small gaps, that's your answer.
2. An international correspondent bank helped itself. On any inbound wire from abroad, one or two banks in the middle can deduct their own fees unless the sender explicitly chose to pay all charges. A $200 payment turning up as ₹16,300 instead of ₹16,700 is completely ordinary. The sender genuinely does not know it happened.
3. The buyer rounded. ₹2,450 becomes ₹2,400. Not malice, just a human typing what feels like the number. This is more common with odd totals, which is annoying, because odd totals are also the thing that makes reconciliation easy.
4. They removed the delivery fee. ₹2,450 including ₹150 delivery arrives as ₹2,300. This is not an error. It's a negotiation conducted without words, and if you absorb it silently once you'll absorb it forever, because you've now taught them the price.
5. They applied a discount you didn't give them. A code they found, a price from a post three months old, a friend-of-a-friend rate someone promised. Usually honest, occasionally chancy, always worth answering in one clear message.
6. A limit, a typo, or a bank that split it. See above. Look at the time.
| Gap | Almost always | What you do |
|---|---|---|
| Under 1% of the total | Bank charge or rounding | Ship. Don't mention it |
| Exactly your delivery fee | Deliberate | Answer once, in writing, before you ship |
| Exactly 10% or 15% | A discount they believe in | Ask which offer they used |
| A round number well below the total | Daily limit or a split they haven't explained | Ask, warmly, same day |
| Under ₹100 on a repeat customer | Anything | Ship, add it to the next order or forget it |
| Anything on a first order over ₹20,000 | Worth a phone call | Don't ship until it's settled |
Pick a threshold in rupees, not in feelings. Something like: under ₹50, or under 1% of the order, whichever is larger, I ship without comment.
Below that line, chasing costs more than the money. Two messages, the mental load of remembering, the risk of a customer who feels nickel-and-dimed on a ₹6 discrepancy. It's a bad trade every single time.
Above the line, you say something. Once, clearly, before the parcel moves.
The reason to fix the number in advance is that you will not be a reasonable person about this at 11pm on a Tuesday when it's the fourth thing that's gone slightly wrong. A rule you set on a calm morning is a better decision-maker than you are in the moment. Write it on the same page as your reference format.
Say you take sixty bank transfers a month and roughly a third come in ₹5 or ₹6 short. That's about ₹110 a month. Nothing.
Now say you sell a ₹349 digital pattern and forty buyers a month arrive ₹5 short. Same absolute gap, and it's 1.4% of that product's revenue, which is not nothing at all, and it compounds silently for years because no single instance is ever worth mentioning.
Two ways to deal with it, and only one of them works.
The one that doesn't work is asking buyers to cover the fee. "Please add ₹5 to cover transfer charges" gets ignored by most people and read as petty by the rest. You'll spend more in goodwill than you recover.
The one that works is putting it in the price. If your product is ₹349 and you're routinely receiving ₹344, your product is ₹355. Nobody has ever declined to buy something because it cost ₹355 instead of ₹349. This is the same arithmetic that decides whether card processing is worth it, and the full version of it is in how payment fees eat a small order, where the fixed fee per transaction does far more damage than the percentage.
One email on pricing, photographs, delivery and getting paid. No pitch, no filler.
Three messages. Adapt the numbers, don't adapt the tone.
For a gap you think is a bank charge, on an order you're shipping anyway: say nothing. The message you don't send is the highest-return message in this article.
For a genuine shortfall, first-time buyer:
Thanks Aarti, I've got ₹2,300. The total was ₹2,450 including ₹150 delivery to Kothrud, so there's ₹150 outstanding. Send it on the same reference SL1042 and I'll dispatch today.
Three facts and an action. No "I think", no "it seems", no apology for asking. The word "outstanding" does a lot of work because it's neutral. "You underpaid" is a sentence about them, and "there's ₹150 outstanding" is a sentence about the order.
For a shortfall that's exactly the delivery fee:
Got ₹2,300, thanks. Delivery to Kothrud is ₹150 on top, which is what the courier charges me, so the total's ₹2,450. Once the ₹150 lands I'll send it out today.
"Which is what the courier charges me" is the entire message. A buyer will argue with a policy and will not argue with a cost you're passing on. Say it once. Do not say it twice, and do not ship until it's settled, because the version of you who absorbs delivery fees quietly ends up absorbing them on every order for the next two years.
For a large gap that looks like a limit:
Hi, ₹25,000 has landed against the ₹48,000 order. Guessing your app hit a daily limit? No rush, send the rest whenever it lets you and I'll get it packed.
You've handed them the excuse, which means they don't have to be embarrassed, which means they reply. If it wasn't a limit, they'll tell you what it actually was, and you've lost nothing.
None of these should ever be sent about a payment you haven't personally seen in your own banking app. "The buyer says they sent it" and "the money is here" are separate facts, and the difference between them is the subject of what to say when a buyer says they paid.
Do not ship first and sort it out after. That's the whole rule, and it's the one people break.
Once the parcel is with the courier, your position changes completely. You're now asking someone to send money for something they already have, which is a request people are extraordinarily good at forgetting to action. Recovery rates on a balance chased after dispatch are terrible, and every seller who's done it will tell you the same thing.
The sequence is: see the credit, size the gap, apply your rule, resolve it, then pack. Not: pack, ship, message, hope.
The exception is a repeat customer. If someone has bought from you five times and turns up ₹200 short, ship it and add the ₹200 to their next order. You'll get it, and you've bought loyalty at a price you'd never get anywhere else.
Someone sends ₹2,500 instead of ₹2,450. Or ₹4,900 because they paid twice.
Send it back the way it came in, quickly, to the same account it came from. Not to a different account number they message you afterwards. Not to a UPI ID that isn't the one that paid. Not to a friend's account because theirs is "having an issue". That request is the exact shape of one of the most common small-seller scams, and it works precisely because returning an overpayment feels like the obviously generous thing to do.
For a genuine small overpayment, offer the choice: "You've sent ₹50 extra. Want it back, or shall I knock it off your next order?" About half say keep it, which is the cheapest loyalty you'll ever buy. The mechanics of actually sending money back on a rail where nobody reverses anything for you are in refunding on a manual payment rail.
Record the amount that arrived, not the amount you invoiced. Two different numbers that must both exist.
For a shipped order with a small shortfall, the difference is a cost, not a lost sale. Bank charges if that's what it was. A discount if you chose to let it go. Either way it belongs in your records rather than being quietly forgotten, because a year of quietly forgotten ₹6 gaps is a line your accountant will ask about and you won't be able to explain.
For an order you didn't ship, keep the money against the customer's name until it's resolved. An unmatched credit is a question, not revenue.
Meera sells hand block-printed kurtas from Kothrud. ₹2,450 for a standard kurta, ₹150 delivery within Maharashtra, ₹250 outside it. About seventy orders a month, roughly two-thirds by UPI and the rest by IMPS or NEFT.
For her first year, short payments were her single biggest source of Sunday-night stress. Not because they were large, but because each one was a fresh decision. Sometimes she chased ₹150. Sometimes she absorbed ₹400 because the buyer had been kind in the DMs. Two customers worked out that if they just didn't pay the delivery fee, she'd send it anyway.
She fixed it with three things and a piece of paper.
The threshold. Under ₹50, ship, say nothing, record it as a bank charge. Above ₹50, one message before anything is packed. She has not deviated in fourteen months.
The delivery line, before the price. Her shop page now reads "₹2,450 plus ₹150 delivery in Maharashtra, ₹250 elsewhere" rather than showing a combined total. Shortfalls that exactly matched the delivery fee dropped to almost none, because the buyer now sees delivery as a separate thing being paid to a courier rather than a padding on her price.
Rounding her own totals up. She moved from ₹2,450 to ₹2,499. Buyers who used to round down to ₹2,400 now round up to ₹2,500. She estimates it's worth more than the ₹49 because the direction of the rounding flipped.
The number that surprised her: across seventy orders a month, she was writing off around ₹900 a month in small gaps before any of this. That was more than her entire monthly cost of running the shop, and she'd never once written it down because no individual instance was worth writing down.
She still absorbs the ₹6 IMPS gaps without comment. That was never the problem.
There's no partial payment status. An order is unpaid, pending, paid or refunded, and if ₹2,300 has arrived against a ₹2,450 order there is no state that describes that. You mark it paid when you've decided it's settled, and until then it stays pending, which means "the buyer says they've paid" rather than "the money is here".
That's a genuine limitation, not a quibble. If you take a lot of split or short payments, the outstanding balance lives in your head or your notebook, not in your shop admin, and you should build the habit accordingly.
Sailo also can't see your bank account and never will. It doesn't import statements, doesn't match credits, and has no connection to any Indian bank or UPI app. It captures the reference the buyer types, shows it next to the order, and waits for you. It charges nothing on bank transfer because it never handles the money, which is the same fact stated from the other end. The daily habit that makes all of this take eight minutes instead of an evening is in how to know a bank transfer actually arrived, and the wider question of which rail to be on at all is answered in how to take payment as a small seller.
Pick the number. Under ₹50, or under 1%, or whatever fits your prices, and write it on the same note as your reference format so you see both at once.
Then look at your last twenty orders and add up every gap you absorbed without noticing. Do it properly, with the actual credits, not from memory. If that total is bigger than you expected, and it usually is, the fix isn't chasing harder. It's adding the difference to your prices this afternoon and never thinking about ₹6 again.
Written by
Sailo team
One link, your whole shop.
One email on pricing, photographs, delivery and getting paid. No pitch, no filler.
Sailo just gives it a front door — so people can browse, compare and see prices before they message you.
Get your linkFree while in beta · No card required