Skip to main content
KSA GOSI & Mudad Payroll Compliance — A build-to-order ERPNext app that adds Saudi payroll compliance — GOSI dual-rate contri — 1/1Illustrative preview

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.

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

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
Mudad WPS bank-file generation from posted Payroll Entry via a whitelisted server method
Pre-submission compliance validation: IBAN format, GOSI-registered vs paid wage variance, and missing establishment/employee identifiers block file generation with a clear error list
End-of-service benefit (EOSB) calculator DocType applying Saudi labour-law tiers with resignation vs termination proration
GOSI monthly contribution reconciliation report comparing ERPNext-posted contributions against declared amounts, with per-employee deltas
Salary components auto-injected so GOSI and hazard amounts flow natively into net pay, journal entries, and payslip PDFs
Role profiles and DocType permissions restricting WPS generation and rate maintenance to payroll administrators
Scheduler event that flags an upcoming rate change and warns before running payroll against a stale rate
Whitelisted Frappe REST API endpoints for triggering WPS generation and pulling reconciliation data from external tools
Client scripts on Salary Slip and Payroll Entry surfacing a live GOSI/hazard breakdown before submission
Compatible with ERPNext HR / Frappe HR on both v15 and v16, packaged as a standalone Frappe app that layers on top of core Payroll

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

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

CriterionECOSIRECustom BuildCompetitorERPNext Native
GOSI dual-rate (Saudi vs non-Saudi)Built into Salary Slip via doc events, applied automaticallyPossible but you design and maintain the logicOften single-rate or generic, needs heavy tweakingNo GOSI concept at all
July rate updatesVersioned rate DocTypes with effective-from datesManual code or config change each timeDepends on vendor release cadenceNot applicable
Mudad WPS fileGenerated from Payroll Entry with pre-submission checksBuild the file format and validations yourselfMay export a generic WPS, not always Mudad-readyNo WPS output
End-of-service benefit (EOSB)Saudi labour-law tiers with resignation/termination prorationCoded to your interpretation, upkeep on youRarely included or simplifiedNot calculated
GOSI reconciliation reportPosted-vs-declared deltas per employeeBuild the report from scratchUsually not providedNone
Fit to your setupScoped to your establishments and mapping, UAT on stagingFully bespoke but slower and riskier to buildOne-size-fits-all, you adapt to itGeneric payroll only
Delivery & supportone working week, install + training + support window + git handoverDepends on your team's bandwidthInstant download, self-supportIncluded with ERPNext, no KSA compliance
Version supportBuilt and tested for v15/v16 as a standalone appYou own version-compatibility workVaries; upgrade lag commonCore 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.

Request a quote

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

Request a Quotation

Tell us about your KSA GOSI & Mudad Payroll Compliance 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.