Payment Gateway Integration in Nepal - eSewa, Khalti, Stripe & International Payments
Quick answer
WebApp Nepal integrates eSewa, Khalti, ConnectIPS, Fonepay, Stripe and PayPal, verifying every payment on the server, so orders are only confirmed when money has actually arrived.
A Kathmandu e-commerce entrepreneur launched her artisan jewellery store with a WordPress site and a "pay on delivery" option because no one had told her how to integrate eSewa properly. Sales were limited to customers within her delivery radius - roughly fifteen kilometres of Kathmandu ring road. A buyer in Pokhara who found her products on Instagram had no way to pay. A Nepali customer in Dubai, sending gifts to family back home, could not complete a purchase. An Australian tourist who had admired her work at Ason market and wanted to order more after returning home had nowhere to go. The product was excellent. The payment system was the ceiling. Six months after integrating eSewa, Khalti, and Stripe for international card payments, her order geography spanned three continents. The product had not changed. The payment infrastructure had.
Payment gateway integration is one of the most technically exacting parts of web development in Nepal - and one of the most frequently done wrong. A payment integration that passes casual testing but fails to verify webhook confirmation can mark orders as paid when they are not. An eSewa integration that uses the deprecated v1 API instead of the current HMAC-SHA256 signed v2 API is a security liability. A Khalti integration without idempotency key handling creates double-charge risks when network timeouts cause form resubmissions. An international payment setup that has not been tested against Nepal's banking sector's international card acceptance rates will confuse customers with silent declines. WebApp Nepal builds payment integrations that handle these edge cases correctly - not because we found them in a tutorial, but because we have encountered them in production and engineered around them.
Nepal Payment Gateways
eSewa Payment Integration
eSewa is Nepal's largest digital wallet and payment gateway, with over six million registered users and acceptance at hundreds of thousands of merchants across the country. For any Nepal e-commerce website, fee collection platform, booking system, or donation portal, eSewa integration is typically the first payment requirement. WebApp Nepal implements eSewa using the current production API - the v2 HMAC-SHA256 signed request standard that eSewa requires for all new integrations. The HMAC signature is constructed from the transaction UUID, total amount, and product code using the merchant's secret key, preventing request tampering between the client browser and eSewa's servers. Post-payment verification uses eSewa's transaction status verification endpoint with the same signature validation - not the redirect URL parameters alone, which can be spoofed. eSewa sandbox testing is conducted with eSewa's test credentials before production API keys are provisioned, and the full payment flow - initiation, redirect, callback, verification, and order status update - is tested end-to-end before launch.
Khalti Payment Integration
Khalti is Nepal's second-largest digital payment platform, with a strong user base among younger urban consumers and a particularly high mobile wallet activation rate in the 18 to 35 demographic. Khalti's checkout API uses an OAuth2-based payment initiation flow: a server-side payment initiation request returns a payment URL, the customer completes payment on Khalti's hosted checkout, and a post-payment webhook from Khalti's servers - not just a redirect from the customer's browser - confirms payment completion to the merchant's backend. WebApp Nepal implements Khalti integration with correct webhook endpoint handling, including the lookup API call that verifies payment status independently of the redirect, and idempotency key management that prevents duplicate order processing when network conditions cause payment initiation to be retried. Khalti integration is tested in Khalti's sandbox environment with test wallet credentials before production deployment.
ConnectIPS Payment Integration
ConnectIPS is Nepal Clearing House Limited's (NCHL) interbank payment platform, enabling direct bank account-to-bank account transfers from any of Nepal's connected commercial banks. ConnectIPS is appropriate for higher-value B2B transactions, institutional fee collection, and use cases where digital wallet balance limits are a constraint - because ConnectIPS draws directly from bank accounts with limits that match the customer's bank account balance rather than a topped-up wallet. WebApp Nepal integrates ConnectIPS for platforms where the transaction values or customer profiles warrant it: cooperative membership fee collection, school tuition fee payment for high-fee institutions, construction and supply payment portals, and B2B trade payment platforms. ConnectIPS integration uses NCHL's merchant API with the required HMAC signing and merchant registration credentials issued by NCHL.
IME Pay Integration
IME Pay is operated by IME Digital Solution, a subsidiary of the IME Group, one of Nepal's largest remittance networks. IME Pay's integration into remittance-adjacent business contexts - money transfer platforms, fee collection for services used by migrant worker communities, and retail payments in areas with strong IME agent network presence - makes it a relevant payment option for specific Nepal business categories. WebApp Nepal integrates IME Pay for clients where IME Pay's user base meaningfully overlaps with their customer profile, particularly businesses serving communities with high outbound migration to Gulf countries and Malaysia where IME's remittance infrastructure creates strong brand familiarity.
Fonepay Network Integration
Fonepay is Nepal's largest QR payment network, interoperable across banks and wallets including NMB Bank, Global IME, Nabil Bank, Mega Bank, and others. Unlike wallet-specific integrations, a single Fonepay QR code or API integration allows customers to pay from multiple bank apps and wallets that are Fonepay-connected. For in-person payment at physical premises, Fonepay QR codes are standard. For web and app integrations, Fonepay's merchant API enables online payment acceptance with the same interoperability. WebApp Nepal integrates Fonepay for clients who want a single QR/API integration that reaches across the full Fonepay member network rather than requiring separate integrations for each bank or wallet.
Bank Transfer and Manual Payment Handling
Not every Nepal payment is digital wallet or gateway-processed. Many B2B transactions, large consumer purchases, and payments from older demographic segments still happen via bank transfer - NEFT, RTGS, or cheque deposit - with manual verification by the merchant. WebApp Nepal builds bank transfer payment flows for platforms where this is required: a payment instructions page with account details, a payment reference code generation system that the customer includes in their transfer remark, an admin dashboard where staff mark transfers as verified against reference codes, and automated order status updates when verification is confirmed. For cooperatives, NGOs, and institutional clients receiving membership fees or donations, this manual verification workflow is often as important as the digital gateway integrations.
International Payment Gateways
Stripe Payment Integration
Stripe is the international payment gateway of choice for Nepal businesses targeting international customers - tourists booking trekking packages, diaspora Nepalis purchasing from abroad, international donors contributing to NGOs, and export-oriented e-commerce businesses. Stripe accepts Visa, Mastercard, American Express, and a range of local card networks, and supports Apple Pay and Google Pay on mobile. Nepal businesses can accept Stripe payments with a foreign bank account or through a Stripe account registered in an eligible country - the specific setup depends on the business's registration and banking structure, and WebApp Nepal advises on the appropriate configuration for each client's situation. Stripe's integration uses the Stripe.js and Stripe Elements frontend library for PCI-compliant card data handling (card numbers never touch the merchant's server), with server-side payment intent creation using the Stripe PHP SDK or Node.js SDK, and webhook handling for payment confirmation, refund processing, and dispute notification. Stripe's test mode enables comprehensive pre-launch testing including declined card scenarios, 3D Secure authentication flows, and webhook delivery simulation.
PayPal Payment Integration
PayPal remains relevant for Nepal businesses targeting international markets - particularly trekking agencies, cultural tour operators, and artisan product sellers - because PayPal's buyer protection and brand recognition reduce international purchase hesitation in ways that newer payment methods do not yet match for certain demographics. PayPal's Smart Payment Buttons integration renders PayPal, Venmo (for US buyers), and card payment options in a single checkout button using PayPal's JavaScript SDK, with server-side order creation and capture via PayPal's Orders API v2. WebApp Nepal implements PayPal with server-side order verification - the capture API call that confirms payment on the server side before order fulfilment - rather than relying on client-side redirect confirmation, which can be manipulated. PayPal sandbox testing covers the full buyer flow including the PayPal One Touch experience on mobile browsers.
Razorpay for Nepal-India Cross-Border Commerce
For Nepal businesses with significant Indian customer bases - Terai region e-commerce stores, cultural and pilgrimage tourism operators running circuits that include both Nepal and India, and B2B businesses in Nepal's India-border trade corridor - Razorpay provides access to Indian payment methods: UPI, NetBanking, Indian debit and credit cards, and Indian digital wallets. Razorpay operates under Indian RBI regulations and is appropriate for businesses that have established the correct cross-border payment compliance structure. WebApp Nepal advises clients on regulatory requirements before implementing Razorpay for cross-border flows and builds the integration using Razorpay's Orders API with server-side payment verification and webhook-based order confirmation.
Flutterwave and Payoneer for African and Diaspora Markets
Nepal's growing export craft and handmade goods sector, and organisations receiving international donor funds from African foundations and development organisations, occasionally require payment gateway options beyond Stripe and PayPal. Flutterwave provides access to African mobile money and card networks. Payoneer is commonly used for international freelance and B2B invoice payment in markets where Stripe is not accessible to the payer. WebApp Nepal integrates these gateways for specific client use cases where the target payer population's payment method preferences align with these platforms' strengths.
Dual Payment System Architecture - Nepal and International
Many Nepal businesses need to serve two distinct payment populations simultaneously: Nepali customers who pay via eSewa and Khalti, and international customers who pay via Stripe or PayPal card. The correct architecture for this is not two separate checkout flows but a unified checkout that detects or asks for the customer's location and currency preference, then routes to the appropriate gateway. WebApp Nepal builds dual-currency, dual-gateway checkout flows where: Nepali customers in NPR see eSewa and Khalti as primary options with bank transfer as secondary; international customers in USD (or GBP, EUR, AUD) see Stripe card payment as the primary option; and the order management system receives confirmed orders from both gateway flows in a single normalised format, regardless of which payment method was used. This unified architecture means order processing, fulfilment, and reporting work the same way whether the sale was made via eSewa or Stripe - no manual reconciliation between two separate payment records.
Critical Technical Requirements for Nepal Payment Integration
HMAC Signature Validation (eSewa v2)
eSewa's current production API requires all payment requests to be signed with an HMAC-SHA256 hash constructed from the transaction's unique ID, amount, and the merchant's product code - in that specific order - using the merchant's secret key. Requests without valid signatures are rejected. Responses must also be validated with the same signature mechanism before an order is marked as paid. Implementations that use the deprecated v1 API (which did not require HMAC signing) are a security liability and are rejected in new eSewa merchant registrations. WebApp Nepal's eSewa integration uses only the current v2 API with correct HMAC construction and verification on both the request and response sides.
Webhook-Based Payment Confirmation
The redirect URL that brings a customer back to the merchant site after payment completion is not a reliable source of payment confirmation. The redirect happens in the customer's browser, which means it can be blocked by network drops, intercepted by browser extensions, or simply never delivered if the customer closes the tab immediately after payment. Khalti, Stripe, and PayPal all provide server-to-server webhook notifications that deliver payment confirmation directly from the payment gateway's servers to the merchant's backend endpoint - independently of whether the customer's browser ever completes the redirect. WebApp Nepal implements webhook handling for every production payment integration: the endpoint that receives the webhook validates the request signature, updates order status atomically, triggers fulfilment actions, and returns a 200 response to prevent webhook retry storms. Order confirmation emails and fulfilment triggers fire from the webhook handler, not from the redirect URL handler.
Idempotency and Double-Payment Prevention
Network timeouts during payment initiation - more common on Nepal's mobile networks than on stable broadband connections - can cause payment forms to be submitted twice if a user hits the back button or refreshes after a timeout. Without idempotency handling, this can create two payment requests for the same order, charging the customer twice. WebApp Nepal implements idempotency keys - unique identifiers attached to each payment initiation that the gateway uses to return the same response for duplicate requests rather than processing a second payment. Stripe's API natively supports idempotency keys as a request header. Khalti's implementation requires application-level deduplication using the payment token generated at initiation. eSewa's transaction UUID serves as the deduplication key. All three are implemented correctly in WebApp Nepal payment integrations.
PCI DSS Compliance for Card Payments
Payment Card Industry Data Security Standard (PCI DSS) compliance is required for any platform that handles card payment data. The simplest and most appropriate compliance path for Nepal e-commerce businesses is using a hosted payment page or JavaScript SDK from a PCI-certified gateway (Stripe, PayPal) where card data is entered directly on the gateway's domain or via a gateway-hosted iframe - meaning the card number never passes through the merchant's server. WebApp Nepal implements Stripe Elements and PayPal's hosted fields precisely because they eliminate the server-side card data handling requirement, reducing the merchant's PCI scope to SAQ A (the simplest self-assessment questionnaire) rather than requiring full PCI audit. We do not build custom card collection forms that transmit raw card data through merchant servers.
Nepal Banking Sector International Card Acceptance
A specific challenge for Nepal businesses accepting international card payments is the card acceptance rate - the percentage of international card payment attempts that result in successful transactions rather than declines. Nepal's internet gateway infrastructure and the issuing bank risk assessment for Nepal-merchant charges combine to produce decline rates that can surprise teams used to Western e-commerce norms. WebApp Nepal advises clients on Stripe configuration choices (statement descriptor clarity, geographic radar rules, 3D Secure handling) that improve acceptance rates for international transactions, and implements the Stripe payment intent flow with automatic 3D Secure triggering to reduce fraud-related declines without adding unnecessary friction for legitimate buyers.
Refund and Dispute Handling
A payment integration is not complete at the point of successful charge. Refunds, partial refunds, and dispute (chargeback) handling need to be built into the integration from the beginning. For eSewa and Khalti, refunds are initiated through the respective merchant dashboard or API and reconciled against the original transaction. For Stripe, refund API calls can be triggered programmatically from an admin dashboard built into the platform, and dispute notifications arrive via webhook with the evidence submission deadline and required documentation. WebApp Nepal builds admin-facing refund management into every e-commerce and payment platform we develop - so that handling a refund request takes a click in an admin panel rather than a manual gateway dashboard visit outside the merchant's own system.
Industries and Use Cases for Payment Integration in Nepal
E-Commerce and Retail
Nepal's e-commerce market - from Kathmandu-based fashion and electronics retailers to Terai agricultural product exporters - requires eSewa and Khalti as primary Nepal payment options, cash-on-delivery for Kathmandu Valley delivery addresses, and Stripe or PayPal for diaspora and international buyers. Product categories with significant international buyer interest (Nepali handicrafts, Dhaka textiles, Himalayan herbal products, Thangka paintings) particularly benefit from properly configured international card payment with clear USD pricing and transparent shipping cost display before checkout.
Trekking and Tourism Booking
Nepal's trekking and adventure tourism sector handles a split payment population: international trekkers paying trek deposits in USD via Stripe or PayPal, and domestic Nepali trekkers paying in NPR via eSewa or Khalti. Trek deposit amounts - typically USD 100 to USD 500 per person - are within Stripe's normal processing range but require correct statement descriptor configuration so the charge is recognisable on the international customer's bank statement. Full trek payment for high-value luxury packages is handled via international bank transfer with ConnectIPS or manual confirmation for amounts that exceed digital wallet limits.
Hotel and Hospitality Booking
Hotel direct booking systems in Nepal collect reservation deposits (or full prepayment for non-refundable rates) from a mix of Nepali guests (eSewa, Khalti, NTC/Ncell mobile banking) and international guests (Visa/Mastercard via Stripe, PayPal). The booking system payment flow needs to handle currency correctly - NPR for Nepali guests, USD or EUR for international guests - and store payment confirmation against the reservation record so front desk staff can verify payment status at check-in without accessing the payment gateway dashboard separately.
Educational Institution Fee Collection
Schools, colleges, and universities in Nepal are transitioning from cash-at-counter fee collection to digital fee payment, driven by both operational efficiency and parent demand for payment flexibility. eSewa and Khalti fee payment allows parents to pay tuition, exam fees, and bus charges from their phones without visiting the school counter. ConnectIPS handles bank transfer payments for higher-fee institutions where wallet limits are a constraint. The school management system receives payment confirmation via webhook and automatically marks the student's fee ledger as paid - no manual reconciliation required between payment gateway and school records.
Cooperative and Microfinance Member Payments
Cooperative management systems increasingly require digital payment capability for member savings deposits, loan repayments, share purchases, and annual membership fees. eSewa and Khalti digital wallet payments reduce the administrative burden of cash handling at cooperative offices, particularly for urban cooperatives where members are accustomed to mobile payment. ConnectIPS handles larger transactions - loan repayments above digital wallet limits - via bank transfer with automated reconciliation against member loan accounts. NRB-regulated cooperatives need payment records stored with sufficient transaction metadata to satisfy audit requirements, which WebApp Nepal builds into the payment data schema from the start.
NGO Donor and Fundraising Payments
Nepal-registered NGOs and INGOs receiving international donations need Stripe or PayPal for USD/GBP/EUR donations from international supporters, and eSewa/Khalti for NPR donations from Nepal-based supporters. Donor management systems built by WebApp Nepal capture full donor details alongside payment records, generate automated acknowledgement emails with donation receipts, and provide management dashboards showing donation volume by source, currency, and time period - the reporting that development organisations need for donor relationship management and grant reporting.
Payment Integration Process at WebApp Nepal
Merchant Account and API Credential Setup
Before any integration code is written, the client needs to hold the merchant accounts and API credentials for the payment gateways they plan to use. For eSewa, this requires registering as a merchant through eSewa's merchant portal and receiving a merchant code, secret key, and product code from eSewa's team. For Khalti, the merchant registration process through Khalti's merchant portal produces a public key and secret key for the live environment. For Stripe, an account registered in an eligible country with the appropriate business verification documents produces a publishable key and secret key. WebApp Nepal advises clients on the registration process for each gateway and can assist in preparing the documentation that gateway providers require from Nepal businesses.
Sandbox Testing and Test Flow Coverage
All payment integrations are built and tested in each gateway's sandbox environment before any production credentials are used. Sandbox testing covers the full payment flow - initiation, redirect, callback, webhook delivery, order status update, confirmation email - and the error scenarios: payment cancelled by user, payment failed due to insufficient balance, webhook delivery failure and retry, duplicate payment initiation, and refund processing. Test scenarios are documented and client-signed-off before the integration is switched to production credentials. Production credentials are never used during development or testing.
Security Review Before Go-Live
WebApp Nepal conducts a security review of every payment integration before production launch. The review checks: HMAC signature validation is active on both request and response sides, webhook endpoint validates the gateway's signature before processing, payment amount is verified server-side against the expected order total (preventing price manipulation via browser developer tools), API secret keys are stored in environment variables not in codebase files, and HTTPS is enforced on all payment-related endpoints. Payment integration security failures are the highest-consequence category of web application vulnerability for Nepal e-commerce businesses - a single unverified payment confirmation bug can expose the platform to fraudulent orders at scale.
Payment Gateway Integration Pricing in Nepal
Payment gateway integration pricing depends on the number of gateways, the complexity of the checkout flow, and whether integration is standalone or part of a larger website or application project. As a standalone addition to an existing website, a single Nepal gateway integration (eSewa or Khalti) typically costs NPR 20,000 to NPR 35,000. A full dual-gateway Nepal checkout (eSewa plus Khalti with unified order management) costs NPR 40,000 to NPR 65,000. Adding an international gateway (Stripe or PayPal) alongside Nepal gateways costs NPR 55,000 to NPR 95,000 for the combined integration. Full-stack dual-currency checkout with eSewa, Khalti, ConnectIPS, and Stripe - including admin dashboard, refund management, and webhook handling - is scoped individually but typically ranges from NPR 1,00,000 to NPR 1,80,000. Payment integration as part of a new e-commerce website build is included within the e-commerce project scope rather than priced separately.
The payment infrastructure of a Nepal business is not a feature - it is the mechanism that converts customer intent into revenue. An eSewa button that redirects correctly in testing but silently drops webhook confirmations in production is not a working payment system; it is a liability that surfaces at the worst possible moment. WebApp Nepal builds payment integrations that are tested against the failure modes, not just the happy path - because in Nepal's real network conditions, the failure modes are the ones your customers encounter. Reach out to discuss the payment requirements for your project and we will scope the integration correctly before a line of code is written.
What Our Clients Say
Ready to Start
Your Project?
Tell us what you're building and we'll get back to you within a day with a clear, no-obligation quote.
Call Us
+977-9851198464
Email Us
[email protected]
Office
Ranibari, Kathmandu 44600, Bagmati Province, Nepal
Guides related to Payment Gateway Integration
Our Most In-Demand Services
Website Design and Development
Website design and development in Kathmandu, Nepal by WebApp Nepal: custom, mobile-friendly, SEO-optimized websites for businesses, e-commerce stores, travel companies, schools and NGOs, designed around your customers and goals, not a template.
Mobile Apps Development
Mobile app development in Kathmandu, Nepal by WebApp Nepal: Android, iOS and Flutter cross-platform apps for businesses, startups, e-commerce and on-demand services that connect you directly with customers and keep them engaged.
Software Development
Custom software development in Kathmandu, Nepal by WebApp Nepal: web applications, ERP, CRM and business management systems built around your real processes, so daily operations run faster and more reliably than with generic tools.
Frequently Asked Questions
WebApp Nepal integrates all major Nepal and international payment gateways: eSewa (v2 HMAC-SHA256 API), Khalti (OAuth2 checkout API), ConnectIPS (NCHL interbank transfer), IME Pay, Fonepay QR network, bank transfer with manual verification, Stripe (international card payments), PayPal, Razorpay (for India-facing transactions), and others based on client requirements. Dual-currency checkout combining Nepal gateways (NPR) with international gateways (USD/GBP/EUR) is a standard architecture for tourism and e-commerce businesses serving both Nepali and international customers.
A single eSewa integration added to an existing website costs NPR 20,000 to NPR 35,000. A dual Nepal gateway checkout (eSewa plus Khalti) with unified order management costs NPR 40,000 to NPR 65,000. Adding Stripe or PayPal alongside Nepal gateways brings the combined integration to NPR 55,000 to NPR 95,000. Full-stack checkout with eSewa, Khalti, ConnectIPS, and Stripe including admin dashboard and refund management ranges from NPR 1,00,000 to NPR 1,80,000. Payment integration as part of a new e-commerce website build is included in the overall project scope.
Both are Nepal digital wallet and payment platforms but use different technical APIs. eSewa uses a v2 HMAC-SHA256 signed payment request where the merchant constructs a cryptographic signature from the transaction amount and UUID using a secret key - unsigned requests are rejected. Khalti uses an OAuth2-based checkout where a server-side payment initiation returns a hosted checkout URL, and payment confirmation arrives via a server-to-server webhook from Khalti's servers. WebApp Nepal implements both to their current production API standards, with webhook-based order confirmation for both rather than relying on redirect URL parameters alone.
ConnectIPS is Nepal Clearing House Limited's (NCHL) interbank payment platform enabling direct bank-to-bank transfers from any connected Nepal commercial bank. It is appropriate for higher-value transactions where digital wallet balance limits are a constraint - cooperative membership fees, large e-commerce purchases, B2B trade payments, school tuition at high-fee institutions, and institutional fee collection. ConnectIPS draws directly from the payer's bank account rather than a topped-up digital wallet, making it suitable for payment amounts that exceed typical eSewa or Khalti wallet balances.
WebApp Nepal integrates Stripe using Stripe Elements (or Stripe.js Payment Element) for PCI-compliant card data collection - card numbers are entered on Stripe's hosted iframe and never pass through the merchant's server. Server-side payment intent creation uses the Stripe PHP or Node.js SDK. Post-payment confirmation uses Stripe's webhook endpoint with signature verification. The integration covers the full flow: payment initiation, 3D Secure authentication where required, webhook-based order status update, refund API, and dispute notification. Stripe sandbox testing covers successful payments, declined cards, 3D Secure flows, and refund scenarios before production launch.
Yes. WebApp Nepal builds dual-currency, dual-gateway checkout flows where Nepali customers in NPR see eSewa and Khalti as primary options and international customers in USD, GBP, or EUR see Stripe card payment. The checkout detects or asks for the customer's currency preference and routes to the appropriate gateway. The order management system receives confirmed orders from both gateway flows in a single normalised format - the same order processing, fulfilment, and reporting workflow regardless of which payment method was used. This architecture is standard for Nepal's trekking agencies, hotels, and export e-commerce businesses.
The redirect URL that returns a customer to the merchant site after payment is delivered via the customer's browser - which means it can be lost if the customer closes the tab, experiences a network drop, or if an ad blocker interferes. Khalti, Stripe, and PayPal all send server-to-server webhook notifications directly from the gateway's servers to the merchant's backend, independently of the browser redirect. WebApp Nepal implements webhook handlers as the authoritative source of payment confirmation - order status updates, fulfilment triggers, and confirmation emails all fire from the webhook handler, not the redirect. This prevents the common 'customer paid but order shows as pending' problem caused by lost redirects on Nepal's mobile networks.
HMAC-SHA256 is a cryptographic signature method that eSewa requires for all new merchant integrations (v2 API). The merchant constructs a signature by hashing the transaction's unique ID, amount, and product code with the merchant's secret key using the SHA-256 algorithm. This signature is included in every payment request. eSewa's servers verify the signature before processing the payment - a request with an invalid or missing signature is rejected. This prevents request tampering between the customer's browser and eSewa's server. Implementations that use the old v1 API (without HMAC signing) lack this protection and are a security liability. WebApp Nepal uses only the current v2 API with correct HMAC construction and verification.
Fonepay is Nepal's largest QR payment interoperability network, connecting multiple banks and wallets including NMB Bank, Global IME, Nabil, Mega Bank, and others. A single Fonepay integration enables payment acceptance from any Fonepay-connected bank app or wallet - unlike eSewa or Khalti, which require their specific app. WebApp Nepal integrates Fonepay's merchant API for web and application payment acceptance, enabling customers to pay from their connected bank's mobile app via the Fonepay network with a single QR code or deep link.
Yes. Bank transfer payment flows are built for Nepal businesses and organisations where manual bank transfer is a required payment method alongside digital gateways. The implementation includes: payment reference code generation unique to each order, bank transfer instructions page with account details and reference code guidance, admin dashboard for staff to mark transfers as verified against reference codes, and automated order status update when verification is confirmed. This is commonly required for cooperatives, NGOs, large B2B transactions, and high-value institutional fee collection where digital wallet limits are insufficient.
PayPal integration for Nepal trekking agencies uses PayPal's Smart Payment Buttons (JavaScript SDK) to display PayPal, Venmo (for US buyers), and card payment options in a single checkout component. Server-side order creation and capture use PayPal's Orders API v2 with the PHP or Node.js SDK. Payment confirmation is verified server-side via the capture API call - not by redirect parameters alone. WebApp Nepal tests the full international buyer flow including PayPal One Touch on mobile and card payment via PayPal's guest checkout for buyers who do not have a PayPal account. Trek deposit amounts, cancellation policy display, and USD pricing clarity are designed into the booking flow.
PCI DSS (Payment Card Industry Data Security Standard) is the security standard that applies to any system handling card payment data. The safest and most appropriate compliance path for Nepal e-commerce businesses is using Stripe Elements or PayPal's hosted fields - where card data is entered directly in a gateway-hosted iframe, and card numbers never pass through the merchant's server. This reduces the merchant's PCI scope to SAQ A (the simplest self-assessment). WebApp Nepal does not build custom card collection forms that transmit raw card data through merchant servers - all card payment integrations use gateway-hosted card entry components.
Yes, for appropriate business contexts. Razorpay provides access to Indian payment methods - UPI, NetBanking, Indian debit/credit cards, and Indian digital wallets - for businesses with significant Indian customer bases. This is relevant for Nepal businesses in the India-border trade corridor, pilgrimage and cultural tourism operators serving both Nepal and India circuits, and specific B2B trade platforms. Razorpay operates under Indian RBI regulations; WebApp Nepal advises clients on the cross-border compliance structure required before implementing Razorpay for Nepal-origin businesses accepting Indian payments.
Double-charging typically occurs when a network timeout during payment initiation causes the user to resubmit or when a back-button action triggers a second payment initiation. WebApp Nepal prevents this with idempotency key implementation: a unique key attached to each payment initiation that the gateway uses to return the same result for duplicate requests rather than processing a second charge. Stripe supports idempotency keys as a native API header. Khalti requires application-level deduplication using the payment token. eSewa's transaction UUID serves as the idempotency key. All three mechanisms are implemented correctly in WebApp Nepal payment integrations.
Nepal-merchant Stripe charges face higher-than-average decline rates from some international card issuers due to geographic risk scoring. WebApp Nepal advises on Stripe configuration choices that improve acceptance rates: clear statement descriptor that identifies the merchant name recognisably to the cardholder's bank, proper business category code (MCC) assignment, 3D Secure handling that authenticates high-risk transactions without adding friction to low-risk ones, and Radar rule configuration to reduce false positives. These configuration choices measurably improve authorisation rates for legitimate international customers paying Nepal tourism and e-commerce businesses.
Yes. eSewa fee collection integration is common in WebApp Nepal's school management system projects. The integration allows parents to pay tuition fees, exam fees, transportation charges, and other fee heads via their eSewa wallet from a parent portal on any device. Payment confirmation arrives via webhook and automatically marks the relevant fee head as paid in the student's fee ledger - no manual reconciliation needed between eSewa records and the school's financial system. Fee payment receipts are auto-generated and available for download from the parent portal after successful payment.
Refund handling is built into every payment integration as a standard requirement, not an afterthought. For eSewa and Khalti, refunds are initiated through a merchant dashboard or API call against the original transaction reference. For Stripe, a refund API call can be triggered from an admin panel built into the merchant's own platform - staff do not need to log into Stripe's dashboard directly. Partial refunds are supported where gateway APIs allow it. For PayPal, refund API calls are made via PayPal's Refund Capture endpoint. All refund actions are logged with the initiating staff member, reason code, and timestamp for audit trail purposes.
Yes. Payment gateway integration can be added to an existing website without rebuilding it, provided the existing site's architecture supports the necessary backend API endpoints for payment initiation and webhook handling. WebApp Nepal assesses the existing site's technical stack before quoting for standalone payment integration. Sites built with WordPress receive the integration via a custom plugin or backend API extension. Custom-coded sites receive direct integration into the existing API structure. The assessment identifies whether any refactoring of the existing payment flow or order management logic is needed before the gateway integration can be built correctly.
To accept eSewa payments, a Nepal business registers through eSewa's merchant portal (merchant.esewa.com.np) with business registration documents (company registration, PAN certificate), receives a merchant code, secret key, and product code from eSewa, and signs the merchant agreement. For Khalti, registration is through Khalti's merchant portal (merchant.khalti.com) with similar business documentation requirements, producing a public key and secret key. Both registration processes typically take three to seven working days after document submission. WebApp Nepal advises clients on the documentation required and can guide the registration process, though the merchant accounts must be held by the client business - not by WebApp Nepal.
Yes. IME Pay integration is available for Nepal business websites where IME Pay's user base meaningfully overlaps with the target customer profile - particularly businesses serving communities with high outbound migration to Gulf countries and Malaysia, where IME's remittance network creates strong brand familiarity. IME Pay's merchant API integration follows a similar pattern to eSewa and Khalti: server-side payment initiation, customer redirect to IME Pay's checkout, and post-payment callback with server-side verification. IME Pay sandbox testing is conducted before production deployment.
Security measures in every WebApp Nepal payment integration include: HMAC signature validation active on both payment requests and responses (for eSewa); webhook signature verification before any payment confirmation is processed (for Khalti, Stripe, PayPal); server-side order amount verification against the stored order total (preventing price manipulation via browser developer tools); API secret keys stored in server environment variables, never in codebase files or version control; HTTPS enforced on all payment endpoints; and security review sign-off before production launch. Payment security failures are the highest-consequence category of vulnerability for e-commerce businesses - they are treated as non-negotiable requirements, not optional enhancements.
Nepal NGO donation platforms typically need two payment tracks: eSewa and Khalti for NPR donations from Nepal-based supporters, and Stripe or PayPal for USD/GBP/EUR donations from international donors. Stripe is recommended for international donations due to its wide card acceptance, Apple Pay and Google Pay support for mobile donors, and strong fraud prevention. PayPal is appropriate as a supplementary option for donors who prefer PayPal's buyer protection. Bank transfer instructions are included for high-value donations where supporters prefer direct bank transfer. Donation confirmation emails with receipt details are generated automatically from the webhook confirmation handler.
Yes. Cooperative management systems built by WebApp Nepal include eSewa and Khalti payment integration for member savings deposits, loan repayments, share purchases, and annual membership fees. Payment confirmation via webhook automatically updates the member's account ledger - savings credited, loan repayment posted, fee marked as paid - without manual data entry by cooperative staff. ConnectIPS bank transfer integration is added for loan repayments and savings deposits above digital wallet limits. Payment records include transaction IDs and gateway references for audit trail purposes required by NRB-supervised cooperative examinations.
A single Nepal gateway integration (eSewa or Khalti) as a standalone addition to an existing website takes 1–2 weeks including sandbox testing and production deployment. Dual Nepal gateway checkout (eSewa plus Khalti) takes 2–3 weeks. Adding an international gateway (Stripe or PayPal) extends the timeline by 1–2 weeks for the additional integration and test coverage. Full dual-currency checkout with multiple gateways, admin dashboard, and refund management takes 4–6 weeks. Timelines assume merchant account API credentials are available at the start of development - gateway registration delays are outside the development timeline.
eSewa's v1 API (the original integration method) required only basic merchant code and amount parameters in payment requests, with no cryptographic request signing. This made v1 integrations vulnerable to request tampering. eSewa's v2 API requires HMAC-SHA256 signature construction from the transaction UUID, amount, and product code using the merchant's secret key - unsigned or incorrectly signed requests are rejected. eSewa no longer accepts new v1 merchant integrations and is progressively deprecating existing v1 integrations. WebApp Nepal uses only the v2 API for all eSewa integrations. Existing websites with v1 integrations should be migrated to v2 before eSewa enforces the deprecation.
Contact WebApp Nepal with your business type, the payment methods you need to accept (eSewa, Khalti, Stripe, PayPal, others), and whether payment integration is for a new project or an addition to an existing website. For new projects, payment integration scope is included in the overall project proposal. For standalone integration into an existing site, we assess your current technical stack and produce a scoped proposal with timeline and NPR pricing. Merchant account registration for eSewa and Khalti (which must be held by your business) should be initiated in parallel with the development engagement to avoid credential delays at launch.
