A build-to-order ERPNext app that adds Nigerian statutory payroll to your instance: graduated PAYE tax bands, pension contributions, NHF and NSITF deductions, consolidated relief allowance, and bank-ready salary disbursement schedules. ECOSIRE builds, installs and supports it on your ERPNext v15/v16. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $249.00 USD; request a quote for a scoped proposal.
Illustrative previewA build-to-order ERPNext app that adds Nigerian statutory payroll to your instance:
graduated PAYE tax bands, pension contributions, NHF and NSITF deductions, consolidated relief allowance, and bank-ready salary disbursement schedules.
ECOSIRE builds, installs and supports it on your ERPNext v15/v16.
No DIY setup — a working app, built, installed and supported by ECOSIRE.
Start with a one-time build price. We scope it with you at kickoff.
ECOSIRE builds, configures and installs it on your ERPNext.
You go live in about 2–4 weeks, with a post-launch support window.
Running Nigerian payroll on stock ERPNext means fighting the Payroll module every month. ERPNext ships generic Salary Structures and Income Tax Slabs, but it has no built-in understanding of the Personal Income Tax Act: the Consolidated Relief Allowance (the higher of NGN 200,000 or 1% of gross income, plus 20% of gross income), the graduated PAYE bands, statutory pension splits under the Pension Reform Act, NHF at 2.5% of basic, and NSITF employer contributions. Finance teams end up maintaining fragile spreadsheets alongside ERPNext, re-keying figures into pension administrator and bank templates, and hoping the numbers reconcile at year end. That is where the native system runs out of road.
ECOSIRE builds a proper Frappe app — for example ecosire_ng_payroll — installed on your own ERPNext instance rather than bolted on as spreadsheets. The app adds custom DocTypes for statutory configuration (PAYE bands, CRA parameters, pension, NHF and NSITF rates, each effective-dated so historical runs stay correct) and wires the computation into ERPNext's existing Salary Slip and Payroll Entry flow. Statutory components are implemented as Salary Component formulas backed by server-side logic, so gross-to-net follows the legal order of operations: compute gross, derive CRA, subtract tax-exempt pension and NHF, apply the PAYE bands to taxable income, then net down. Employer-side pension and NSITF are tracked separately so they never leak into the employee's net pay.
Technically, the calculation logic lives in whitelisted Python methods invoked from hooks.py doc events (Salary Slip validate and on_submit) so the numbers recompute deterministically every run and cannot be silently edited in the UI. A State field (custom field on Employee) drives the correct state Internal Revenue Service treatment where it differs. Client scripts surface a live PAYE/pension/NHF breakdown on the Salary Slip form for reviewers. Scheduler events can queue the monthly Payroll Entry and email statutory summaries to the finance lead. Everything respects Frappe's permission model — a dedicated Payroll Officer role profile gates access to statutory config and bank schedules, and the whitelisted export methods are permission-checked, not open endpoints.
Disbursement is a first-class output, not an afterthought. The app generates a bank schedule export (CSV or the fixed-width/columnar layout your bank expects — GTBank, Zenith, Access, UBA and similar) directly from the submitted Payroll Entry, plus a PENCOM-style pension schedule and PAYE remittance summary. Reports are exposed via the Frappe REST API and whitelisted methods so a portal or downstream automation can pull them, and every figure ties back to the source Salary Slip for audit.
Because this is build-to-order, nothing is a generic download. After a short scoping call we confirm your exact requirements — states you operate in, pension administrators, allowance structure, bank formats and any collective-agreement rules — then build against ERPNext v15 or v16 to match your instance. You review the working app on a staging site during UAT, we install to production with a rollback plan, hand over the git repository and documentation, and support you through your first live payroll runs. Typical delivery is 2–4 weeks from confirmed scope.
Runs monthly payroll for 20–300 staff and needs PAYE, pension, NHF and NSITF computed correctly inside ERPNext without maintaining a parallel spreadsheet or re-keying figures into bank and PENCOM templates.
Operates across multiple Nigerian states (and sometimes neighbouring countries) and needs state-aware PAYE treatment, consistent pension splits, and one reconciled source of truth for audits and remittances.
Already runs ERPNext and wants a clean, permissioned Frappe app with documented DocTypes, hooks and whitelisted methods they can maintain and extend — not undocumented server scripts pasted into the UI.
Migrating off manual payroll or a legacy tool and wants statutory compliance, bank-ready disbursement schedules and a trained team from day one, with a supported go-live.
| Criterion | ECOSIRE | Custom Build | Competitor | ERPNext Native |
|---|---|---|---|---|
| Nigeria PAYE, pension, NHF, NSITF logic | Built to statute, effective-dated, wired into Salary Slip | Possible but you own every edge case | Partial, generic assumptions | Not present; generic tax slabs only |
| Consolidated Relief Allowance | Computed to the PITA formula automatically | Hand-coded and hand-maintained | Often approximated or missing | No CRA concept |
| Bank & PENCOM schedule export | Your bank's exact layout, from Payroll Entry | Build it yourself per bank | Generic CSV, may need rework | Manual export and reformatting |
| Fit to your ERPNext version | Built for your v15/v16 instance | Depends on your team | Whatever the app targets | N/A — core only |
| Maintainability | Documented DocTypes, hooks, git handover | Only as good as your docs | Closed or thinly documented | Config-only, no statutory logic |
| Statutory updates | Data-driven config plus support window | Your responsibility | Vendor's release cycle | Manual every change |
| Delivery model | Build-to-order, 2–4 weeks, UAT + rollback | Open-ended project | Instant install, generic | Already installed, incomplete |
| Support & ownership | Go-live support plus full source ownership | You support it entirely | Vendor support, no source | Community/self-support |
No. This is a build-to-order engagement. ECOSIRE builds the app against your confirmed requirements and your ERPNext version, then installs and supports it. There is no instant download — you receive source code, install, documentation and training as part of delivery.
Typical delivery is 2–4 weeks from confirmed scope. The timeline starts once we have agreed your exact requirements on the scoping call — states of operation, pension administrators, allowance structure, bank formats and any special rules. Larger or multi-entity scopes may run longer, and we tell you upfront.
We build for ERPNext / Frappe v15 and v16. We target the specific version your instance runs so DocTypes, hooks and API methods match your environment. If you are mid-upgrade, we scope the target version during the call.
Rates, bands and thresholds live in effective-dated configuration DocTypes, so most statutory changes are data edits rather than code changes, and historical payroll runs stay correct. During your support window we help you apply changes; beyond that they are straightforward config updates or a small change request.
Every engagement includes a post-go-live support window covering your first live payroll runs and statutory exports. After that, we offer ongoing support and maintenance agreements. Because you receive the full git repository, your own Frappe team can also maintain and extend the app.
Yes. Bank schedule export is a core deliverable — we build the CSV or columnar layout your bank expects (GTBank, Zenith, Access, UBA and similar) and a PENCOM-style pension schedule and PAYE remittance summary, all generated from the submitted Payroll Entry and reconciled to source Salary Slips.
It builds on ERPNext's native Salary Structure, Salary Slip and Payroll Entry rather than replacing them. We validate everything on a staging site during UAT and install to production with a documented rollback plan, so your live data is protected.

