FousMudad
Turn Mudad's wage protection pages into an API
Read your compliance percentage, open violations and wage file status from Mudad's Compliance System with one API call each. A workflow can check every weekday morning for new violations and post them to your HR system while they can still be justified.
Works with your own Mudad account. Fous is an independent product.
What you can build on Mudad
Get compliance information
Build thisReads the Compliance Information page for one month: compliance percentage and status, paid and unpaid laborers, violations and justifications.
- Takes
- Establishment number, month and year
- Returns
- Compliance percentage, compliance status, total laborers, paid, unpaid, Saudi and expat laborers, violated laborers, number of violations, justifications accepted and rejected
List violations
Build thisReads the Violation page: each laborer's violation for a period, its type and status, the GOSI basic wage and the remaining period to justify it.
- Takes
- Establishment number, period (month and year), violation status (optional)
- Returns
- Laborer ID, violation type, period, violation status, GOSI basic wage, remaining period
Check wage file status
Build thisReads the Wage/Settlement Report page for each submitted WPS file, and for a file with errors, the reasons in its error report on the Upload Files page.
- Takes
- Establishment number, month and year
- Returns
- WPS file, submitted by, submitted date, status, laborer records, laborers paid, error report reasons
Justify violations
Build thisOn the Violation page, enters one justification reason for up to 100 laborers' violations and submits it, which sends it to each laborer by text message.
- Takes
- Establishment number, laborer IDs (up to 100), violation type, justification reason
- Returns
- Laborer IDs, violation type, violation status
Automate Mudad with a workflow
A workflow runs your methods as one process, with nobody at the screen. A schedule or a call from your own system starts it, the steps run in order, and the result arrives in your inbox or in the systems you already use.
New violations, sent to your HR team each morning
Build this- Starts
- Every weekday at 8:00 (Asia/Riyadh)
- Step 1
- For each establishment you name, list the violations with status Not processed for the current period.
- Step 2
- Keep the violations that were not there on the last run.
- Step 3
- Post the establishment number, laborer ID, violation type and remaining period to your HR system's webhook.
Wage file check before the upload window closes
Build this- Starts
- On the 20th of every month at 9:00 (Asia/Riyadh)
- Step 1
- For each establishment, check the wage file status for the current month.
- Step 2
- Keep the establishments with no WPS file submitted or a file with errors.
- Step 3
- Email you the list with the reasons from each error report.
Monthly compliance report for every establishment
Build this- Starts
- On the 6th of every month at 9:00 (Asia/Riyadh)
- Step 1
- For each establishment, get the compliance information for last month.
- Step 2
- Summarize which establishments are below the 70% a Compliance Certificate needs and how many violations each has.
- Step 3
- Email you the summary and post the figures to your webhook.
You can run a workflow by hand on every plan, Free included. Schedules and webhook triggers come with the paid plans, from $29 a month.
Once built, one call from your code
Once you have built a method, it is one POST to /v1/runs from your backend, or a tool an AI agent calls over MCP. This is what “Get compliance information” would look like.
curl https://api.fous.com/v1/runs \
-H "Authorization: Bearer $FOUS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"method": "mudad.com.sa/get_compliance_information",
"input": {
"establishment_number": "10-123456",
"month": 10,
"year": 2026
}
}'
{
"status": "completed",
"data": {
"establishment": "Acme Trading",
"establishment_number": "10-123456",
"month": "2026-10",
"compliance_percentage": 86.4,
"compliance_status": "Compliant",
"laborers": {
"total": 44,
"paid": 38,
"unpaid": 6,
"saudi": 12,
"expat_inside_ksa": 31,
"expat_outside_ksa": 1
},
"violations": {
"violated_laborers": 6,
"number_of_violations": 7,
"justifications_accepted": 2,
"justifications_rejected": 1
}
}
}
An example with invented data, not a ready-made endpoint. The method exists in your organization once you build it, and its name, inputs and fields follow your request.
Mudad’s own options
Mudad's pages describe no API for employers, and its FAQ says the Payroll Management System cannot integrate with an ERP such as Oracle or SAP. Its own route to automation is that system: pay salaries through Mudad and the wage protection file is uploaded for you. Otherwise a signed wage file from your bank is uploaded in the Compliance System by hand.
| Option | What it covers | What it takes |
|---|---|---|
| Payroll Management System | Pays salaries from your linked bank account and uploads the wage protection file automatically after each payroll. | 1 to 1,000 employees and a supported bank. Standard is free; Advanced is 460 to 920 SAR a year by headcount. |
| Bank-signed wage file | Your bank produces the signed wage file; you upload it on the Upload Files page of the Compliance System. | A request to your bank. Files in .txt, at most 4 MB each and up to 5 in one upload. |
| Excel and PDF downloads | Most Payroll Management System data, and four reports: salary record, payroll statement, variance and changes. | A Payroll Management System account. |
| The Compliance System by hand | Compliance Information, violations and justifications, wage file uploads and error reports, the Compliance Certificate. | Free registration; the owner or the establishment's authorized person uploads. |
Read on November 12, 2026: Mudad FAQs, Mudad wage protection program, Mudad Payroll Management System.
Signing in to Mudad
Mudad signs you in with your National ID or Iqama number as the username and a password, then a 4-digit code sent by text message to the mobile number registered in Absher or Mudad, valid for 4 minutes. With Fous you sign in through Mudad's own sign-in with your own account, and the login is sealed with AES-256 and never returned by the API.
Worth knowing
- A 30-day upload window
- Wage protection files are uploaded within 30 days starting from the first day of each month. A monthly file is processed at once; for a weekly file, violations and the compliance percentage appear on the 5th of the next month.
- Justifications wait for the laborer
- A justification goes to the laborer by text message, who has 3 days to accept or reject it before the system processes it. The compliance percentage is recalculated only then. One reason covers at most 100 laborers.
- One session per account
- Signing in with the same credentials elsewhere asks you to log out of the existing session, and moving between the Payroll Management System and the Compliance System logs you out of the other.
- Branches upload through the main entity
- Branch employees appear through the GOSI integration, and the wage protection file is uploaded from the main entity, up to 5 files in one transaction.
More in Government: Middle East and Africa
- CAC Company Registration Portal
- CIPC eServices
- GDRFA Dubai Smart Services
- eTIMS
- Rev360
- Qiwa
- ICP Smart Services
- KRA iTax
- SARS eFiling
- SIMPL
- Egyptian Tax Authority e-Services
- ZATCA e-Services
- uFiling
- EmaraTax
Other industries: PUE ZUS, Chorus Pro, Texas811 Portal, NatWest Intermediary Solutions, HUD Secure Systems, BidNet Direct.
Frequently asked questions
Not one that Mudad describes for employers. Its FAQ says the Payroll Management System cannot integrate with an ERP such as Oracle or SAP. Its own automation is that system, which uploads the wage protection file after each payroll; otherwise you upload your bank's signed file by hand.
When its compliance rate is 70% or higher over the past 12 months, or 50% or higher for a new entity. You issue it from the Certificates icon in the Compliance System.
In the error report, an Excel file shown next to the uploaded file on the Upload Files page. Typical reasons are a repeated or missing bank signature, a missing establishment number or a currency other than Saudi riyals.
The Home page shows the current month and the Compliance Information page shows the previous six months. A monthly workflow that posts the figures to your webhook keeps a longer history in your own system.
No. Fous is an independent product. You build methods on Mudad with your own account, and a method reads and does only what that account can.
Put Mudad behind an API call
Describe one job in Studio and see the method it builds, with 100 credits a month and no credit card, or book a demo and bring the sites your team signs in to.

Read nextCAC Company Registration PortalCIPC eServicesGDRFA Dubai Smart ServicesPUE ZUSHow methods workHow workflows run
Fous is an independent product: it is not affiliated with, endorsed by or sponsored by the operator of Mudad (Mudad). The name is used only to say which system this page is about. Something here wrong or out of date? Write to legal@fous.com.