- Home
- Apps
- SaaS Tools
- Saudi Arabia Payroll (GOSI, WPS/Mudad)
Illustrative previewKSA-localized Odoo payroll: GOSI contributions, Mudad/WPS export, end-of-service, and expat vs.
Saudi national salary structures.
What is Saudi Arabia Payroll (GOSI, WPS/Mudad)?
KSA-localized Odoo payroll: GOSI contributions, Mudad/WPS export, end-of-service, and expat vs. Saudi national salary structures. Built to order by ECOSIRE for Odoo 17, 18, 19 — 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 Odoo.
- 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
- Odoo Compatibility
- Odoo 17, Odoo 18, Odoo 19
- Editions
- Enterprise & Community
- License
- Licence confirmation required
- Python Requirement
- Python 3.10+
- Database
- PostgreSQL 12+
About this Product
Running payroll in the Kingdom means answering to GOSI, the Wage Protection System, Mudad, Qiwa, and the Saudi Labor Law all at once — and Odoo core payroll knows none of them. This is a build-to-order Saudi Arabia Payroll module that ECOSIRE designs, builds, installs, and supports for your specific establishment structure. It is not an instant apps.odoo.com download; it is a purpose-built localization delivered on your Odoo 17, 18, or 19 database in one working week.
At its heart is a KSA-aware payroll engine built on Odoo's HR Payroll framework (hr.payslip, hr.salary.rule, hr.contract). We add GOSI contribution logic that applies the correct Saudi-national and non-Saudi (expat) rates — including the split between employee and employer portions and the Occupational Hazards branch — as computed fields with proper @api.depends dependencies so every payslip line recalculates cleanly when contracts or salary structures change. End-of-service award (ESB) is modeled per Saudi Labor Law tenure brackets (the one-half-month and one-month tiers, resignation vs. termination handling), so final settlements are defensible, not spreadsheet-guessed.
Compliance output is first-class. The module generates the Mudad / WPS salary file in the layout your bank or the Mudad platform expects, driven by validated employee IBAN, GOSI number, and Iqama/National ID fields we add to hr.employee. Payslips, GOSI schedules, and settlement statements are produced as bilingual (Arabic/English) QWeb PDF reports that respect right-to-left rendering. Distinct expat and Saudi-national salary structures let you keep allowances, deductions, and contribution rules cleanly separated, while Nitaqat / Saudization tracking fields surface your Saudi headcount ratio directly in Odoo for workforce planning.
Everything ships as a proper Odoo addon: a clean __manifest__.py declaring dependencies (hr_payroll, hr_contract, and the KSA localization where relevant), models under models/, access control via ir.model.access.csv plus record rules so HR officers see only their company's payslips, list/form/search views in XML (with OWL components where interaction warrants), automated actions for month-end payroll reminders, and JSON-RPC/XML-RPC endpoints so your bank-integration or attendance systems can push and pull payroll data. It works on Community or Enterprise — we adapt the build to your edition and confirm compatibility with your installed localization during discovery. You get the source code, you own it, and ECOSIRE stands behind it with a support and bug-fix window after handover.
What you get
- Complete, installable Odoo module (source code) with __manifest__.py, models, views, security rules, and QWeb reports — delivered to your repository and installed on your database
- Configured GOSI rate tables, expat and Saudi-national salary structures, and statutory allowance/deduction rules matched to your establishment
- Working Mudad / WPS export tuned to your bank's or the Mudad platform's file specification, validated against sample employee data
- Data migration or setup: employee GOSI numbers, Iqama/National IDs, IBANs, and nationality flags mapped into the new fields
- Bilingual (Arabic/English) payslip, GOSI schedule, and end-of-service report templates ready for production printing
- Admin and HR user documentation plus a technical README covering salary-rule logic, configuration, and the WPS file mapping
- A live training session (recorded) for your HR/payroll team covering month-end run, WPS generation, and settlement processing
- A defined post-handover support and bug-fix window, with agreed response times and a paid path for future Odoo version upgrades or regulation changes
Who this is for
HR & Payroll Manager at a Saudi enterprise
Owns monthly payroll and is accountable for GOSI accuracy, on-time WPS submission, and correct end-of-service settlements. Needs the calculations to be right and defensible without maintaining fragile spreadsheets alongside Odoo.
Finance Controller / CFO of a KSA group
Runs several GOSI-registered entities and wants labor-cost, GOSI liability, and Nitaqat headcount visibility inside Odoo rather than in disconnected files. Cares about audit trails, per-company separation, and defensible compliance.
Odoo implementation partner serving GCC clients
Delivers Odoo to Saudi customers and needs a proven, well-structured KSA payroll localization to drop into projects instead of rebuilding GOSI/WPS logic each time. Values clean code, security rules, and version compatibility they can support.
How Saudi Arabia Payroll (GOSI, WPS/Mudad) Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| GOSI contribution logic (Saudi vs. expat rates) | Built-in as computed salary rules, split employee/employer/Occupational Hazards | Possible but re-derived from scratch each time | Varies; often generic or outdated rate handling | Not included |
| Mudad / WPS salary file export | Tuned to your exact bank/Mudad layout and validated on sample data | Buildable but a large, error-prone effort | Partial support | Not included |
| End-of-service award per Saudi Labor Law | Modeled per tenure brackets with resignation/termination handling | Depends entirely on developer knowledge of the law | Partial support | Not included |
| Expat vs. Saudi-national salary structures | Included | Buildable with effort | Partial support | Partial support |
| Nitaqat / Saudization tracking | Dedicated fields and headcount-ratio visibility in Odoo | Rarely built unless specifically requested | Not included | Not included |
| Bilingual Arabic/English RTL payslips & reports | QWeb templates with proper RTL rendering | Extra design and QWeb work per project | Partial support | Partial support |
| Built, installed & supported for you | Full build, config, training, and support window included | You hire and manage the developers | Download only; support is best-effort | Not included |
| Odoo 17 / 18 / 19, Community or Enterprise | Included | Depends on the build | Partial support | Included |
Frequently Asked Questions about Saudi Arabia Payroll
Is this an instant download I can install myself right now?
No. This is a build-to-order module that ECOSIRE builds, configures, and installs for your specific establishment. After purchase we run a short discovery on your Odoo edition, bank/WPS file format, and establishment structure, then deliver and install a tailored module on your database. It is not an off-the-shelf apps.odoo.com download.
How long is delivery, and what is the lead time?
Typical delivery is one working week from the discovery call, depending on the number of salary structures, your WPS/Mudad file specification, and how much employee data needs mapping. We confirm a firm timeline after discovery and keep you updated through build, testing on a staging copy, and go-live.
How does support and updates work after handover?
Every build includes a defined post-handover support and bug-fix window with agreed response times. GOSI rates, WPS layouts, and labor-law rules change over time — we offer a paid maintenance and update path to keep the module current and to migrate it forward when you upgrade Odoo. You also receive the full source code, so you are never locked in.
Which Odoo versions and editions are supported?
We build and test against Odoo 17, 18, and 19, on either Community or Enterprise. During discovery we confirm compatibility with your installed HR/localization apps and adapt the module to your edition — the GOSI, WPS, and end-of-service logic works the same on both.
Will GOSI rates be correct for both Saudi nationals and expats?
Yes. The engine applies the correct contribution rates for Saudi nationals and non-Saudi employees, with the employee, employer, and Occupational Hazards portions split out as computed salary rules. A change to an employee's nationality flag, contract, or salary structure automatically recomputes their GOSI lines on the next payslip.
Can it export the exact WPS/Mudad file our bank requires?
Yes. We tune the Mudad / WPS export to the specific file layout your bank or the Mudad platform expects, driven by validated IBAN and GOSI registration fields. We validate the output against sample data during build so your first real submission goes through cleanly.
Can it integrate with our attendance or bank-upload systems?
Yes. The module exposes payslip and WPS data over Odoo's JSON-RPC / XML-RPC API, so external attendance systems, bank-file upload tools, or dashboards can push and pull data. We scope any specific integration during discovery and can build connectors as part of the engagement.
Related Modules

