- Home
- Apps
- SaaS Tools
- KSA GOSI & Mudad Payroll Compliance
Illustrative previewA build-to-order ERPNext app that adds Saudi payroll compliance
— GOSI dual-rate contributions, Mudad WPS file generation, and end-of-service benefit calculation — natively into your Salary Slip and Payroll Entry flow.
ECOSIRE builds, installs, and supports it after we agree on your scope.
What is KSA GOSI & Mudad Payroll Compliance?
A build-to-order ERPNext app that adds Saudi payroll compliance — GOSI dual-rate contributions, Mudad WPS file generation, and end-of-service benefit calculation — natively into your Salary Slip and Payroll Entry flow. ECOSIRE builds, installs, and supports it after we agree on your scope. 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
Saudi payroll teams running ERPNext hit the same wall every month: ERPNext core Payroll handles gross-to-net salary structures, but it has no concept of GOSI's dual contribution regime, no Mudad-formatted WPS output, and no end-of-service benefit engine tied to Saudi labour law. Teams end up exporting Salary Slips to spreadsheets, hand-calculating employer and employee GOSI split by nationality, then re-keying a WPS file into a bank portal — a process that breaks the moment GOSI changes a rate or an auditor asks how a number was derived. When the July contribution rate adjustments land, the spreadsheet logic silently goes stale.
ECOSIRE builds a proper Frappe app that closes that gap inside ERPNext rather than beside it. The GOSI dual-rate engine is a set of DocTypes plus hooks.py doc events on Salary Slip: on validate, a server script resolves the employee's nationality (Saudi vs non-Saudi), applies the correct employee and employer contribution percentages against the capped contributory wage, and adds the occupational-hazard component — writing the results back as dedicated salary components so they flow into Payroll Entry and the GL without manual entry. Rate tables are stored as versioned DocTypes with effective-from dates, so the mandated July rate update is a data change with a scheduled event flag, not a code redeploy — and every calculation is reproducible and auditable.
Mudad WPS submission is handled by a whitelisted method that assembles the bank file from the posted Payroll Entry, runs pre-submission compliance checks (IBAN presence and format, GOSI-registered wage vs paid wage variance, missing establishment/employee identifiers), and blocks generation with a clear error list before you ever touch the portal. End-of-service benefit is a separate calculator DocType that applies the Saudi labour-law tiers (first five years vs beyond, resignation vs termination proration) against the qualifying wage, and a GOSI monthly reconciliation report reconciles what ERPNext posted against what was declared, flagging deltas per employee. Role profiles and permissions keep the WPS-generation and rate-maintenance surfaces restricted to payroll administrators.
Because this is build-to-order, you are not downloading a fixed marketplace app and hoping it fits. We start with a short scoping call to confirm your establishment structure, salary-component mapping, bank/Mudad setup, and Frappe/ERPNext version (v15 or v16). We then build your version against that scope, validate it on a staging copy of your data through UAT, and install it on your instance with a rollback plan. Typical delivery is one working week from confirmed scope. You receive the installable source, a git repository handover, documentation, a training session, and a post-go-live support window.
What you get
- Installable source code for your commissioned version of the app, packaged as a standalone Frappe app
- Installation and configuration on your ERPNext instance (rate tables, salary-component mapping, Mudad/bank setup)
- Technical documentation covering DocTypes, doc events, whitelisted methods, and configuration
- User guide plus a live training session for your payroll administrators
- UAT on a staging copy of your data with a documented rollback plan before production install
- Post-go-live support window for defect fixes and configuration questions
- Git repository handover with full commit history and setup instructions
- GOSI rate-update procedure documented so your team can maintain future rate changes
Who this is for
Saudi payroll administrator
Runs the monthly Payroll Entry in ERPNext and needs GOSI split, occupational hazard, and the Mudad WPS file produced correctly without spreadsheet re-keying or manual nationality lookups.
HR / finance manager at a KSA establishment
Owns compliance risk and wants GOSI contributions, WPS submission, and EOSB to be auditable and reproducible inside ERPNext, with reconciliation that stands up to a GOSI review.
ERPNext system owner / IT lead
Maintains the Frappe instance on v15 or v16 and wants Saudi compliance delivered as a clean, version-compatible Frappe app with a git handover — not brittle customizations bolted onto core.
Group controller with mixed-nationality workforce
Oversees establishments employing both Saudi and non-Saudi staff and needs the dual-rate engine and hazard contributions applied consistently across all salary structures every cycle.
How KSA GOSI & Mudad Payroll Compliance Compares
| Criterion | ECOSIRE | Custom Build | Competitor | ERPNext Native |
|---|---|---|---|---|
| GOSI dual-rate (Saudi vs non-Saudi) | Built into Salary Slip via doc events, applied automatically | Possible but you design and maintain the logic | Often single-rate or generic, needs heavy tweaking | No GOSI concept at all |
| July rate updates | Versioned rate DocTypes with effective-from dates | Manual code or config change each time | Depends on vendor release cadence | Not applicable |
| Mudad WPS file | Generated from Payroll Entry with pre-submission checks | Build the file format and validations yourself | May export a generic WPS, not always Mudad-ready | No WPS output |
| End-of-service benefit (EOSB) | Saudi labour-law tiers with resignation/termination proration | Coded to your interpretation, upkeep on you | Rarely included or simplified | Not calculated |
| GOSI reconciliation report | Posted-vs-declared deltas per employee | Build the report from scratch | Usually not provided | None |
| Fit to your setup | Scoped to your establishments and mapping, UAT on staging | Fully bespoke but slower and riskier to build | One-size-fits-all, you adapt to it | Generic payroll only |
| Delivery & support | one working week, install + training + support window + git handover | Depends on your team's bandwidth | Instant download, self-support | Included with ERPNext, no KSA compliance |
| Version support | Built and tested for v15/v16 as a standalone app | You own version-compatibility work | Varies; upgrade lag common | Core only |
Frequently Asked Questions about KSA GOSI & Mudad Payroll Compliance
Is this an existing app I can download and install today?
No. This is a build-to-order engagement. ECOSIRE builds your version against your confirmed scope, validates it on staging, and installs it on your ERPNext instance. There is no instant self-service download.
How long does delivery take?
Typical delivery is one working week from confirmed scope. Timing depends on your establishment structure, salary-component mapping, and Mudad/bank setup, all of which we lock down in the initial scoping call before the build starts.
How are GOSI rate changes, like the July update, handled?
GOSI rates are stored as versioned DocTypes with effective-from dates, so a rate change is a data update your team can make — not a code redeploy. A scheduler event flags an upcoming change and warns if you run payroll against a stale rate. We document the exact update procedure at handover.
What ERPNext versions are supported?
The app is built for ERPNext / Frappe HR on v15 and v16. We confirm your exact version during scoping and build and test against that version so it layers cleanly on top of core Payroll.
What kind of support and updates do I get after go-live?
You get a post-go-live support window for defect fixes and configuration questions, plus the full git repository so your team (or ECOSIRE on a future engagement) can extend or maintain it. Ongoing support beyond the included window can be arranged separately.
Will this conflict with my existing customizations or core Payroll?
It is packaged as a standalone Frappe app that hooks into Salary Slip and Payroll Entry via doc events and adds its own DocTypes and salary components, rather than editing core. We review your existing customizations during UAT on a staging copy and provide a rollback plan before touching production.
Can other systems trigger WPS generation or pull reconciliation data?
Yes. WPS generation and reconciliation data are exposed through whitelisted methods and the Frappe REST API with permission checks, so authorized external tools or bank integrations can trigger and consume them programmatically.
Related Modules

