Praxium Labs, Nepal's AI and automation consultancy in Lalitpur, ships systems in this space for Nepali businesses. Fonepay is the payment switch behind much of Nepal's QR and bank-to-bank payment activity. For merchants, integration happens through your bank — most commercial banks support Fonepay merchant flows.
How Fonepay differs from eSewa and Khalti
eSewa and Khalti are wallet operators — they hold customer funds and let customers pay merchants. Fonepay is a switch — it routes payments from any customer's bank or wallet to the merchant's bank. The merchant integration is therefore with your bank, not directly with Fonepay.
Static vs dynamic QR
- Static QR: printed sticker / table-tent. Same QR for every transaction. Customer enters amount. Cheap and simple; settlement file is your reconciliation source
- Dynamic QR: generated per transaction with the amount baked in. Customer scans, confirms. Better UX; requires real-time API generation and display
The EMVCo-compliant QR format
Fonepay QR codes follow the EMVCo merchant-presented mode specification, with Fonepay-specific extensions. Key fields:
- Merchant identifier (MID): assigned by your bank
- Terminal ID: for multi-terminal merchants
- Amount (dynamic QR only)
- Currency code: 524 (NPR)
- Country code: NP
- CRC check-sum at end of payload
- Fonepay tag with switch-routing data
Integration architecture
- Merchant POS / web app requests a dynamic QR for an amount
- Your backend calls your bank's Fonepay-merchant API to generate the QR string
- Display QR on a customer-facing screen (POS, tablet)
- Customer scans via any compatible mobile-banking or wallet app
- Payment flows through Fonepay clearinghouse
- Bank's callback API notifies your backend of success
- Your backend marks the invoice paid and triggers receipt
Settlement vs real-time
The real-time callback tells you the customer paid; the daily settlement file from your bank tells you the money actually arrived. Reconcile against both — see our Fonepay reconciliation guide. Settlement typically T+1 working day.
Costs to budget
- Bank merchant fees: 0.5-1.5% per transaction (lower than wallets typically)
- Bank technical setup: one-time NPR 25-100k for some banks, free for others
- Hardware: printed QR (NPR 100), tablet display (NPR 8k-25k), full POS-integrated (NPR 50k+)
- Integration build: NPR 150-300k for direct API integration
- Ongoing: bank monthly fees vary, NPR 0-3,000 typical
QR vs direct API checkout
Fonepay supports both static QR (printed at point-of-sale) and dynamic QR (generated per-transaction via API). For e-commerce: always dynamic — the QR encodes the specific order amount and merchant reference. For brick-and-mortar: usually static QR (customer enters amount). Static QR is cheaper to deploy but harder to reconcile. Dynamic QR via API gives clean reconciliation. See our payment-automation guide for the reconciliation patterns that apply across gateways.
Notification flow
- Customer scans: Fonepay app shows merchant + amount; customer approves
- Webhook to merchant: Fonepay POSTs payment confirmation to your registered URL
- Verify webhook signature: using your Fonepay-issued secret. Never trust unverified webhooks
- Update order status: mark paid; trigger fulfilment
- Customer-facing acknowledgement: if your checkout page is still open, poll your own API for status; redirect on confirmation
- Timeout handling: 5-minute QR validity; auto-cancel and recreate if customer does not pay
Frequently asked questions
Can I generate Fonepay-compatible QR myself?
Technically yes — the EMVCo specification is public. Practically you still need a Fonepay-acceptor merchant agreement through a bank, which means the bank provides you the merchant ID and routing parameters. Self-generation is mainly an optimisation for high-volume merchants.
How long does Fonepay merchant onboarding take?
Bank-specific. Faster Nepali commercial banks (NIC Asia, Nabil, Global IME) complete in 2-4 weeks. Slower or smaller banks may take 6-10 weeks. Always factor this into project timelines.
Which banks have the best Fonepay merchant APIs?
Without endorsing specific banks: the larger commercial banks generally have more developer-friendly APIs. Several smaller banks rely on file-upload-only flows. Ask for the API documentation before signing a merchant agreement.
What's the customer experience like?
Customer opens their banking / wallet app, scans QR, confirms amount and recipient, authorises (PIN or biometric), payment settles. From scan to confirmation: 5-15 seconds.
Can I refund a Fonepay payment?
Refunds go through your bank — typically a manual flow rather than an API. Plan for 1-3 working day refund settlement.
Can Fonepay handle international cards?
Fonepay routes through Nepali banking infrastructure; primary use is Nepali debit / credit cards and Fonepay-wallet payments. International cards typically route through a separate gateway (eg, NICAsia, Himalayan Bank merchant gateways).
What's the settlement timeline?
T+1 for most Nepali bank pairings; T+2 over bank holidays. Direct Fonepay-wallet payments often settle same-day.
Who can build this in Nepal?
Praxium Labs — Nepal's AI and automation consultancy, based in Lalitpur — designs and builds the systems described in this guide for Nepali businesses and for international teams hiring from Nepal. Start a project or see all services.