You shipped the order. The customer swears they paid. Your eSewa balance says nothing arrived. Now you're stuck deciding whether to send the goods, hold them, or argue over screenshots — and every minute you wait, a paying customer gets annoyed.
This is the "payment not received" dispute, and almost every Nepali shop selling online runs into it. The good news: it's not a payment-gateway problem. It's a reconciliation problem. With a simple, repeatable workflow, you can match every eSewa, Khalti, and bank transfer to the right order with zero guessing.
Why the confusion happens in the first place
In Nepal, a single order can be paid in several ways, and each leaves a different paper trail:
- eSewa / Khalti wallet — instant, but customers often send to your personal number instead of the business account, or screenshot a pending transaction.
- Bank transfer / connectIPS / mobile banking — can take minutes to hours, and the sender's name rarely matches the order name.
- Cash on Delivery (COD) — money arrives days later through the courier's remittance, long after the order is closed.
- QR scan at the counter (POS) — fast, but easy to forget to tag which sale it belonged to.
The dispute is almost never fraud. It's usually a missing link between a rupee amount and an order number. Fix that link and the disputes mostly disappear.
The core idea: every payment needs a reference
Reconciliation works when each payment carries something that ties it back to one specific order. Decide on a reference format and use it everywhere. A simple one:
- Order number like SHP-1042
- Or the customer's phone number if you don't issue order numbers yet
Then ask customers to put that reference in the remarks/purpose field when they pay by eSewa, Khalti, or bank. A short line on your checkout page and order confirmation does the job: "Please write SHP-1042 in remarks when you pay." This one habit removes most of the guesswork before it starts.
A reconciliation workflow you can run daily
Set aside 10–15 minutes, ideally at the same time each day (morning works well, before you start dispatching). Run these steps in order.
- Pull the source records. Open your eSewa merchant statement, Khalti transactions, and bank/mobile-banking ledger for the period. Export to a sheet if you can.
- List your open orders. Put every order awaiting payment confirmation in one place: order number, customer name, phone, and exact NPR amount.
- Match on three things, not one. A real match should agree on amount + reference + timestamp. If the amount matches but the reference is blank, use the phone number or the time the customer said they paid to confirm.
- Mark the status. Tag each order as Paid, Pending, or Mismatch. Only fulfil orders marked Paid against a verified transaction — never against a screenshot alone.
- Handle the mismatches. Wrong amount, money sent to the wrong wallet, or duplicate payment — set these aside and resolve them one by one (more on this below).
- Close the loop on COD. When the courier remits cash, match their remittance report line-by-line to your delivered orders so you know which deliveries you've actually been paid for.
Don't trust screenshots — verify the transaction ID
A payment screenshot proves nothing on its own; it can be edited, or show a transaction that later failed. Always confirm the transaction ID and status in your own merchant dashboard or bank statement. If it's not in your records, it's not paid — politely tell the customer you'll dispatch the moment it lands.
Common mismatches and how to clear them
- Money sent to your personal eSewa, not the business account. It's real money, but it won't show in merchant reports. Keep one clearly labelled business wallet and route all customers there.
- Amount is short by a few rupees. Often the customer covered a different total or skipped delivery charge. Confirm the order total including VAT and delivery before fulfilling.
- Duplicate payment. Nervous customers sometimes pay twice. Spot it during daily reconciliation and refund the extra quickly — fast refunds build trust and prevent public complaints.
- Bank transfer pending overnight. connectIPS and inter-bank transfers can settle the next morning. Mark as Pending, don't cancel, and re-check at your next reconciliation.
Keep it clean for VAT and PAN
Reconciliation isn't only about disputes — it's the backbone of clean books. If you're PAN or VAT-registered, your sales records must agree with the money that actually hit your accounts. Matching every payment to an invoice as you go means that at filing time your VAT return reflects reality, and you're not scrambling to explain unexplained deposits. Record the order number, amount, payment method, and transaction ID against each sale so any line can be traced end to end.
Brace for festival-season volume
During Dashain and Tihar, order volume can spike several times over, and that's exactly when manual matching breaks down and disputes pile up. Two things help: tighten your reference rule before the rush starts, and reconcile twice a day instead of once so backlogs never build. Pre-festival is also the time to confirm your eSewa and Khalti merchant accounts are active and your settlement details are correct — you don't want a settlement issue surfacing on the busiest sales day of the year.
Where a connected system saves you
Doing this by hand works, but it gets heavy as you grow. This is where running your store on a platform that already ties payments to orders pays off. With Saauzi, eSewa, Khalti, and bank payments are linked to the order at checkout, so each order shows a clear paid/pending status and a matching transaction reference — your daily reconciliation becomes a quick review instead of a manual hunt across three different statements.
Your takeaway
Pick one reference format, ask every customer to include it, and spend 10 minutes a day matching amount + reference + timestamp against your real merchant and bank records — never against a screenshot. Do that consistently and "payment not received" stops being an argument and becomes a status you can check in seconds. Start today: add the reference line to your checkout page and run your first reconciliation tomorrow morning.



Comments
Be the first to comment.