Skip to main content
ERPNext JazzCash Payment Connector — A build-to-order Frappe app that wires JazzCash mobile-wallet and card payments into you — 1/1Illustrative preview

A build-to-order Frappe app that wires JazzCash mobile-wallet and card payments into your ERPNext checkout,

with webhook-driven confirmation and automatic Payment Entry reconciliation.

ECOSIRE scopes, builds, installs, and supports it for you — this is not an instant download.

What is ERPNext JazzCash Payment Connector?

A build-to-order Frappe app that wires JazzCash mobile-wallet and card payments into your ERPNext checkout, with webhook-driven confirmation and automatic Payment Entry reconciliation. ECOSIRE scopes, builds, installs, and supports it for you — this is not an instant download. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

Dedicated Frappe app with its own module, `hooks.py` doc events, and `fixtures` for clean install/uninstall via `bench install-app`
`JazzCash Settings` single DocType holding Merchant ID, Password, and Integrity Salt in Frappe encrypted `password` fields, with a sandbox/live environment toggle
`JazzCash Transaction` DocType logging every request/response payload, secure hash, `pp_TxnRefNo`, and status for full audit
HMAC-SHA256 secure-hash generation over the sorted `pp_` field set, matching JazzCash's integrity-salt signing spec exactly
Native ERPNext `Payment Request` integration so checkout reuses core invoice/order flows instead of a bolt-on cart
JazzCash mobile-wallet (MPIN) and card checkout, plus hosted payment-link generation from a Sales Invoice or Sales Order
Whitelisted server methods (`@frappe.whitelist()`) exposing initiate, verify, and status-query calls over the Frappe REST API
Webhook/return endpoint that verifies the inbound secure hash before acting — spoofed redirects can never mark an invoice paid
Automatic submitted `Payment Entry` on verified success, with `pp_TxnRefNo` as the reference and the invoice correctly cleared
Gateway fee / MDR commission mapped to a configurable expense or charges account so bank reconciliation ties out
Refund handling through JazzCash's refund transaction, written back as a linked return/reversal entry in ERPNext
Scheduler event (`scheduler_events`) that re-queries pending/ambiguous transactions to self-heal dropped webhooks
Client script on the invoice form showing live gateway status plus a finance-only Retry / Reconcile action
Role profile and permission rules restricting settings, refunds, and transaction logs to authorized finance users
Built and tested against Frappe/ERPNext v15 and v16, upgrade-safe through `bench update`

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 merchants and service businesses running ERPNext hit the same wall: JazzCash is how their customers actually pay, but ERPNext core ships no JazzCash Payment Gateway. Teams end up taking wallet and card payments outside the system, then keying Payment Entries in by hand and hoping the bank statement matches at month end. Reconciliation drifts, gateway fees get lost in "other charges," and finance spends days chasing which order a settlement belonged to. ERPNext's generic Payment Gateway and Payment Request framework is genuinely good — it just has no JazzCash provider to plug into, and the hosted/aggregator connectors on the Frappe marketplace rarely map JazzCash's HS/HTTP transaction API, mobile-wallet MPIN flow, and commission structure the way a real Pakistani merchant account needs.

