NIF
Vérifié Identifiant d'entreprise · Numéro fiscal · TVAES_NIF
Número de Identificación Fiscal (ancien CIF pour les personnes morales)
- Délivré par
- Agencia Estatal de Administración Tributaria (AEAT) ; pour les personnes physiques, DNI/NIE délivrés par la police
- Concerne
- sociétés, personnes physiques, entrepreneurs individuels, succursales, associations, organismes publics
- Format
- Personnes morales et entités : 1 lettre (forme juridique) + 7 chiffres (numéro aléatoire) + 1 caractère de contrôle (chiffre ou lettre). Lettres (Orden EHA/451/2008 mod. HAP/5/2016) : A SA, B SRL, C société collective, D commandite, E communautés de biens, successions et entités sans personnalité, F coopérative, G association, H copropriété, J société civile, P collectivité locale, Q organisme public, R congrégation ou institution religieuse, S organe de l'État ou d'une communauté autonome, U union temporaire d'entreprises, V autres ; N entité étrangère ; W établissement permanent d'un non-résident. Personnes physiques : DNI 8 chiffres + lettre ; NIE X/Y/Z + 7 chiffres + lettre ; K, L, M + 7 chiffres + lettre. TVA : ES + NIF.
- Expression régulière
- ^(ES)?([ABCDEFGHJNPQRSUVW]\d{7}[0-9A-J]|\d{8}[A-Z]|[XYZ]\d{7}[A-Z]|[KLM]\d{7}[A-Z])$
- Normalisation
- Supprimer espaces, points, tirets ; mettre en majuscules ; préfixe ES facultatif
- Clé de contrôle
-
custom Observé
Personnes morales (lettre initiale A-H, J, N, P-S, U-W) : sur les 7 chiffres centraux, en partant de la gauche, les chiffres de rang impair (1er, 3e, 5e, 7e) sont doublés et la somme des chiffres de chaque produit est prise (retrancher 9 si > 9) ; on y ajoute les chiffres de rang pair (2e, 4e, 6e). c = (10 - somme mod 10) mod 10. Le caractère de contrôle est soit le chiffre c, soit la lettre de rang c dans JABCDEFGHI (0=J, 1=A … 9=I). Personnes physiques : DNI (8 chiffres) ; NIE X/Y/Z remplacés par 0/1/2 ; K, L, M : les 7 chiffres seuls. Le nombre est divisé par 23 et le reste donne la lettre dans TRWAGMYFPDXBNJZSQVHLCKE (0=T … 22=E).
Calculée par l'API de validation.
- Exemples
-
- B67589754 — GLEIF, ESCANDIC ATLANTIC S.L. (RA000780, Registro Mercantil Central), clé recalculée : 4
- A28864387 — GLEIF, APARCAMIENTOS CHAMBERI SA (RA000535, AEAT), clé recalculée : 7
- V05796289 — GLEIF, SOLVENTIA GARANTIZADO 2030 FI (RA000535), clé recalculée : 9
- ES B-58378431 — python-stdnum 2.2, es/nif (exemple de documentation), clé recalculée : 1
- 54362315K — python-stdnum 2.2, es/nif (DNI), lettre recalculée : K
- X5253868R — python-stdnum 2.2, es/nif (NIE), lettre recalculée : R
Composition et lettres vérifiées sur l'Orden EHA/451/2008 (texte consolidé BOE) : la lettre R y figure bien, ce qui lève la contradiction de la fiche Markdown. L'ordre ne publie pas l'algorithme du caractère de contrôle ; celui-ci vient de python-stdnum et est confirmé sur 66 NIF de personnes morales relevés dans GLEIF (66/66 valides), d'où observed. Les sources divergent sur les lettres qui imposent une clé lettre ou chiffre : accepter les deux. Clé DNI/NIE : python-stdnum + document de l'université de Saragosse (concordants). Avant 2008, la 2e et 3e position codaient la province (Decreto 2423/1975) ; les numéros attribués depuis sont aléatoires.
Sources : Orden EHA/451/2008, de 20 de febrero, composición del NIF de las personas jurídicas (texto consolidado) (2016-01-16) · OCDE, Information on Tax Identification Numbers – Espagne · Commission européenne, VIES, FAQ « VAT number structure » (textes de l'application, assets i18n en) (2026-10-27) · python-stdnum 2.2, module es/nif, es/cif, es/dni, es/nie (2026) · GLEIF, API lei-records (registeredAs / registeredAt), relevé du 2026-10-28 (2026-10-28)