Sales Subscription
A build-to-order Odoo module that turns your products into recurring subscription plans directly inside sales — ECOSIRE scopes, builds, installs, and supports it for your Odoo 17/18/19 instance. This is a made-to-order engagement, not an instant download.

Sales Target & Quota Management
Set, track and gamify sales quotas by rep, team and period with live attainment dashboards. Built-to-order for Odoo 17/18/19 by ECOSIRE.

Save Payment Token In Back-end
A build-to-order Odoo module that lets your team securely capture card details submitted through website contact and intake forms and store them as gateway payment tokens in the back-end for later charging. ECOSIRE scopes, builds, installs, and supports it — nothing is charged or stored until you confirm the design.

Scheduled Report Email Subscriptions
Automatically email any Odoo report or dashboard as a PDF or XLSX attachment to defined recipients on a daily, weekly, or monthly cadence — with per-recipient data scoping, dynamic filters, and full delivery logging. Built, installed, and supported by ECOSIRE.
Saudi Arabia Payroll
KSA-localized Odoo payroll: GOSI contributions, Mudad/WPS export, end-of-service, and expat vs. Saudi national salary structures.
- GOSI contribution calculation with correct Saudi-national and non-Saudi (expat) rates, split into employee, employer, and Occupational Hazards portions as computed salary rules
- Mudad / WPS salary file export in the layout required by your bank or the Mudad platform, driven by validated IBAN and GOSI number fields
- End-of-service award (ESB) computed per Saudi Labor Law tenure brackets, with resignation-vs-termination handling and pro-rated final settlements
- Separate expat and Saudi-national salary structures (hr.payroll.structure) keeping allowances, deductions, and contribution rules cleanly isolated