How to collect school fees online with eSewa and Khalti

Updated 7 min read

Most parents in Nepal already pay bills from eSewa or Khalti. Letting them pay school fees the same way saves a trip to the school and a queue at the counter, but only if every payment reaches the school's account, is matched to the right student, and comes with a receipt. Here is how to set it up properly.

Why not just share a wallet number?

Many schools start by asking parents to send money to a staff member's or the school's wallet and post a screenshot. It works until it does not: screenshots can be edited, payments arrive without a student's name, and the accountant spends the evening matching transfers to families.

  • Nothing ties a transfer to a student automatically
  • A screenshot is not proof that money arrived
  • Personal wallets mix school money with someone's own
  • No receipt is issued unless someone writes one

1. Open merchant accounts in the school's name

A merchant account lets a website or app take payments that land in the organisation's own account, with a record of each one. Apply with eSewa and Khalti as a business: each asks for the school's registration and tax details and a bank account in the school's name. Requirements and fees change, so check each provider's current merchant terms before you apply.

Offering both is worth the paperwork. Families usually have at least one of the two, and a parent who cannot pay the way they are used to will come to the counter instead.

2. Get test keys first, then live keys

Both providers give merchants a test (sandbox) environment as well as live credentials. Use the test keys to make a few payments end to end before any real money moves: from the parent's screen, through the wallet, back to your system and onto the student's fee record.

Keep live keys like passwords. Only the person setting up payments should handle them, and they should never be sent over chat.

3. Verify every payment with the provider

The browser telling your system 'payment successful' is not enough; that message can be faked. A proper integration asks eSewa or Khalti directly whether the payment went through, for how much, and only then marks the installment paid.

This one step is what makes online fees safe to trust without checking a bank statement line by line.

4. Tie each payment to a student and an installment

Parents should pay from the student's own fee screen, where the amount due is already known, rather than typing an amount into a wallet. Each payment is then recorded against the right student and installment, and part payments reduce the balance correctly.

  • Parent pays

    Wallet number and screenshots
    Types an amount, adds a remark
    Integrated online payment
    Pays the amount due from the student's fee screen
  • School confirms

    Wallet number and screenshots
    Checks a screenshot or statement
    Integrated online payment
    System checks with eSewa or Khalti automatically
  • Ledger updated

    Wallet number and screenshots
    Typed in by hand later
    Integrated online payment
    At once, against the right installment
  • Receipt

    Wallet number and screenshots
    Written or typed by staff
    Integrated online payment
    Issued automatically as a PDF

5. Tell parents, and keep the counter open

Announce online payment with a notice that shows exactly where to pay, and keep cash and bank payments available; some families will always prefer them. Every payment, whichever way it came, belongs in the same ledger so a student's balance is never split across systems.

Doing it with SchoolEasy

In SchoolEasy, an administrator pastes the school's own eSewa and Khalti merchant keys in Settings, tests them in sandbox mode and switches each gateway on. Parents pay from their child's fee screen on the web or in the Android app; each payment is confirmed with the provider before it reaches the ledger, and the receipt is ready to download. The money goes straight to the school's account: SchoolEasy never holds it and takes no cut. Schools in India use Razorpay the same way.

Frequently asked questions

Do schools need a merchant account to take eSewa or Khalti payments?

To take payments that are recorded and verified automatically, yes: a merchant account in the school's name. Sending money to a personal wallet works, but nothing ties the payment to a student or proves it arrived.

Are there fees for taking payments online?

Payment providers charge merchants their own fees, which vary by provider and agreement. Check eSewa's and Khalti's current merchant terms.

Can parents pay part of an installment online?

With an integrated system, yes: the payment is recorded against the installment and the remaining balance stays due.

Let SchoolEasy do the paperwork

Start on the Free plan with no card, or book a demo and see this done with your own school's records.

  • Free plan, no card needed
  • Set up in an afternoon
  • Role-based access for every account