HHelpje

French Social Security Number (NIR) Validator

Check a French social security number NIR (15 digits) — control key verification.

Enter a NIR number to validate it.

NIR validator — check a French social security number online

Our free NIR validator verifies the validity of a French social security number (numero de securite sociale) in a fraction of a second. The tool checks the 2-digit check key (cle) using the algorithm 97 - (N mod 97), automatically handles the special department codes for Corsica (2A, 2B), and identifies basic information encoded in the number: gender, year and month of birth.

The NIR is used to identify people in France's social security, healthcare, and tax systems. Whether you are entering an employer's, employee's, or your own Vitale card number, this NIR validator will quickly help you make sure the number contains no typo.

Full privacy — local computation

Validation takes place entirely in your browser — not a single digit of the entered NIR number is sent to any server. You can validate numbers offline as well. Your data is safe.

Frequently asked questions

What is a NIR number (numero de securite sociale)?
NIR (Numero d'Inscription au Repertoire) is the French social security number, also known as numero de securite sociale. It consists of 13 digits plus a 2-digit check key (15 characters in total). The number is assigned by INSEE and uniquely identifies every natural person registered in France.
How is the NIR number structured?
The NIR number has 15 characters: gender (1 digit: 1=male, 2=female, 3/4=persons born abroad, 7/8=special), year of birth (2 digits), month of birth (2 digits, 01-12 or >= 20 for certain categories), department (2 characters, can be 2A or 2B for Corsica), municipality (3 digits), and serial number (3 digits). The last 2 digits are the check key (cle).
How is the NIR check key calculated?
The key (cle) is calculated using the formula: cle = 97 - (N mod 97), where N is the 13-digit part of the number (without the key). For Corsica, 2A is replaced by 19 and 2B by 18 before calculating. The key must be between 01 and 97. Because the 13-digit number exceeds JavaScript's safe integer range (Number.MAX_SAFE_INTEGER), the calculation is performed using BigInt.
What do the values 2A and 2B mean in a NIR number?
The values 2A and 2B in the department field refer to Corsica: 2A is Corse-du-Sud (Southern Corsica) and 2B is Haute-Corse (Upper Corsica). Before computing the check key, 2A must be replaced by 19 and 2B by 18 — only then does the 13-character part become an integer on which modulo 97 division can be performed.
Does the NIR validator check whether the number exists in the registry?
No. The tool only verifies the mathematical correctness of the check key (97 - n mod 97). A valid key means only that the number is mathematically consistent, not that it is assigned to a real person in the INSEE database. Verifying whether a number exists requires access to official government registers.

See also