eSewa, Khalti and Fonepay at one checkout

Your customers already have these apps on their phones. Here is how each one works through Paymentsnp, what you need from the provider, and how we know a payment really happened.

A woman in a pink sari using her phone

Side by side

All money settles to your own merchant account with that provider. Fees are whatever your provider agreement says.

MethodCustomer pays withWhere they payHow we confirm itMinimum
eSewaeSewa walletOn eSewa's own payment pageSigned reply, then a status check for the exact amountNone set by us
Khalti by IMEKhalti wallet, mobile banking, cardsOn pay.khalti.comKhalti lookup API for the exact amountRs 10 (Khalti's limit)
FonepayQR scan from almost any Nepali banking appScans a QR on Fonepay's pageFonepay's signed return, checked for the exact amountNone set by us
eSewa

eSewa

The customer picks eSewa, goes to eSewa's ePay page and logs in there. We never see their eSewa ID, password or OTP.

When they come back, we check eSewa's signed reply and then ask eSewa directly for the transaction status with the exact amount. Only a completed status for the right amount marks the order paid. If eSewa says it is still pending, we wait and check again.

What you need from the provider

  • An approved eSewa merchant account with ePay access
  • The product code and secret key eSewa gives you
  • Separate test and live credentials (eSewa's UAT first)
eSewa developer information (opens in a new tab)
Khalti

Khalti by IME

Our server starts the payment with your Khalti secret key and gets back a payment page on Khalti's own domain. The customer pays there with their Khalti wallet or any other option Khalti offers them.

Afterwards we look the payment up with Khalti and compare the amount. Khalti does not accept payments under Rs 10, so Khalti is hidden at checkout for smaller amounts. Khalti and IME Pay have merged, so IME Pay customers pay through Khalti.

What you need from the provider

  • An approved Khalti merchant account
  • The live secret key from your Khalti merchant dashboard
  • A test secret key for the Khalti sandbox
Khalti by IME developer information (opens in a new tab)
Fonepay

Fonepay

The customer is sent to Fonepay's page, where a QR is made for this one order. They scan it with their bank's app and approve the payment there.

Fonepay sends the customer back with a signed result, which we check against the order and the exact amount. Fonepay has no status lookup API, so if a customer pays and then closes the page before coming back, we cannot confirm it ourselves. That attempt expires after 30 minutes; check your Fonepay merchant panel before taking another payment for the same order.

What you need from the provider

  • Fonepay merchant web payment access from your bank
  • The merchant code and secret key Fonepay issues
  • Separate test and live configuration
Fonepay developer information (opens in a new tab)
NEPALPAY QR

NEPALPAY QR

NEPALPAY QR is coming soon. You can already save NEPALPAY QR credentials in your workspace, but checkout will not offer it until the acquiring bank's API contract is confirmed.

When it arrives, it will follow the same rule as the others: an order is paid only when the provider gives us reliable proof of the payment. Paymentsnp and NEPALPAY QR are separate things; NEPALPAY QR is NCHL's payment network.

What you need from the provider

  • Merchant onboarding with an acquiring bank
  • API access approved by that bank
  • The credentials the bank issues
NEPALPAY QR developer information (opens in a new tab)
Shoppers and street stalls along a crowded market street in Kathmandu

You decide what shows at checkout

Switch each method on or off per workspace, separately for test and live. A method only appears once its credentials are saved and it is enabled, and your server can limit a single checkout to one method. Saving credentials alone does not switch anything on.

Questions about methods

Which methods are available today?

eSewa, Khalti by IME and Fonepay hosted checkout are available and run on your own merchant credentials, after provider UAT for your account. NEPALPAY QR is coming soon, pending the acquirer API contract.

Can my customer choose the payment method?

Yes. Hosted checkout offers your enabled, ready methods. Your backend can optionally restrict allowed methods for a particular session.

What if a customer pays with one method and then tries another?

Before a second method can start, we ask the first provider what happened. If the first payment went through, the order is closed as paid; if the provider cannot say yet, the customer is asked to wait instead of paying twice.

Where do provider fees appear?

Fees follow your provider agreement. We do not show fee or settlement figures we cannot get reliably, and unknown figures are never shown as zero.