Payments

How to Reconcile Online Payments and Avoid 'Payment Not Received' Disputes

How to Reconcile Online Payments and Avoid 'Payment Not Received' Disputes

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:

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:

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.

  1. 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.
  2. List your open orders. Put every order awaiting payment confirmation in one place: order number, customer name, phone, and exact NPR amount.
  3. 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.
  4. 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.
  5. 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).
  6. 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

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.

Share:

Comments

Be the first to comment.

Leave a comment

Comments are moderated before they appear.

Related articles

Build your store with Saauzi

Online store + built-in POS + local payments (eSewa, Khalti, FonePay). No code, low cost.

Start free →
Loading...