ECOSIRE builds a proper Frappe app — its own module, DocTypes, and hooks.py doc events — that registers JazzCash as a first-class integration inside ERPNext. We add a JazzCash Settings single DocType for your Merchant ID, Password, Integrity Salt, and sandbox/live toggle (secrets stored via Frappe's encrypted password fieldtype, never in plaintext), and a JazzCash Transaction DocType that logs every request and response for audit. Checkout works through ERPNext's native Payment Request: a whitelisted method (@frappe.whitelist()) builds the signed pp_ payload with the correct HMAC-SHA256 secure hash over the sorted field set, then hands off to JazzCash mobile-wallet or card checkout. Customers can also be sent a hosted payment link generated from a Sales Invoice or Sales Order.

Confirmation is webhook-first, not trust-the-redirect. An inbound endpoint validates the returned secure hash before doing anything, so a spoofed browser redirect can never mark an invoice paid. On a verified pp_ResponseCode success the app creates and submits a Payment Entry against the source invoice, sets the reference number to the JazzCash pp_TxnRefNo, and maps the deducted MDR/commission to a configurable fee account so your bank rec actually ties out. Refunds are handled through JazzCash's refund transaction and written back as a linked negative/return entry. A scheduler event (registered in scheduler_events) sweeps any pending or ambiguous transactions on an interval and re-queries JazzCash status, so a dropped webhook self-heals instead of leaving a stuck invoice. Client scripts surface transaction status and a "Retry / Reconcile" action right on the invoice form, and access is gated by a dedicated role profile so only finance users can touch gateway settings or trigger refunds.

Because this is build-to-order, nothing ships until we agree on scope. We start with a short scoping call, confirm your JazzCash merchant account type (wallet, card, or both), your ERPNext version (v15 or v16), your invoice/fee-account structure and any multi-company needs, then build against that. You get the work on a staging site first for UAT, a rollback plan, and the full git repository at handover — no black box. Typical delivery is one working week from confirmed scope, and every method is written to the current Frappe REST/whitelisted-method conventions so it survives your next bench update.

What you get

  • Installable source code for your version as a proper Frappe app (`bench get-app`/`install-app` ready)
  • Installation and configuration on your ERPNext instance, including JazzCash merchant credential setup and sandbox verification
  • Technical documentation: DocType reference, hooks, whitelisted endpoints, secure-hash logic, and scheduler jobs
  • User guide plus a live training session for your finance/checkout team
  • UAT on a staging site with sandbox JazzCash transactions, sign-off, and a documented rollback plan
  • Post-go-live support window for defect fixes and configuration adjustments
  • Git repository handover with full commit history — no black box
  • Go-live checklist covering live-credential cutover and first-payment reconciliation verification

Who this is for

Pakistani ecommerce & retail merchant

Sells online or in-store and already runs ERPNext for inventory and invoicing. Needs customers to pay by JazzCash wallet or card at checkout and needs each payment to land against the right Sales Invoice automatically instead of being keyed in later.

Service business collecting recurring fees

Tuition centers, clinics, subscription and SaaS-style local businesses that invoice regularly and send JazzCash payment links. Wants hosted links from Sales Orders/Invoices and automatic Payment Entries so accounts receivable stays clean.

Finance / accounts manager

Owns the month-end close and the bank reconciliation. Needs the deducted JazzCash MDR/commission mapped to a proper fee account, refunds recorded correctly, and an audit trail of every transaction — with settings and refunds locked to finance roles.

ERPNext admin / systems integrator

Runs the bench and self-hosts or manages Frappe Cloud. Wants a clean, upgrade-safe Frappe app with real DocTypes, hooks, and whitelisted methods, plus the git repo, so it survives `bench update` and can be maintained in-house.

How ERPNext JazzCash Payment Connector Compares

CriterionECOSIRECustom BuildCompetitorERPNext Native
JazzCash support in ERPNextPurpose-built JazzCash connector for your accountWhatever your developer manages to buildGeneric gateway app, JazzCash often unsupportedNone — no JazzCash provider in core
ReconciliationWebhook-verified auto Payment Entry + fee mappingDepends on developer; often manualBasic mark-as-paid, fees rarely mappedManual Payment Entry keyed by hand
Security of confirmationSecure-hash verified before any status changeOnly as good as the code writtenVaries; some trust the redirectN/A
RefundsJazzCash refund API + linked reversal entryExtra scope, often skippedFrequently not handledManual journal entry
Fee / commission handlingMDR mapped to configurable fee accountManual accounting workaroundUsually lumped or ignoredManual and error-prone
Version & upgrade safetyTested on v15/v16, bench-update safeRisk of core patches breaking on updateMay lag ERPNext releasesN/A
Ownership & handoverFull git repo + docs handed overYou own it but must build it firstClosed source, vendor-lockedN/A
SupportPost-go-live window + optional retainerDepends on developer availabilityGeneric marketplace supportCommunity only

Frequently Asked Questions about ERPNext JazzCash Payment Connector

Is this a ready-made app I can download and install today?

No. This is build-to-order. ECOSIRE scopes, builds, installs, and supports the connector for your specific ERPNext instance and JazzCash merchant account. There is no instant download — we start with a scoping call and hand over the working app plus its git repository.

How long does delivery take?

Typically one working week from confirmed scope. The exact timeline depends on your JazzCash account type (wallet, card, or both), your ERPNext version, and any multi-company or custom fee-account requirements. We confirm dates with you before starting the build.

Which ERPNext versions do you support, and will it survive a bench update?

We build and test against Frappe/ERPNext v15 and v16. Because the app is a proper Frappe app using standard DocTypes, `hooks.py` doc events, whitelisted methods, and `scheduler_events` — not core patches — it is designed to survive `bench update`. Tell us your exact version on the scoping call.

How does reconciliation actually work?

Confirmation is webhook-driven: the inbound response's secure hash is verified before anything happens. On a verified success the app creates and submits a `Payment Entry` against the source invoice using the JazzCash `pp_TxnRefNo` as the reference, and maps the deducted MDR/commission to a configurable fee account so your bank reconciliation ties out. A scheduler job re-queries pending transactions to catch any dropped webhooks.

Do I need my own JazzCash merchant account?

Yes. You provide your JazzCash Merchant ID, Password, and Integrity Salt from your JazzCash merchant onboarding. We store them in Frappe's encrypted password fields, verify them against the sandbox during UAT, then cut over to live credentials at go-live. ECOSIRE does not resell or provide the merchant account.

What about ongoing support and updates?

Every build includes a post-go-live support window for defect fixes and configuration adjustments. Because you receive the full git repository, your team can also maintain it in-house. We offer extended support and version-upgrade retainers separately if you want ECOSIRE to keep it current across future ERPNext releases.

Can it handle refunds and card as well as wallet?

Yes. We support JazzCash mobile-wallet (MPIN) and card checkout, and handle refunds through JazzCash's refund transaction, written back to ERPNext as a linked return/reversal entry. Which of these you need is confirmed during scoping so we build and test exactly what your account supports.

Request a quote

ERPNext JazzCash Payment Connector

A build-to-order Frappe app that wires JazzCash mobile-wallet and card payments into your ERPNext checkout, with webhook-driven confirmation and automatic Payment Entry reconciliation. ECOSIRE scopes, builds, installs, and supports it for you — this is not an instant download.

  • Dedicated Frappe app with its own module, `hooks.py` doc events, and `fixtures` for clean install/uninstall via `bench install-app`
  • `JazzCash Settings` single DocType holding Merchant ID, Password, and Integrity Salt in Frappe encrypted `password` fields, with a sandbox/live environment toggle
  • `JazzCash Transaction` DocType logging every request/response payload, secure hash, `pp_TxnRefNo`, and status for full audit
  • HMAC-SHA256 secure-hash generation over the sorted `pp_` field set, matching JazzCash's integrity-salt signing spec exactly

Request a Quotation

Tell us about your ERPNext JazzCash Payment Connector 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.