7 AM to 11 PM, seven days

+971 58 541 4616info@taxadvisors.ae

TaxAdvisors

Payroll & Gratuity

WPS Codes and Routing Codes in the UAE

Four different numbers are called a WPS code in the UAE. Which is the 9-digit routing code, which is your employer ID, and why no public bank list exists.

wps code uae

In the UAE, "WPS code" usually means one of four numbers. The routing code is nine digits, assigned by the Central Bank of the UAE to a WPS agent. The employer unique ID is thirteen digits, issued by the labour ministry. The employee is identified by the fourteen-digit personal number on the labour card. Rejection codes are five digits and mean something else entirely.

Basis: Ministry of Labour and Central Bank of the UAE, hosted by Habib Bank AG Zurich (UAE)

Routing code
9 digits, assigned by the Central Bank of the UAE to the agent
WPS Companies Responsibility Guide, WPS-CRG01 v3.0.0, EDR field 03 and SCR field 03
Employer unique ID
13 digits, assigned by the labour ministry, zero-padded
WPS-CRG01 v3.0.0, SCR field 02 and error code 00506
Employee personal ID
14 digits, printed on the face of the labour card
WPS-CRG01 v3.0.0, FAQ 5.5.2 and FAQ 5.5.9
Where routing codes are validated
Against the WPS master database held by the system
WPS-CRG01 v3.0.0, EDR field 03
Published master list of bank routing codes
None found on any UAE government source
Checked against u.ae and the two open copies of the WPS specification, 21 August 2026

# Four different numbers, all called a WPS code

The phrase has no single referent, and most of the confusion in a failed salary run comes from two people using it to mean two different things. The Wages Protection System uses four families of number, and only one of them is a routing code.

Every one of these is validated by the system before a wage is recorded as paid, and the validation is unforgiving: a well-formed number that belongs to the wrong field fails as hard as a malformed one.

The numbers people call a "WPS code"
NumberLengthIssued byIdentifiesWhere it appears
Routing code9 digitsCentral Bank of the UAEA WPS agent: a bank, exchange house or financial institutionEDR field 03 and SCR field 03 of the salary file
Employer unique ID13 digitsThe labour ministry (MoHRE)Your establishmentSCR field 02, and the first 13 characters of the file name
Employee personal ID14 digitsThe labour ministry (MoHRE)One workerEDR field 02, and the face of the labour card
Rejection code5 digitsThe Wages Protection SystemWhy a file was refusedThe NAK acknowledgement file returned to your bank

# The nine-digit routing code, and what it actually points at

The routing code is the number the Central Bank of the UAE assigns to an institution so that the Wages Protection System knows where money is going. The Ministry's specification describes it in the employee record as "the 9 digit head office routing code as assigned to the AGENT by CBUAE", validated against the master database the system holds. It is a head-office code, not a branch code, which is why the same nine digits serve every branch of the same institution.

An "agent" here is the Wages Protection System's own term for the bank, exchange house or financial institution that actually pays the worker. It is not a job title and it is not an intermediary you appoint separately: for most employers with fully banked staff, the agent and the employer's bank are the same institution and the same routing code appears twice in the file. For employers whose workers are paid through an exchange house, they are two different institutions and two different codes.

That is the trap. The salary file carries a routing code in two places and they mean opposite ends of the transfer. Field 03 of each employee record is the routing code of the agent where that worker is paid. Field 03 of the salary control record is the routing code of the employer's own bank, the institution being debited. Copying one into the other produces a file that either fails the master-database check or, worse, describes a payment route that was never intended.

Four different UAE numbers are all called a "WPS code": 9, 13, 14 and 5 digits, issued by three different bodies Four numbers distinguished by length and issuer. The routing code is 9 digits, assigned by the Central Bank of the UAE, and identifies a WPS agent — a bank, exchange house or financial institution; it appears in EDR field 03 and SCR field 03. The employer unique ID is 13 digits, issued by the labour ministry MoHRE, identifies your establishment, and appears in SCR field 02 and as the first 13 characters of the file name. The employee personal ID is 14 digits, also issued by MoHRE, identifies one worker, and appears in EDR field 02 and on the face of the labour card. A rejection code is 5 digits, produced by the Wages Protection System itself, says why a file was refused, and comes back in the NAK acknowledgement file. Lengths from the WPS Companies Responsibility Guide, WPS-CRG01 v3.0.0. LENGTH IS WHAT TELLS THEM APART 9 Routing code Central Bank of the UAE The agent bank — EDR field 03, SCR field 03 13 Employer unique ID MoHRE Your establishment — SCR field 02 and file name 14 Employee personal ID MoHRE One worker — EDR field 02, and the labour card 5 Rejection code The system itself Why a file was refused — in the NAK file returned
Ask for "the WPS code" and you will be given one of four numbers. Count the digits: 9 is the agent's routing code from the Central Bank, 13 is your establishment's ID from MoHRE, 14 is one worker's personal number, and 5 is not an identifier at all — it is the system telling you why it refused the file. Lengths, issuers and field positions from the WPS Companies Responsibility Guide, WPS-CRG01 v3.0.0.

