Free tool · checked in your browser
Check your WPS salary file before the bank does.
A UAE wage protection system (WPS) salary file, the SIF, has one EDR line per employee and one SCR control line, comma separated, in AED. Choose or paste yours below: the checker lists every line that breaks the published format, from routing codes and IBANs to days paid and the total. Nothing is uploaded.
Choose or paste a file, or try the sample, to see the result here.
This checks the format, not whether your bank accepts the file. It cannot see MOHRE's records, so a well-formed ID or routing code can still be wrong.
What the checker tests
Errors break the published format. Warnings are things one bank guide asks for and another does not, or slips that are usually mistakes, like the same employee twice.
- Lines
- One EDR line per employee and exactly one SCR line, last. No header row, no blank lines, no quote marks. Each line has 10 fields separated by commas.
- IDs and codes
- Employee ID: the 14-digit MOHRE person code (the format allows 14 to 35 characters). Employer ID: the 13-digit MOHRE establishment ID (13 to 35). Routing codes: 9 digits, from the Central Bank's list of WPS agents.
- Accounts
- Up to 23 characters. A UAE IBAN is AE plus 21 digits, and its two check digits must work out.
- Dates and days
- Dates as YYYY-MM-DD. The pay period starts on or after 2010-10-01, ends on or after its start, and stays inside one month. Days in period is end minus start plus 1.
- Money
- Fixed and variable pay as plain numbers with two decimals, like 2345.87. No negatives, commas or currency signs. Currency on the SCR line is AED.
- Control line
- Salary month as MMYYYY, matching every EDR pay period. EDR count equals the number of EDR lines. Total salary equals fixed plus variable pay on every EDR line, to the fils.
- File name
- If you choose a file, its name is checked too: the 13-digit employer ID, then the date and time as YYMMDDHHMMSS, then .SIF.
Sources: the Central Bank runs the UAE Wages Protection System but does not post the file layout on its own site. The rules above come from the layout that WPS agent banks publish: Dubai Islamic Bank's WPS file format guide and Mashreq's WPS file format page. The IBAN rule is the Central Bank's IBAN standard. Checked on 5 November 2026.
What it cannot tell you
- Whether an employee ID, employer ID or routing code exists. Only WPS records hold that; the bank checks it when you submit.
- Whether a non-IBAN account, like a salary card number from an exchange house, is right. It checks the length and characters only.
- Your own bank's extra rules. Some want a fixed employer reference, some reject EVP lines. Ask once and keep the answer with the payroll checklist.
- Whether the salaries themselves are right. It adds up what is in the file; it does not know what you owe.
When the file keeps failing
A rejected file the day before the cut-off is a payroll problem, not a format one: the IDs, accounts and pay rules live in a spreadsheet nobody owns. Mindcat People makes the WPS file from the same monthly run as the salary slips, and we test it with your bank before your first live month.
- Mindcat People: HR and payroll with the WPS file, for UAE and KSA
- Payroll due on the 1st? Who should own the file
Questions
- Is my salary file uploaded anywhere?
- No. The check runs in your browser. The file is not sent to Mindcat or anyone else, and it is not stored. If you have allowed analytics, we count that a check ran and whether it found errors, never what is in the file.
- If the checker finds nothing, will my bank accept the file?
- Not for certain. The checker tests the format: field counts, lengths, dates, sums. Your bank or exchange house also checks each employee ID, routing code and account against WPS records, and some add their own rules. Send the first file of a new setup to your bank as a test.
- What do the EDR and SCR lines mean?
- EDR is the employee detail record: one line per employee with the MOHRE person code, the routing code of the employee's bank or exchange house, the account or IBAN, the pay period, the days paid, fixed and variable pay, and days of unpaid leave. SCR is the salary control record: one line at the end with the employer ID, the employer's bank routing code, the file date and time, the salary month, the number of EDR lines and the total.
- Why does the days field fail when we pay for fewer days?
- In the published format, days in period is the calendar days from pay start to pay end, plus one. Days not paid go in the last field, days of unpaid leave. A file that puts paid days in the days field can be rejected.
Send your result
We work in real estate and right now, leads go cold before anyone replies.