Accepting digital payments is only half the job. Knowing exactly what came in, when it settled, and making sure it matches your books - that's where most Nepali merchants struggle. This guide covers practical payment tracking and reconciliation.
Why Reconciliation Matters
Poor payment tracking leads to:
- Under-reporting income (tax exposure)
- Over-fulfilling orders (someone pays twice or payment not received)
- Disputes with customers ("I paid but you said I didn't")
- Cash flow surprises ("Expected NPR 50,000 this month but only received 35,000")
With multiple payment providers (Khalti, eSewa, ConnectIPS), each has its own dashboard, its own settlement cycles, and its own transaction ID format. Reconciling across three providers manually is painful. Getting it into a single place makes everything easier.
The PayBridgeNP Dashboard
All transactions across every provider flow into a single view in your PayBridgeNP dashboard. The track payments feature gives you:
Transaction list: Every payment, regardless of whether it came via Khalti, eSewa, ConnectIPS, payment link, or direct API - all in one table.
Filters:
- Date range
- Status (completed, pending, failed, refunded)
- Provider (Khalti, eSewa, ConnectIPS)
- Amount range
- Customer email/phone
- Order ID / metadata
Search: Full-text search across transaction IDs, customer names, emails, and order metadata.
Exporting Transaction Data
CSV Export
For monthly accounting, export a CSV:
- In dashboard, set your date range
- Click Export > CSV
- Import to Excel, Google Sheets, or your accounting software
The CSV includes: date, payment ID, provider, amount, status, customer, order ID, fees, net settled.
API Export
For programmatic access:
const payments = await paybridge.payments.list({
from: "2025-04-01",
to: "2025-04-30",
status: "completed",
limit: 100,
});
// payments.data is an array of Payment objects
// payments.hasMore indicates pagination
Understanding Settlement
A payment being "completed" doesn't mean the money is in your bank yet. Here's the flow:
- Payment completed - Khalti/eSewa confirms the transaction
- Funds held - PayBridgeNP receives the funds from the provider
- Settlement batch - Once a day (or on a schedule you configure), PayBridgeNP batches settlements
- Bank credit - Your bank account is credited (T+1 or T+2 business days)
In your dashboard, the Payouts section shows:
- Upcoming settlements (funds collected, not yet paid out)
- Completed settlements (in your bank, with bank reference)
- Settlement schedule
Daily Reconciliation Habit
For growing businesses, a 5-minute daily reconciliation catches problems early:
- Open PayBridgeNP dashboard
- Filter to today's completed transactions
- Cross-reference against orders fulfilled in your system
- Flag any mismatches
A mismatch usually means:
- A webhook failed and an order wasn't marked as paid
- A payment was received but the order ID is wrong (customer error)
- A duplicate payment (charge card twice - issue a refund immediately)
Connecting to Accounting Software
Manual (Excel/Google Sheets)
Export monthly CSVs. Keep a master sheet with columns: Date, PayBridgeNP ID, Amount, Provider, Customer, Order ID, Fees, Net. This gives you everything an accountant needs.
Hamrokhata / Tally
Nepal's most commonly used accounting software can import CSV transaction records. Map the fields from your PayBridgeNP export to your chart of accounts.
Format for Tally import:
Date, Ledger, Debit, Credit, Narration
2025-04-15, Khalti Receipts, 0, 1500, Payment from Ram Sharma - ORD-001
Custom Integration
Use the PayBridgeNP Webhooks API to push every transaction in real time to your accounting system:
case "payment.succeeded": {
await accountingSystem.createEntry({
date: event.data.createdAt,
debit: "Digital Receivables",
credit: "Sales Revenue",
amount: event.data.amount / 100, // Convert paisa to NPR
reference: event.data.id,
description: `${event.data.provider} payment - ${event.data.metadata.orderId}`,
});
break;
}
case "payment.refunded": {
await accountingSystem.createEntry({
date: event.data.createdAt,
debit: "Sales Returns",
credit: "Digital Receivables",
amount: event.data.amount / 100,
reference: event.data.id,
});
break;
}
Understanding Your Fee Statements
At the end of each month, PayBridgeNP provides a fee statement showing:
- Total transaction volume
- Number of transactions
- Gross fees charged
- Any adjustments or credits
Keep these for your tax records. Payment gateway fees are a business expense.
Customer Disputes: When "I Already Paid" Happens
Every merchant in Nepal has heard "I already paid but you haven't processed my order."
With PayBridgeNP:
- Go to the customer's email in your dashboard (or search their phone number)
- See all transactions associated with them
- Find the disputed payment
- Check status: Is it completed? Did the webhook fire? Is the order marked paid?
Usually the issue is one of:
- Webhook failed: Payment completed but your system didn't receive the notification. Fix: manually trigger fulfillment, then check your webhook logs to diagnose the failure.
- Customer paid wrong link: They paid an old or wrong payment link. The money is there, just attached to the wrong order.
- Payment is still pending: The customer initiated but didn't complete. Not a real payment yet.
Having all transactions in one dashboard makes resolving these disputes fast - you can give the customer a definitive answer in under a minute.
Year-End Tax Preparation
For your annual tax filing in Nepal, you'll need to report digital payment income. Export the full year's transactions from PayBridgeNP and provide to your CA:
- Total revenue by month
- Total Khalti/eSewa/ConnectIPS receipts
- Total refunds issued
- Total gateway fees paid (deductible expense)
Log in to your dashboard to access your transaction history, payouts, and exports.