- Home
- Apps
- SaaS Tools
- Paystack Gateway for ERPNext
Illustrative previewA build-to-order Paystack payment integration for ERPNext that adds cards,
bank transfer, USSD, QR, and mobile money to your invoices, payment links, and subscriptions.
ECOSIRE scopes, builds, installs, and supports it for your African commerce workflows.
What is Paystack Gateway for ERPNext?
A build-to-order Paystack payment integration for ERPNext that adds cards, bank transfer, USSD, QR, and mobile money to your invoices, payment links, and subscriptions. ECOSIRE scopes, builds, installs, and supports it for your African commerce workflows. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Key Features
Built to order, done for you
No DIY setup — a working app, built, installed and supported by ECOSIRE.
- 1
You order
Start with a one-time build price. We scope it with you at kickoff.
- 2
We build & install
ECOSIRE builds, configures and installs it on your ERPNext.
- 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
Nigerian, Ghanaian, and Kenyan merchants running ERPNext keep hitting the same wall: ERPNext ships integrations for global processors, but Paystack — the gateway that actually clears cards, bank transfers, USSD, and mobile money across West and East Africa — is not a first-class citizen in ERPNext core. Finance teams end up reconciling Paystack settlements by hand against Sales Invoices, chasing failed charges through the dashboard, and copy-pasting payment references into Payment Entry. There is no native Payment Gateway provider for Paystack, no automated webhook listener, and no way to raise a Payment Request that a customer can settle with USSD or a mobile-money wallet. This is where ERPNext native runs out of road.
ECOSIRE builds a proper Frappe app — a real app in your bench, not a pile of client-side hacks — that registers Paystack as a first-class Payment Gateway and Payment Gateway Account, so it plugs into the standard ERPNext Payment Request and Integration Request flow the same way Stripe or Razorpay would. We add a Paystack Settings single DocType for keys, currency, and channel configuration (encrypted secret fields, test vs live toggle), and wire the payment lifecycle through hooks.py doc events and whitelisted server methods. When a customer pays, Paystack calls a signed webhook endpoint we expose as a whitelisted method; the handler verifies the x-paystack-signature HMAC, resolves the transaction reference back to the originating Sales Invoice or Payment Request, and creates the Payment Entry automatically with the correct settled amount, fees, and channel. Split payments and subaccounts are modelled as child DocTypes so marketplaces and multi-vendor sellers can route a percentage or flat cut to each subaccount on every transaction.
Technically, the build covers the channels your buyers actually use: card, bank transfer, USSD, QR, and mobile money (Ghana MTN/Vodafone/AirtelTigo, Kenya M-Pesa via Paystack), exposed through Paystack's Initialize/Charge/Verify APIs and returned to a themed checkout or a hosted Paystack page. Payment links and Paystack Plans/Subscriptions are surfaced inside ERPNext so recurring billing raises the right invoices on schedule. A scheduler_events hook runs a periodic reconciliation job that re-verifies pending references and closes the gap when a webhook is missed or arrives late — so your books are never stuck on an ambiguous "processing" state. Client Scripts add the pay-now action and reference display on the Sales Invoice form; Role Profiles and permission rules keep API keys and the reconciliation dashboard restricted to Accounts Manager and System Manager. Everything targets Frappe/ERPNext v15 and is forward-checked for v16.
Because this is build-to-order, nothing is downloaded and dropped on your site blind. We start with a short scoping call to confirm your channels, currencies (NGN/GHS/KES/USD), subaccount rules, and which documents trigger payment. We build against your version on a staging bench, run UAT with you using Paystack test keys, then install on production behind a rollback plan and hand over the git repository. Typical delivery is one working week from confirmed scope, followed by a post-go-live support window. You own the source, so nothing is locked to us.
What you get
- Installable Frappe app source code, pinned to your ERPNext version (v15 or v16), delivered as a real app in your bench
- Installation and configuration on your staging then production bench, including Paystack live/test key setup and channel/currency configuration
- Technical documentation: DocType reference, `hooks.py` events, whitelisted methods, webhook contract, and scheduler jobs
- User guide plus a live training session for your finance/accounts team on payment collection and reconciliation
- UAT on a staging bench using Paystack test keys, with a documented rollback plan before production install
- Post-go-live support window for defect fixes and configuration adjustments
- Git repository handover with full commit history so you own and can maintain the source
- Reconciliation runbook covering webhook replay, pending-reference re-verification, and settlement-vs-payout checks
Who this is for
Nigerian ecommerce & retail merchant
Runs ERPNext for orders and invoicing and needs to collect NGN via cards, bank transfer, and USSD without manually reconciling every Paystack settlement into Payment Entry.
Ghanaian / Kenyan mobile-money seller
Depends on MTN, Vodafone, AirtelTigo, or M-Pesa collections and wants those wallet payments to flow straight into ERPNext invoices with automatic reconciliation.
Multi-vendor marketplace or SaaS operator
Needs Paystack split payments and subaccounts to route a cut to each vendor, plus Plans/Subscriptions surfaced in ERPNext for recurring billing.
Finance manager / accountant
Owns the books and wants signed webhooks, fee-accurate Payment Entries, and a scheduled reconciliation job so settled amounts always match Paystack payouts.
How Paystack Gateway for ERPNext Compares
| Criterion | ECOSIRE | Custom Build | Competitor | ERPNext Native |
|---|---|---|---|---|
| Paystack channel coverage (card, USSD, mobile money) | All channels wired incl. Ghana/Kenya mobile money | Whatever your devs scope and finish | Often card-only, region-limited | No Paystack provider at all |
| Automatic reconciliation into Payment Entry | Signed webhook + scheduled re-verify job | Must be designed and built from scratch | Basic webhook, often no self-heal | Manual entry against settlements |
| Split payments & subaccounts | Modelled as child DocTypes, per-txn routing | Feasible but costly to build correctly | Rarely included | Not available |
| ERPNext version fit (v15/v16) | Built and pinned to your version | Depends on your team's Frappe depth | May lag or break on upgrades | N/A |
| Source-code ownership | Full git repo handed over to you | You own it (you built it) | Usually closed or licensed | N/A |
| Security (webhook signature, encrypted keys) | HMAC verify + encrypted secret fields + role perms | Only if your team implements it | Varies by vendor | N/A |
| Time to a working integration | one working week from confirmed scope | Weeks to months, plus hiring/ramp | Fast install, slow to fit your flow | Never — build required |
| Support & post-go-live window | Included support window + optional agreement | You maintain it yourself | Ticket queue, no ERPNext context | N/A |
Frequently Asked Questions about Paystack Gateway
Is this a marketplace app I can download and install today?
No. It is build-to-order. ECOSIRE builds the Frappe app against your exact ERPNext version and your channel/currency/subaccount requirements, then installs and supports it. There is no instant download — you get source code tailored to your setup, not a generic binary.
How long does delivery take?
Typically one working week from confirmed scope. After the scoping call we lock the channels, currencies, and document triggers, build on a staging bench, run UAT with Paystack test keys, then schedule the production install. Complex subaccount or multi-company setups sit at the longer end of that range.
How do updates and support work after go-live?
Every build includes a post-go-live support window for defect fixes and configuration tweaks. Because you receive the full git repository, your team (or ECOSIRE on a support agreement) can maintain it. When you upgrade ERPNext — for example v15 to v16 — we can supply a compatibility update as a scoped follow-on.
Which Paystack channels and countries are covered?
Cards, bank transfer, USSD, and QR for Nigeria, plus mobile money for Ghana (MTN, Vodafone, AirtelTigo) and Kenya (M-Pesa) through Paystack's mobile-money flow. Supported currencies include NGN, GHS, KES, and USD, depending on what your Paystack account is enabled for.
How does reconciliation stay accurate if a webhook fails?
Webhooks are verified with the `x-paystack-signature` HMAC and handled idempotently so retries never double-post. On top of that, a `scheduler_events` job periodically re-verifies pending references via Paystack's Verify API and creates any missing Payment Entry, so a dropped or late webhook self-heals rather than leaving a transaction stuck.
Does it support split payments and subaccounts for a marketplace?
Yes. Subaccounts and split rules are modelled as child DocTypes, so you can route a percentage or flat amount to each vendor's subaccount on every transaction, and the settlement is captured on the resulting Payment Entry.
Will it work with our existing ERPNext workflows and permissions?
Yes. It plugs into the standard `Payment Request` / `Payment Gateway Account` flow and adds Client Scripts to the Sales Invoice and Payment Request forms. API keys and the reconciliation dashboard are locked down with Role Profiles so only Accounts Manager and System Manager roles can access them.
Related Modules

