Skip to main content
Easypaisa Payment Gateway for ERPNext — A build-to-order Frappe app that connects ERPNext checkout to Easypaisa for mobile-wa — 1/1Illustrative preview

A build-to-order Frappe app that connects ERPNext checkout to Easypaisa for mobile-wallet,

card, and OTC payments, with signed callback verification and automatic Payment Entry creation.

ECOSIRE scopes, builds, installs, and supports it for your site.

What is Easypaisa Payment Gateway for ERPNext?

A build-to-order Frappe app that connects ERPNext checkout to Easypaisa for mobile-wallet, card, and OTC payments, with signed callback verification and automatic Payment Entry creation. ECOSIRE scopes, builds, installs, and supports it for your site. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

Registers Easypaisa as a native ERPNext `Payment Gateway` so it works with Payment Requests, Web Shop checkout, and the customer portal without bespoke rewiring
`Easypaisa Settings` single DocType storing Store ID, account credentials, and hashing secret via Frappe `Password` (encrypted) fieldtype
`Easypaisa Transaction` DocType logging order token, amount, status, reference ID, and the raw IPN payload for a complete audit trail
Hosted-checkout redirect flow that hands the customer to Easypaisa and returns them to a branded ERPNext success/failure page
Support for Easypaisa mobile-account (MA) collections, card payments, and OTC (over-the-counter) voucher settlement
Whitelisted IPN callback endpoint (`@frappe.whitelist(allow_guest=True)`) that verifies the Easypaisa signature/hash before any invoice is touched — spoof and replay protection
Automatic creation and submission of a `Payment Entry` against the referenced Sales Invoice on verified success, with the Easypaisa txn ID as the reference number
Idempotent callback handling keyed on the order token so a retried IPN never double-settles an invoice
Scheduler event that polls pending/unknown transactions on an interval to close the reconciliation gap when a callback is dropped
`hooks.py` `doc_events` binding on Payment Request and Sales Invoice to keep gateway state in sync with the ERPNext document lifecycle
Client script that surfaces live payment status and the Easypaisa transaction link directly on the Sales Invoice / Payment Request form
Sandbox vs production credential toggle in settings so UAT and go-live use isolated Easypaisa environments
Role-profile permissions restricting settings and transaction logs to a finance/accounts role; full multi-currency-aware amount handling for PKR
Structured error and callback logging via `frappe.log_error` plus a status field, so failed or ambiguous transactions are triageable instead of silent

Built to order, done for you

No DIY setup — a working app, built, installed and supported by ECOSIRE.

  1. 1

    You order

    Start with a one-time build price. We scope it with you at kickoff.

  2. 2

    We build & install

    ECOSIRE builds, configures and installs it on your ERPNext.

  3. 3

    Go live + support

    You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.

Technical Specifications

ERPNext Compatibility
—
License
Licence confirmation required
Python Requirement
Python 3.10+
Database
MariaDB 10.6+

About this Product

Pakistani retailers and e-commerce sellers who run on ERPNext hit a wall the moment they want to collect money the way their customers actually pay. ERPNext ships with generic payment integrations (Stripe, PayPal, Razorpay, Braintree) that are irrelevant to a wallet-first Pakistani buyer, and it has no native concept of an Easypaisa mobile-account collection, an OTC voucher, or an Easypaisa hosted-checkout redirect. Teams end up marking Sales Invoices as paid by hand after reconciling a separate Easypaisa merchant dashboard — slow, error-prone, and impossible to reconcile at volume. This is exactly the road ERPNext core does not pave for you.