# Why there is no public list of WPS routing codes for UAE banks

This is the single most-searched version of the question, and the honest answer is that we could not find a published master list and will not reproduce an unofficial one. What we checked, on 21 August 2026: the UAE Government Portal's page on payment of wages, which sets out the Wages Protection System obligation and the penalty ladder but carries no routing table; and both openly hosted copies of the system's own file specification, which describe the routing code as validated against a master database held inside WPS rather than published. The Central Bank of the UAE's own site returns an access error to automated requests from this network, so we cannot state what it does or does not publish: only that no government-published list was reachable. The practical consequence is straightforward. Your routing code is issued to you as part of onboarding, by the bank or exchange house that will act as your agent, and it belongs in your WPS registration pack alongside your employer unique ID.

Ask for it in writing, on the institution's own letterhead or in its corporate banking portal, and reconcile it against the first file that is accepted rather than the first file that is sent. Routing codes copied from a blog post, a payroll-software help page or a competitor's sample file are the wrong place to start. Institutions merge, are absorbed and are rebranded; the codes attach to the institution the Central Bank recognises, not to the brand on the branch. An out-of-date nine-digit code is not obviously wrong on the page, which is precisely what makes it expensive.

# Your employer unique ID, and where to find it

The employer unique ID, often called the establishment ID or company code, is the thirteen-digit number the labour ministry assigns to your establishment. It is the number the Wages Protection System uses to decide whether the wages of your workers have been paid, and it is therefore the number that the entire compliance record hangs from. The specification is precise about its shape. It is validated against the master database, it must be padded with leading zeros where it is shorter than thirteen digits, and the system's own rejection code 00506 reads "Employer ID is invalid and it must be a valid 13 digit number". Losing a leading zero in a spreadsheet is one of the two or three most common causes of a rejected file, because the number looks correct to a human reader and is one character short to the validator. It appears twice in every submission: in field 02 of the salary control record, and as the first thirteen characters of the file name.

Those two must agree. The Ministry's guide notes that the establishment ID is printed on documents the ministry has already issued to you, so the reliable source is your own establishment file rather than a re-typed copy. Group structures are the other place this goes wrong. The system will not accept employees of one employer mixed into another employer's file: the guide states that files mixing employers are rejected outright, so a group with four licences sends four files with four employer IDs, however unified the HR function is.

# The employee's fourteen-digit personal number

Each worker is identified in the salary file by the personal number issued by the labour ministry: the fourteen-digit figure printed on the face of the labour card. The specification is emphatic that no substitute works: asked which number to use, it answers that the personal ID is to be used and that "any other number will fail validation". That rules out the numbers employers reach for first. It is not the Emirates ID number, not the passport number, not the visa or residence file number, and not your own internal employee code. The current bank reference allows the field to run from fourteen up to thirty-five characters, which reflects later identifier formats, but the fourteen-digit personal number remains the reliable value. UAE nationals are inside this, not outside it. The Ministry's guidance states that the same personal ID applies to Emirati staff and that a national who does not hold a labour card will need to obtain one. Nationality changes what happens to pensions and end-of-service entitlement; it does not change how a person is identified to the Wages Protection System. One employee cannot appear twice in the same file. If a worker needs a correction and a supplementary payment in the same month, that is two files, not two records.

# Rejection codes: reading what the system sent back

When the Wages Protection System refuses a file, the response comes back as a NAK, a rejected-file acknowledgement, carrying a five-digit code and a short description, which your bank generally forwards to the email address on your WPS registration. The codes are the fastest diagnosis available, and they separate a formatting problem from an identity problem in one line. The list below is from the Ministry and Central Bank specification. Read it as indicative: the guide itself states that the codes are valid as at publication, that additions and deletions are possible, that they are issued to banks, exchange houses and third-party providers from time to time, and that updating the documents is at the Central Bank's sole discretion. Your agent holds the current list.

