A build-to-order Frappe app that adds Kenya statutory payroll to ERPNext — PAYE tax bands, tiered NSSF, SHIF/NHIF and the Affordable Housing Levy — with KRA iTax P10 and employee P9 outputs. ECOSIRE scopes, builds, installs and supports it for your instance. 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 Frappe app that adds Kenya statutory payroll to ERPNext
— PAYE tax bands, tiered NSSF, SHIF/NHIF and the Affordable Housing Levy — with KRA iTax P10 and employee P9 outputs.
ECOSIRE scopes, builds, installs and supports it for your instance.
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 Kenyan payroll on stock ERPNext means fighting the Salary Structure engine every pay run. ERPNext core gives you a generic component/formula framework, but it does not ship the KRA PAYE tax bands, the tiered NSSF Act 2013 contribution logic, SHIF (the successor to NHIF) deductions, or the 1.5% Affordable Housing Levy — nor the P10 monthly return and per-employee P9 forms that KRA expects. Teams end up hand-coding fragile formula strings into Salary Component rows, re-editing them every time a rate or band changes, and reconciling statutory totals in spreadsheets outside the system. That is exactly where ERPNext native runs out of road.
We build a proper Frappe app (its own module, installed via bench get-app / bench install-app) that layers Kenya statutory logic onto ERPNext's existing Salary Structure, Salary Slip and Payroll Entry DocTypes rather than replacing them. Statutory rates live in versioned configuration DocTypes — PAYE band tables, NSSF Tier I/II limits, SHIF rate, personal and insurance relief — so when the Finance Act or a KRA notice changes a number, you edit a record instead of a formula string. The calculation runs through server-side logic (Python server scripts and hooks.py doc events on Salary Slip validate/on_submit) so PAYE, reliefs, NSSF, SHIF and Housing Levy are computed deterministically on the server, not in the browser, and applied consistently across single slips and bulk Payroll Entry runs.
Technically, the PAYE engine walks the graduated band table and applies personal relief and, where configured, insurance/pension relief; NSSF is computed as a tiered contribution against the pensionable-pay limits with the employer match; SHIF and the Housing Levy are applied as their respective percentages with the correct earnings base. Statutory returns are generated as ERPNext reports/print formats — a KRA iTax-ready P10 summary for the month and per-employee P9 forms — exportable for upload. Everything is exposed through the standard Frappe REST API and whitelisted methods so downstream tools (or your accountant's integrations) can pull results, and access is governed by role profiles and permissions so payroll data stays scoped to authorized roles. client scripts add the in-form validations and helper fields your team needs, and scheduler events can be wired for period-end reminders or draft-run generation. Built and tested against Frappe/ERPNext v15, with a v16 upgrade path.
Because this is build-to-order, nothing is a blind download. We start with a short scoping call to confirm your ERPNext version, pay elements, existing Salary Structures and which statutory outputs you file. ECOSIRE then builds your version of the app, validates it on a staging copy of your data with UAT and a rollback plan, installs it on your instance, and runs a training session before go-live. Typical delivery is 2-4 weeks from confirmed scope, and you receive the full git repository plus a post-go-live support window.
Runs ERPNext for a Kenyan company and needs monthly PAYE, NSSF, SHIF and Housing Levy computed correctly inside payroll — without maintaining brittle Salary Component formulas or reconciling statutory totals in a separate spreadsheet.
Processes payroll for multiple SMEs and files KRA returns. Needs reliable, auditable P10 and P9 outputs from ERPNext and configuration records that can be updated the moment KRA changes a rate or band.
Owns the ERPNext instance and wants a clean, installable Frappe app — proper DocTypes, hooks and whitelisted methods, permissions and a git repo — rather than undocumented custom-field hacks they cannot maintain or upgrade.
Needs statutory deductions, employer contributions and employee P9 forms handled accurately and on time as headcount grows, with role-scoped access so payroll data stays confidential.
| Criterion | ECOSIRE | Custom Build | Competitor | ERPNext Native |
|---|---|---|---|---|
| Kenya statutory logic (PAYE/NSSF/SHIF/Housing Levy) | Built-in, tailored to your setup | You build and test every rule yourself | Generic, may lag KRA changes | Not included — hand-coded formulas only |
| P10 / P9 KRA reports | Configured and validated on a sample run | Build the report templates from scratch | Sometimes included, format varies | Not provided out of the box |
| Rate/band changes | Edit a config DocType, no code change | Depends on how you architected it | Wait for vendor update | Re-edit fragile formula strings |
| Fit to your instance | Scoped to your version and Salary Structures | Fully bespoke but on you to maintain | One-size-fits-all install | You configure everything manually |
| Code ownership | Full git repo handed over | You own it (and all its bugs) | Vendor-controlled, closed | N/A — no app |
| Delivery time | 2-4 weeks from confirmed scope | Weeks to months of internal effort | Instant install, then integration work | Immediate, but incomplete for Kenya |
| Support after go-live | Included support window + training | Your team only | Tiered/paid support plans | Community forums |
| Server-side correctness | Deterministic server scripts + hooks.py events | Only if you build it that way | Varies by vendor quality | Formula strings, easy to misconfigure |
No. This is a build-to-order engagement. ECOSIRE scopes, builds, installs and supports the app for your specific ERPNext instance and statutory setup. You are not buying an off-the-shelf download — you are commissioning a tailored Frappe app that we deliver as installable source plus a git repo.
Typical delivery is 2-4 weeks from confirmed scope. Timing depends on your ERPNext version, the pay elements and Salary Structures already in place, and which statutory outputs you file. The scoping call establishes the exact timeline before any build starts.
Statutory rates — PAYE bands, NSSF tiers, SHIF rate, reliefs and the Housing Levy percentage — live in configuration DocTypes, so most legislative changes are a data edit you can make yourself, not a code change. Your engagement includes a post-go-live support window for fixes and adjustments, and because you hold the git repo, we can also scope larger updates (for example, a KRA return-format change) as follow-on work.
The app is built and tested against Frappe/ERPNext v15, with a supported upgrade path to v16. We confirm your exact version on the scoping call and build against it so the DocTypes, hooks and API methods line up with your instance.
It extends it. The app builds on native ERPNext Salary Structure, Salary Slip and Payroll Entry rather than replacing them, adding Kenya statutory logic through server scripts and hooks.py doc events. Your existing payroll workflow, bulk Payroll Entry runs and reports keep working — the statutory calculations are applied automatically.
Yes. Results are available through the standard Frappe REST API and whitelisted methods, so accountants' tools, dashboards or downstream integrations can pull PAYE, NSSF, SHIF, Housing Levy and P10/P9 data. Access is governed by role profiles and DocType permissions.
We validate on a staging copy of your data with UAT and a documented rollback plan before touching production. Installation on your live instance happens only after sign-off, followed by a training session and the post-go-live support window.

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 Frappe app that adds Kenya statutory payroll to ERPNext — PAYE tax bands, tiered NSSF, SHIF/NHIF and the Affordable Housing Levy — with KRA iTax P10 and employee P9 outputs. ECOSIRE scopes, builds, installs and supports it for your instance.