Payroll & Gratuity
The WPS Salary File in the UAE
What a UAE WPS salary file contains, record by record: the EDR, the variable-pay line, the SCR totals, the 25-character file name, and why Excel is not a SIF.
wps file uae
A UAE WPS salary file is a SIF, or Salary Information File: a plain-text, comma-separated file with no header row. It carries one Employee Detail Record per worker, an optional variable-pay line for allowances, and a single Salary Control Record holding the totals. The file name is the 13-digit employer ID plus the creation date and time, with a .SIF extension.
Basis: Ministry of Labour and Central Bank of the UAE, hosted by Habib Bank AG Zurich (UAE)
- File type
- ASCII, comma-separated values, each record ended with CRLF
- Record order inside a SIF
- One or more EDR records, then one SCR record last
- File name
- 13-digit employer ID + YYMMDD + HHMMSS, extension .SIF
- Routing code length
- 9 digits, assigned by the Central Bank of the UAE
- Who issues the layout
- The Ministry and the Central Bank, distributed through WPS agents
- Payment currency
- AED only
Wages Protection System Companies Responsibility Guide, WPS-CRG01 v3.0.0, section 6.6.1
WPS-CRG01 v3.0.0, section 6.4, "General note on WPS files"
WPS-CRG01 v3.0.0, section 6.3.1
WPS-CRG01 v3.0.0, EDR field 03 and SCR field 03
Dubai Islamic Bank, SIF creation guidelines: "the standard format required as per Ministry of Labour"
WPS-CRG01 v3.0.0, SCR field 09 and FAQ 5.5.4
#What a SIF is, and who actually publishes the layout
The Wages Protection System does not accept a payslip, a spreadsheet or a bank template. It accepts one artefact: a Salary Information File, universally called a SIF after its file extension. It is ASCII text, the records are comma-separated values, and every record is terminated with a carriage return and line feed. There is no header row and no column titles — position in the line is the only thing that identifies a field.
The format is set by the Ministry and the Central Bank of the UAE, not by the bank you send it to. The Ministry of Human Resources and Emiratisation does not publish the specification as a public download on its own site; it is issued to WPS agents, and the agents republish it to their corporate customers. That is why every copy you find is on a bank's domain rather than a government one.
Two of those copies are open and readable. Habib Bank AG Zurich hosts the Wages Protection System Companies Responsibility Guide, document code WPS-CRG01, version 3.0.0, published 21 January 2010 and valid from 1 February 2010 — the original Ministry of Labour and Central Bank specification, complete with record layouts and error codes. Dubai Islamic Bank publishes a shorter field reference that cites a later document, UAEWPS ENTAUX 998 — Corporate Responsibility Guide, V2015-01. Both were open and readable on 21 August 2026.
Read them as evidence, not as gospel. The 2010 guide is stamped "Proprietary & Confidential" on every page even though banks host it publicly, its own section 7 records that the Central Bank may add or remove codes at its sole discretion, and the two versions already disagree with each other on field lengths. The layout below is the shape you should expect; the authoritative copy is the one your own agent gives you when you are onboarded.
#The Employee Detail Record: one line per worker
The EDR is the line that pays a person. There is exactly one per employee per file — the Ministry's guide is explicit that multiple records for the same employee cannot be placed in the same SIF — and the whole file is rejected if that rule is broken.
The fields below are the current reference set as published by Dubai Islamic Bank. Where the 2010 Ministry guide differs, the difference is called out underneath.
| # | Field | Max size | Type | What it must contain |
|---|---|---|---|---|
| 01 | Record type | 3 | Alpha | The literal text EDR |
| 02 | Employee unique ID | 35 | Alphanumeric | The identifier issued by the labour authority. Can vary in length from 14 to 35 characters |
| 03 | Routing code of the agent | 9 | Numeric | The 9-digit head office routing code assigned to the agent by the Central Bank, validated against the WPS master database |
| 04 | Employee account with the agent | 23 | Alphanumeric | The account number the agent gave for that employee, in IBAN form |
| 05 | Pay start date | 10 | Date | YYYY-MM-DD, and not earlier than 2010-10-01 |
| 06 | Pay end date | 10 | Date | YYYY-MM-DD, later than field 05 and in the same month as it |
| 07 | Days in period | 4 | Numeric | Calendar days being paid, computed as field 06 minus field 05 plus one |
| 08 | Income fixed component | 15 | Numeric | A valid amount. Send 0.00 if nil. Negative amounts reject the file |
| 09 | Income variable component | 15 | Numeric | A valid amount. Send 0.00 if nil. Negative amounts reject the file |
| 10 | Days on leave for period | 4 | Numeric | Days of unpaid leave in the period, or 0 |
Where the 2010 guide says something different
The original WPS-CRG01 specification sets the employee unique ID at exactly 14 numeric characters, left-padded with zeros, and the employee account field at a maximum of 16 alphanumeric characters that must not be zero-padded. The current bank reference sets them at up to 35 and 23 respectively, the latter being an IBAN. Both cannot be right at once, and the difference is not cosmetic: a 23-character IBAN in a 16-character field is a rejected file.
The 2010 guide also answers a question that still generates support tickets. If you cannot split the month's pay into fixed and variable components, it permits one total value in either field — but it warns that if the Ministry investigates, the burden of proving the breakdown falls on the employer. Splitting the wage properly in the file is cheaper than reconstructing it later.
#The Salary Control Record: the totals that must reconcile
The SCR is a single line and it is the last line of the file. It is the employer's own identity, the month being paid, and a set of control totals the system checks against everything above it. The most common cause of a whole-file rejection is not a broken employee record; it is an SCR total that disagrees with the sum of the EDRs by a few fils.
| # | Field | Max size | Type | What it must contain |
|---|---|---|---|---|
| 01 | Record type | 3 | Alpha | The literal text SCR |
| 02 | Employer unique ID | 13 to 35 | Alphanumeric | The employer identifier assigned by the labour authority, validated against the WPS master database |
| 03 | Routing code of the employer's bank | 9 | Numeric | The 9-digit routing code assigned to the bank by the Central Bank. This is the employer's bank, not the employees' agent |
| 04 | File creation date | 10 | Date | YYYY-MM-DD, and not later than the date WPS processes the file |
| 05 | File creation time | 4 | Numeric | HHMM |
| 06 | Salary month | 6 | Numeric | The month being paid. Must match the month in every EDR pay start and end date, or the whole file is rejected |
| 07 | EDR count | 10 | Numeric | The number of employee records in the file |
| 08 | Total salary | 15 | Numeric | Must equal the sum of every fixed and variable component in every EDR |
| 09 | Payment currency | 3 | Alpha | AED. Wages may not be paid in a foreign currency |
| 10 | Employer reference | 35 | Alphanumeric | Optional free text, for your own records |
#The allowance breakdown, and the record most guides omit
The 2010 specification carries no allowance detail: fixed and variable are the only two money fields in the EDR. The current reference adds a separate Employee Variable Pay record, tagged EVP, which sits between the employee's EDR and the file's SCR and breaks the pay down into named heads.
The EVP record repeats the employee unique ID and the agent routing code from the EDR it belongs to, then carries seven amounts, each 15 characters, each mandatory, each sent as 0.00 when it is nil: housing allowance, conveyance allowance, medical allowance, annual passage allowance, overtime allowance, all other allowances, and leave encashment. Negative amounts reject the file, exactly as they do in the EDR.
This matters beyond formatting. The split between basic wage and allowances is the number that drives end-of-service gratuity, and a file that pushes everything into a single fixed component is a file that leaves no contemporaneous record of the split. If your payroll already computes the heads, put them in the EVP line.
#The file name: 25 characters that reject files on their own
The naming convention is fixed and it is unforgiving. The prefix is the 13-digit employer unique ID, then the file creation date as YYMMDD, then the file creation time as HHMMSS. The extension is .SIF. That is 25 characters of name plus the extension, and nothing else — no company name, no month, no version suffix.
Duplicate file names are not allowed, which is why the time element runs to seconds: two files created in the same minute for the same employer must still differ. If you resubmit a corrected file, it gets a new timestamp, not the old name.
The Ministry's error list treats naming as a first-pass check, before any record is read. Code 00003 is "invalid file naming convention", 00002 is "invalid file extension", 00001 is "invalid file format" and 00006 reports that the file name is a duplicate. A file that trips any of those is rejected in its entirety and no wage in it is recorded as paid — which is the point at which a naming typo becomes a Wages Protection System exposure rather than an IT problem.
#"WPS format in Excel": why a spreadsheet is not a salary file
A very large share of people searching for the UAE WPS format want an Excel template, and there is a real answer underneath the question — but it is not the one the search implies.
Excel is a perfectly good place to compute a payroll. It is not a SIF. A .xlsx workbook is a zipped XML package; the Wages Protection System expects flat ASCII with comma-separated records and CRLF line endings. Saving a sheet as CSV and renaming it .SIF gets you closer and still usually fails, because Excel will happily write a header row, reformat a date to DD/MM/YYYY, drop the trailing zeros off 2345.80, strip the leading zeros off a padded employer ID, and quote any field containing a comma. Every one of those is a rejection.
The workable pattern is the one most agents already support: keep the calculation in your spreadsheet or payroll system, then let the agent's own portal or a validated generator produce the file. Dubai Islamic Bank's instructions, for example, have the employer prepare an encrypted SIF in the Ministry's standard format and upload it through the WPS function of the online banking portal, with any rejection notified by email to the registered address. If you must build the file yourself, build it from the field table above with a script that controls the text output, not from a spreadsheet's Save As dialog.
One related search deserves a direct answer: there is no single "WPS salary format" beyond this. The SIF is the format. Everything else — payslip templates, salary certificates, offer letters — is your own document, governed by the employment contract and the Labour Law, not by the Wages Protection System.
#What this page will not give you
We will not publish a downloadable SIF template or a generator. The two published copies of the specification disagree on field lengths, one of them is from 2010, and the Central Bank reserves the right to change the layout and the error codes without republishing anything. A template that is one field-length behind produces files that fail silently against your agent's validator, and we have no way to keep it current.
We will also not tell you what your agent charges. The Ministry's 2010 guide states that no charge was levied on companies for participating in the Wages Protection System at the time it was written, that the Central Bank may set a schedule of charges for banks and agents, and that what your bank or exchange house charges you for processing is negotiable and mutually agreed. That document is sixteen years old. Treat the fee position as a question for your agent, in writing, not as a published rate.
And we will not restate a fine. The current penalty ladder for late or missing wage transfers is on our page covering the Wages Protection System itself, sourced to the Government Portal and Ministerial Resolution No. 340 of 2026; the amounts that circulate on payroll-software blogs are frequently the superseded 2022 figures.
Sources and legal basis
This page relies on
- Salary Information File (SIF)
- Employee Detail Record (EDR)
- Employee Variable Pay record (EVP)
- Salary Control Record (SCR)
- Wages Protection System Companies Responsibility Guide, WPS-CRG01 version 3.0.0
- UAEWPS ENTAUX 998 Corporate Responsibility Guide, V2015-01
- Central Bank of the UAE
- Ministry of Human Resources and Emiratisation (MoHRE)
- Ministerial Resolution No. 340 of 2026 concerning the Wage Protection System
- Federal Decree-Law No. 33 of 2021 on the Regulation of Employment Relationships
- 13-digit employer unique ID
- 9-digit Central Bank routing code
- NAK rejected-file acknowledgement
- ACK accepted-file acknowledgement
- Error code 00003, invalid file naming convention
- Wages Protection System — Companies Responsibility Guide, document code WPS-CRG01 version 3.0.0, published 21 January 2010, valid from 1 February 2010: record formats (section 6.6), file naming (6.3), data types (6.5) and NAK error codes (section 7). Read 21 August 2026.Ministry of Labour and Central Bank of the UAE, hosted by Habib Bank AG Zurich (UAE)
- Customer instruction and Salary Information File (SIF) creation guidelines — the current EDR, EVP, SCR and FDR field reference, citing UAEWPS ENTAUX 998 Corporate Responsibility Guide V2015-01. Read 21 August 2026.Dubai Islamic Bank
- Payment of salaries/wages — the WPS obligation, the due date, the 85 per cent threshold and the penalty ladder under Ministerial Resolution No. 340 of 2026The Official Portal of the UAE Government (u.ae)
- Work permits — MoHRE may refuse to issue or renew, or may cancel, work permits where an establishment is not compliant with the Wages Protection SystemThe Official Portal of the UAE Government (u.ae)
Rates, thresholds and deadlines change. Every figure above is linked to the authority that publishes it — if the two ever disagree, the authority is right and this page is out of date. Tell us and we will fix it.
Frequently asked questions
What is a WPS file in the UAE?
It is the Salary Information File, or SIF, that an employer sends to its bank or exchange house each month so that wages are transferred through the Wages Protection System. It is a plain-text, comma-separated file with one Employee Detail Record per worker and a single Salary Control Record carrying the totals. Nothing else counts as a WPS submission.
What is the UAE WPS SIF file format?
ASCII text, comma-separated, with each record ended by a carriage return and line feed and no header row. One or more EDR lines identify each employee, their agent routing code, account, pay period and fixed and variable pay. An optional EVP line breaks out allowances. A single SCR line, last in the file, carries the employer ID, salary month, record count and total.
What is the WPS file name format in the UAE?
The 13-digit employer unique ID, then the creation date as YYMMDD, then the creation time as HHMMSS, with a .SIF extension. Nothing may be added to that. Duplicate file names are rejected, which is why the timestamp runs to seconds, and an invalid name is rejected before any record inside the file is read.
Can I create a UAE WPS file in Excel?
You can calculate the payroll in Excel, but a spreadsheet is not a SIF. Excel adds header rows, reformats dates, strips leading and trailing zeros and quotes fields containing commas, and each of those causes a rejection. Use your agent's portal or a validated generator to produce the file, or write it with a script that controls the plain-text output directly.
What is the WPS salary format in the UAE?
The SIF is the only salary format the Wages Protection System recognises, and salaries in it must be in dirhams. Payslips, salary certificates and offer letters are separate documents governed by the employment contract and the Labour Law. If a payroll provider offers you a different WPS format, ask which version of the Ministry's file-format guide it is built against.