Representative WPS rejection codes returned in a NAK file
CodeWhat it meansWhere to look
00001Invalid file formatLine endings, separators or non-ASCII characters
00002Invalid file extensionThe file is not .SIF
00003Invalid file naming conventionThe 13-digit employer ID, date and time prefix
00006Duplicate file nameA file with that timestamp was already accepted
00007Invalid amount fieldA negative, blank or non-numeric pay figure
00008Invalid date format, it should be YYYY-MM-DDPay start, pay end or file creation date
00009Invalid numeric, this field should be numericA routing code or count field containing text
00506Employer ID is invalid and must be a valid 13-digit numberLost leading zeros in the employer unique ID
00606Employee ID is invalid and must be a valid 14-character stringA substituted Emirates ID or internal staff number
00610Employer ID does not exist for that employee IDA worker registered to a different establishment

# Confirming your three codes before the first live salary file

Every code on this page is validated inside the Wages Protection System against a database you cannot read, so the only reliable confirmation is an accepted file. Do that confirmation deliberately, on a cycle where a rejection is survivable, rather than discovering it on the last working day of a month.

The sequence below is what a clean onboarding looks like. It exists because each of the three identifiers fails in a different way: the routing code fails against the master database, the employer ID fails on padding, and the employee personal number fails per line.

  1. Get the agent routing code in writing from the institution itself

    Ask your bank or exchange house for the nine-digit head office routing code it uses for Wages Protection System transfers, on its own letterhead or from its corporate banking portal. Do not accept it verbally and do not take it from a payroll vendor's help page, institutions merge and rebrand, and a stale nine-digit code reads as correct until a file fails.

  2. Get the employer's bank routing code separately, even if it is the same institution

    The salary control record carries the routing code of the account being debited, which is a different question from where the workers are paid. Where staff are banked with your own bank, the two codes coincide and the same nine digits appear twice. Where any staff are paid through an exchange house, they do not. Ask for both and label them before anyone builds a file.

  3. Take the thirteen-digit employer ID from your own establishment file, as text

    Read it off a document the labour ministry issued to you rather than from a re-typed copy, and store it as a text field with its leading zeros intact. This is the single identifier that a spreadsheet will silently damage, and rejection code 00506 is the result.

  4. Collect the fourteen-digit personal number for every worker, including UAE nationals

    It is printed on the face of the labour card. Reconcile the list against your establishment's ministry register before the first submission: a worker registered to a different establishment produces a per-line identity failure that the file name and the totals will not reveal.

  5. Submit a full, live file early enough to rebuild it inside the same cycle

    There is no test mode you can rely on as proof. Lodge the real file with enough working days in hand that a NAK can be read, the cause fixed and a fresh file sent before the wage due date. Keep the acknowledgement: acceptance, not submission, is the event that discharges the obligation.

  6. Reconcile the accepted file against what actually left the account

    Acceptance means the system took the file, not that every worker was paid. Match the control record total to the debit on your statement and to the credits your agent reports, and treat any difference as an open item rather than a rounding artefact.

# Codes we will not publish

We will not give you a bank-by-bank routing code table. No UAE government source we could reach publishes one, the codes are validated against a database inside the system rather than against anything printed, and a stale nine-digit number is invisible until a payroll run fails. Ask your agent. We will not tell you your employer unique ID, and there is no public lookup for it that we can verify. It comes from your own establishment file with the labour ministry. We will not restate a fine figure here. Late or missing wage transfers escalate on a published ladder under Ministerial Resolution No. 340 of 2026, work permits are suspended, then the establishment's file, with the consequences widening by headcount, and that ladder belongs on one page, kept current, rather than repeated in four places where three copies quietly go out of date. The version circulating on payroll-software sites is generally the superseded 2022 schedule.

Sources and legal basis

Legislation and decisions1

  • Ministerial Resolution No. 340 of 2026 concerning the Wage Protection System

Authorities, systems and registers1

  • Ministry of Human Resources and Emiratisation (MoHRE)

