International · Validation

Irish PPS number validator.

Check the format and modulus-23 check letter of an Irish Personal Public Service Number (PPSN), including the optional second letter added to new numbers from 2013. Format and checksum only — it cannot tell you a number was issued.

How it works: multiply the 7 digits by 8, 7, 6, 5, 4, 3, 2 and, if the second letter is A, B or H, add 9 × its alphabet position (A=1, B=2, H=8). Take the total mod 23 and look it up in the alphabet W, A, B, C … V (0 = W, 1 = A). That letter must match position 8.

Source: python-stdnum (ie/pps.py, ie/vat.py), cross-checked against Wikipedia's PPSN check-character sectionVerified 29 September 2026

Advertisement

Inputs

Enter 7 digits, a letter, and an optional second letter. Spaces and hyphens are ignored.

Result

Enter a PPS number and press Check.

How the PPS number check letter works

Ireland's Personal Public Service Number (PPSN) is 7 digits followed by a check letter and, on many numbers, a second letter. The check letter in position 8 is calculated from the digits, so many typos and digit swaps can be caught mathematically.

The algorithm, as python-stdnum and Wikipedia describe it
StepWhat happens
1Multiply the 7 digits by the weights 8, 7, 6, 5, 4, 3, 2 and add them up
2If the second letter is A, B or H (numbers issued from 2013), add 9 × its alphabet position (A=1, B=2, H=8). A second letter of W, T or X, or none, adds nothing
3Take the total mod 23
4Map the remainder to a letter: 0 = W, 1 = A, 2 = B … 22 = V
5That letter must equal the check letter in position 8

Worked example from Wikipedia: 1234567 with second letter A gives 8+14+18+20+20+18+14 = 112, plus 9 = 121; 121 mod 23 = 6, which is F, so the number is 1234567FA. python-stdnum's test numbers 6433435F, 6433435OA and 6433435IH also pass this tool.

Checksum check only — not a Revenue lookup

A passing checksum only means the letters are consistent with the digits. It does not confirm the number was ever issued or belongs to anyone. Revenue and the Department of Social Protection offer no public lookup, so only they, or the person it was issued to, can confirm a PPS number is real.

Sources: python-stdnum ie/pps.py, ie/vat.py and Wikipedia: Personal Public Service Number.

Format and checksum only — cannot confirm a PPS number was issued

This tool checks the format and modulus-23 check letter entirely in your browser. It does not query Revenue or any register, and a passing result is not proof the number was issued or belongs to anyone. Nothing you type is transmitted, stored, or logged.

Advertisement
Advertisement
Listening…