Paymob Gateway for ERPNext
A single Paymob connector for ERPNext that accepts cards, Meeza, mobile wallets, and Valu/Souhoola BNPL across Egypt, KSA, UAE, and Pakistan. ECOSIRE builds, installs, and supports it after we confirm your scope — this is a build-to-order engagement, not an off-the-shelf download.

PayPal Commerce for ERPNext
A build-to-order Frappe app that brings modern PayPal Checkout (Orders v2) smart buttons, Pay Later, and Venmo to ERPNext, with webhook-driven invoice settlement. ECOSIRE scopes, builds, installs, and supports it — it is not an instant download.

Paytm Business Gateway for ERPNext
A build-to-order Frappe app that wires Paytm Payments into ERPNext — UPI, wallet, netbanking, cards, and Paytm Postpaid — with hosted checkout, server-side verification, and webhook-driven reconciliation. ECOSIRE builds, installs, and supports it after we scope your requirements.

PayU Gateway for ERPNext
A build-to-order PayU integration for ERPNext that unifies cards, UPI, netbanking, EMI and local methods across India, LATAM and EMEA. ECOSIRE builds it as a proper Frappe app, installs it on your bench, and supports it after go-live.
Paystack Gateway
A build-to-order Paystack payment integration for ERPNext that adds cards, bank transfer, USSD, QR, and mobile money to your invoices, payment links, and subscriptions. ECOSIRE scopes, builds, installs, and supports it for your African commerce workflows.
- Registers Paystack as a first-class ERPNext `Payment Gateway` + `Payment Gateway Account`, so it plugs into the standard `Payment Request` / `Integration Request` flow
- `Paystack Settings` single DocType with test/live toggle and encrypted secret-key fields (`get_password`), plus per-currency and per-channel configuration
- Signed webhook endpoint as a whitelisted method that verifies the `x-paystack-signature` HMAC-SHA512 before trusting any event
- Automatic `Payment Entry` creation on `charge.success`, resolving the Paystack reference back to the originating Sales Invoice or Payment Request