Kenya PAYE/NSSF/NHIF Payroll
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.

Lead Scoring & Routing Engine
A build-to-order Frappe app that adds rule-based and behavioral lead scoring to ERPNext CRM, then auto-assigns every lead by round-robin, weight, or territory. ECOSIRE scopes, builds, installs, and supports it on your bench.

Leave Management Pro for ERPNext
A build-to-order Frappe app that extends ERPNext leave management with rule-based accrual, carry-forward and encashment, multi-country holiday calendars, team conflict checks and delegated approvers. ECOSIRE scopes, builds, installs and supports it for you — it is not an instant marketplace download.
KSA GOSI & Mudad Payroll Compliance
A build-to-order ERPNext app that adds Saudi payroll compliance — GOSI dual-rate contributions, Mudad WPS file generation, and end-of-service benefit calculation — natively into your Salary Slip and Payroll Entry flow. ECOSIRE builds, installs, and supports it after we agree on your scope.
- GOSI dual-rate contribution engine that resolves Saudi vs non-Saudi nationality and applies the correct employee/employer percentages on Salary Slip validate via a `hooks.py` doc event
- Versioned GOSI rate-table DocTypes with effective-from dates so the mandated July rate change is a data update, not a code redeploy
- Occupational-hazard contribution calculated and posted as its own salary component into Payroll Entry and the GL
- Capped contributory-wage logic applied per GOSI ceiling rules rather than raw gross salary