A build-to-order 2Checkout (Verifone) payment integration for ERPNext, giving global digital-goods sellers card acceptance, 45+ local payment methods, multi-currency checkout, and reconciled invoices. ECOSIRE scopes, builds, installs, and supports it on your ERPNext v15/v16 instance.

A build-to-order ERPNext application for anonymous 360-degree reviews — configurable peer, manager, report and self rater groups, weighted competency scoring, and aggregated gap-analysis and heatmap reports. ECOSIRE scopes, builds, installs and supports it on your Frappe/ERPNext v15/v16 instance.

A build-to-order ERPNext app that detects abandoned webshop and POS carts, then runs multi-channel WhatsApp, email, and SMS recovery and win-back sequences with dynamic cart content and coupon injection. ECOSIRE scopes, builds, installs, and supports it for your v15/v16 instance.

A build-to-order ERPNext app for running B2B account-based campaigns: define target-account lists, sequence outreach calls, auto-distribute them to agents, and score account engagement across every contact. ECOSIRE designs, builds, installs and supports it after you confirm scope.
A build-to-order ERPNext app that adds Nigerian statutory payroll to your instance: graduated PAYE tax bands, pension contributions, NHF and NSITF deductions, consolidated relief allowance, and bank-ready salary disbursement schedules. ECOSIRE builds, installs and supports it on your ERPNext v15/v16.