ECOSIRE builds a proper Frappe app (its own module, not a pile of loose server scripts) that registers Easypaisa as a first-class payment method inside ERPNext. We add an Easypaisa Settings single DocType to hold your Store ID, credentials, and hashing secret (encrypted via Frappe's Password fieldtype), and an Easypaisa Transaction DocType that logs every order token, amount, status, and raw IPN payload for a full audit trail. The checkout flow uses the Payment Gateway / Payment Request abstraction so it slots into the Web Shop, the Payment Request email link, and portal checkout without you re-plumbing anything: the customer is redirected to Easypaisa's hosted checkout, pays via mobile account (MA), card, or OTC, and Easypaisa posts back to a whitelisted callback endpoint.

Technically, the integration is wired through hooks.py — whitelisted methods (@frappe.whitelist(allow_guest=True)) expose the initiation and IPN callback URLs, and doc_events hook the Payment Request and Sales Invoice lifecycle. Every inbound callback is verified against the signature/hash Easypaisa returns before anything is trusted, so a spoofed or replayed callback cannot mark an invoice paid. On a verified success we create and submit a Payment Entry against the referenced Sales Invoice, set the reference number to the Easypaisa transaction ID, and settle the invoice atomically. A scheduler event (registered in scheduler_events) polls pending transactions on an interval to catch callbacks that never arrived — the classic reconciliation gap — and a client script surfaces payment status on the invoice for your team. Role-based permissions restrict the settings and transaction logs to a finance role profile, and the Frappe REST API endpoints stay available for your own automation.

Because this is build-to-order, nothing is installed until we agree on scope. We start with a short scoping call, confirm your Easypaisa merchant product (MA collections, card, OTC), your Frappe/ERPNext version (v15 or v16), and your checkout surfaces. We build and test on a staging bench, run UAT with your real sandbox credentials, then install on production with a rollback plan and hand over the git repository. Typical delivery is one working week from confirmed scope.

What you get

  • Installable source code for your version — a self-contained Frappe app targeting your ERPNext v15 or v16 bench
  • Installation and configuration on your production bench, including Easypaisa credential setup and go-live switch
  • Technical documentation: DocType reference, hooks/whitelisted-method map, callback flow, and scheduler behavior
  • User guide plus a live training session for your finance and store-operations team
  • Post-go-live support window for defect fixes and configuration help after launch
  • UAT on a staging bench with your Easypaisa sandbox credentials, plus a documented rollback plan
  • Full git repository handover so you own the code and history
  • Sandbox-to-production cutover checklist and reconciliation runbook for the finance team

Who this is for

Pakistani e-commerce seller on ERPNext Web Shop

Runs an online store on ERPNext's Web Shop and loses wallet-first customers at checkout because only foreign gateways are offered. Needs Easypaisa MA and card payment as a native option that auto-settles invoices so orders reconcile without manual dashboard cross-checking.

Retail finance / accounts manager

Owns Sales Invoice settlement and month-end reconciliation. Wants every Easypaisa payment to create a verified Payment Entry automatically, with an auditable transaction log and a polling safety net so no paid order is left unsettled.

ERPNext system administrator or implementation partner

Maintains the bench and integrations. Needs a clean, versioned Frappe app with proper hooks, whitelisted endpoints, and role permissions — not brittle server scripts — plus the git repo and docs to support and extend it across v15/v16 upgrades.

Omnichannel retailer with OTC customers

Serves buyers who prefer over-the-counter cash payment against a generated voucher. Needs OTC and mobile-account flows unified inside ERPNext so both settle to the same Sales Invoice with consistent status tracking.

How Easypaisa Payment Gateway for ERPNext Compares

CriterionECOSIRECustom BuildCompetitorERPNext Native
Easypaisa support in ERPNextNative gateway: MA, card, and OTC as first-class checkout optionsWhatever you have time to build in-houseOften card-only or a generic wallet stubNot available — no Easypaisa concept at all
Callback verificationSignature/hash verified, idempotent, spoof/replay-safeDepends on developer diligence; easy to get wrongVaries; verification often shallow or undocumentedN/A — no Easypaisa callback handling
Invoice settlementAuto Payment Entry submitted against the Sales InvoiceUsually manual or partially scriptedSometimes only marks paid without a clean Payment EntryManual reconciliation from the Easypaisa dashboard
Reconciliation of dropped callbacksScheduler polls and reconciles pending transactionsRarely built; gap left openFrequently absentNone — silent unsettled orders
ArchitectureProper Frappe app: DocTypes, hooks.py, whitelisted methodsOften loose server scripts, hard to maintainPackaged app of variable code qualityN/A
Version fit (v15/v16)Built and tested for your exact bench versionTies up your own developers to target itMay lag ERPNext releasesN/A
Ownership & supportFull git repo handover + post-go-live support windowYou own it but also own all the maintenanceVendor-locked; support depends on the sellerCommunity support only
Time to liveone working week build-to-order from confirmed scopeUnpredictable; competes with your roadmapFast install but integration gaps surface laterImmediate, but the feature simply isn't there

Frequently Asked Questions about Easypaisa Payment Gateway

Is this an existing app I can download and install today?

No. This is a build-to-order engagement. ECOSIRE scopes, builds, tests, and installs the Easypaisa gateway app specifically for your ERPNext site — there is no instant download. You receive the source code and git repository as part of the handover once your version is built.

How long does delivery take?

Typical delivery is one working week from confirmed scope. The timeline starts once we've agreed on your Easypaisa merchant product (MA, card, OTC), your ERPNext version, and your checkout surfaces on the scoping call. Complex multi-company or heavily customized benches may extend this, which we flag during scoping.

Which ERPNext and Frappe versions are supported?

We build for Frappe/ERPNext v15 and v16. We confirm your exact version on the scoping call and target that bench specifically, since DocType and Payment Gateway internals differ across major versions.

How are Easypaisa callbacks kept secure?

Every inbound IPN callback is verified against the signature/hash Easypaisa returns before any invoice is touched, and handling is idempotent per order token so a replayed or spoofed callback cannot mark an invoice paid or double-settle it. Callbacks arrive on a whitelisted endpoint and every payload is logged in the `Easypaisa Transaction` DocType.

What happens if a callback never arrives?

A Frappe scheduler event polls pending and unknown transactions on an interval and reconciles their real status with Easypaisa. This closes the classic gap where a dropped IPN would otherwise leave a genuinely-paid order unsettled in ERPNext.

What kind of support and updates do I get?

Every build includes a post-go-live support window for defect fixes and configuration help. Because you receive the full git repository, your team or ours can maintain and extend it. Ongoing support or version-upgrade work beyond the included window is available as a separate arrangement discussed during scoping.

Do payments create accounting entries automatically?

Yes. On a verified successful payment the app creates and submits a `Payment Entry` against the referenced Sales Invoice, setting the Easypaisa transaction ID as the reference number and settling the invoice. Your finance team sees a normal, reconciled ledger entry rather than a manual adjustment.

Request a quote

Easypaisa Payment Gateway

A build-to-order Frappe app that connects ERPNext checkout to Easypaisa for mobile-wallet, card, and OTC payments, with signed callback verification and automatic Payment Entry creation. ECOSIRE scopes, builds, installs, and supports it for your site.

  • Registers Easypaisa as a native ERPNext `Payment Gateway` so it works with Payment Requests, Web Shop checkout, and the customer portal without bespoke rewiring
  • `Easypaisa Settings` single DocType storing Store ID, account credentials, and hashing secret via Frappe `Password` (encrypted) fieldtype
  • `Easypaisa Transaction` DocType logging order token, amount, status, reference ID, and the raw IPN payload for a complete audit trail
  • Hosted-checkout redirect flow that hands the customer to Easypaisa and returns them to a branded ERPNext success/failure page

Request a Quotation

Tell us about your Easypaisa Payment Gateway requirements and we'll send pricing, licensing options and a tailored proposal — usually within one business day.

No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.