Terms used13

  • 9-digit Central Bank routing code
  • 13-digit employer unique ID (establishment ID)
  • 14-digit employee personal number (labour card)
  • Central Bank of the UAE
  • Wages Protection System (WPS)
  • WPS agent (bank, exchange house or financial institution)
  • Wages Protection System Companies Responsibility Guide, WPS-CRG01 version 3.0.0
  • Salary Information File (SIF)
  • Employee Detail Record (EDR) field 03
  • Salary Control Record (SCR) field 02 and field 03
  • NAK rejected-file acknowledgement
  • Rejection code 00506 (invalid 13-digit employer ID)
  • Rejection code 00606 (invalid 14-character employee ID)
  1. Wages Protection System — Companies Responsibility Guide, WPS-CRG01 version 3.0.0 (21 January 2010): the 9-digit CBUAE routing code (EDR 03, SCR 03), the 13-digit employer ID (SCR 02), the 14-digit personal number (FAQ 5.5.2 and 5.5.9) and the NAK error code list (section 7). Read 21 August 2026.Ministry of Labour and Central Bank of the UAE, hosted by Habib Bank AG Zurich (UAE)
  2. Customer instruction and Salary Information File creation guidelines — current field reference confirming the 9-digit agent routing code and the 14-to-35 character employee identifier. Read 21 August 2026.Dubai Islamic Bank
  3. Payment of salaries/wages — the Wages Protection System obligation, the wage due date and the escalation ladder under Ministerial Resolution No. 340 of 2026The Official Portal of the UAE Government (u.ae)
  4. Work permits — non-compliance with the Wages Protection System as a ground to refuse, decline to renew or cancel work permitsThe 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.

FAQ Answers to the questions people actually ask

Frequently asked questions

What is a WPS code in the UAE?

Four different numbers go by that name. The routing code is nine digits and identifies the bank or exchange house that pays the worker. The employer unique ID is thirteen digits and identifies your establishment to the labour ministry. The employee is identified by the fourteen-digit personal number printed on the labour card. Rejection codes are five digits and explain why a salary file was refused.

What is the WPS routing code in the UAE?

A nine-digit head office code the Central Bank of the UAE assigns to a Wages Protection System agent, meaning the bank, exchange house or financial institution through which wages are transferred. It is validated against the master database the system holds. It is not an IBAN, not a SWIFT code and not a branch code, and the same nine digits cover every branch of the institution.

Is there a list of WPS routing codes for UAE banks?

No published list was reachable from any UAE government source when this was checked on 21 August 2026. The routing code is issued to an employer by its own bank or exchange house during Wages Protection System onboarding and is validated inside the system rather than against a printed table. Get it in writing from your agent rather than copying it from a third-party guide.

Where do I find my WPS employer ID?

The thirteen-digit employer unique ID comes from the documents the labour ministry has already issued to your establishment, not from a public lookup. It must be padded with leading zeros to reach thirteen digits, and it appears both inside the salary control record and as the first thirteen characters of the salary file name. Those two must match exactly.

Which employee number goes in a WPS file, the Emirates ID or the labour card number?

The labour card number. The specification answers this directly: the fourteen-digit personal number issued by the labour ministry is to be used, and any other number will fail validation. That rules out the Emirates ID, the passport number, the visa or residence file number and your own internal staff code, all of which are the numbers employers reach for first.

What does WPS error 00506 mean?

The employer identifier in your salary control record is not a valid thirteen-digit number. In practice it almost always means leading zeros were lost, usually by a spreadsheet that read the identifier as a number rather than as text. The value still looks right to a human reader and is a character or two short to the validator. Repad it to thirteen digits and resubmit.

Can one WPS file cover more than one company in a group?

No. The specification rejects a file that mixes employers outright, so a group holding four trade licences sends four salary files carrying four employer unique IDs, however unified the HR function is. The same rule works at employee level: one worker may not appear twice in the same file, so a correction and a supplementary payment in the same month are two separate files.

Do UAE nationals need a WPS personal number?

Yes. The ministry's guidance states that the same fourteen-digit personal identifier applies to Emirati staff, and that a national who does not hold a labour card will need to obtain one. Nationality changes what happens to pensions and to end-of-service entitlement; it does not change how a person is identified to the Wages Protection System or whether their wage must transfer through it.

Next

Continue reading

Ask

Have a question this page did not answer?

Every rule on this page is published free, with the instrument it rests on, so you can act on it yourself. When you would rather hand it over, the three channels opposite reach a person directly.

Need to discuss this?

Text us, or call now

If you want guidance on your own position rather than the general rule, send a text or call. You get a person, not a ticket, any time between 7 am to 11 pm, seven days. Say what your licence is and what the deadline is and you will usually have an answer in the same conversation.

Call +971 58 541 4616 Text us on WhatsApp Email us