スペインのDNI・NIE・NIFと確認文字の仕組み
スペインの身分番号や税番号の末尾には検証用の文字が付きます。DNIとNIEでは、この文字を数字から簡単な計算で求め、その方法はスペイン内務省が公開しています。このガイドでは3種類の番号の違い、計算の手順、確認文字が正しいときにわかることとわからないことを説明します。
関連する3つの番号
NIF(número de identificación fiscal)は税務上の識別番号です。多くの人にとってNIFは別の番号ではありません。スペイン国民は身分証明書DNIの番号を、外国人居住者は外国人識別番号NIEを、そのままNIFとして使います。どちらも持たない個人や法人は、税務庁(Agencia Tributaria)からNIFを受け取ります。
| 番号 | 対象 | 形式 | 例 |
|---|---|---|---|
| DNI(NIFを兼ねる) | スペイン国民 | 数字8桁+確認文字 | 12345678Z |
| NIE(NIFを兼ねる) | 外国人 | X・Y・Z+数字7桁+確認文字 | X1234567L |
| K・L・MのNIF | DNIもNIEもない人(K:スペイン在住の14歳未満の国民、L:国外在住の国民、M:NIEのない外国人) | K・L・M+7文字+確認文字 | – |
| 法人・団体のNIF | 会社、協会、公的機関など | 法的形態を表す文字+数字7桁+確認文字 | – |
K・L・Mの番号は税務の一般規則(Real Decreto 1065/2007 第19・20条)に、文字1つ、英数字7文字、アルファベットの確認文字からなると定められています。DNIの規則(Real Decreto 255/2025 第12条)は、証明書に番号と確認文字が記載されるとだけ定め、計算方法はスペイン内務省のウェブサイトで公開されています。
DNIの確認文字の計算
確認文字は、番号を23で割った余りを文字に置き換えたものです。
- DNIの8桁を1つの数とみなします。
- 23で割り、余り(0〜22)を求めます。
- 余りに対応する文字を表で探します。
| 余り | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 文字 | T | R | W | A | G | M | Y | F | P | D | X | B |
| 余り | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | |
| 文字 | N | J | Z | S | Q | V | H | L | C | K | E |
計算例(スペイン内務省の例):12345678 ÷ 23 = 536,768、余り14です(23 × 536,768 = 12,345,664、12,345,678 − 12,345,664 = 14)。余り14はZなので、DNI全体は 12345678Z です。
コードでは1行で書けます。文字は "TRWAGMYFPDXBNJZSQVHLCKE"[番号 % 23] です。使われる文字は23種類だけなので、I、Ñ、O、Uが確認文字になることはありません。DNIの末尾にこれらの文字があれば、どこかで写し間違えています。
NIE:先頭のX・Y・Zを数字に
NIEはX・Y・Zのいずれか1文字、数字7桁、確認文字からなります。計算の前に先頭の文字を数字に置き換えます。Xは0、Yは1、Zは2です。これで8桁の数になり、あとはDNIと同じです。
計算例:X1234567は01234567になります。1,234,567 ÷ 23の余りは19(23 × 53,676 = 1,234,548)で、19はLなので、NIEは X1234567L です。同じ数字でもY(11234567)やZ(21234567)で始まると文字が変わるため、先頭の文字も正確に写す必要があります。
確認文字で見つかる誤りと、証明できないこと
確認文字は入力ミスを見つけるための仕組みです。23はどの1桁の数よりも大きい素数なので、数字を1つ変えると余りが必ず変わります。つまり1桁の書き間違いは必ず別の文字になります。隣り合う2桁を入れ替えると番号は「9 × 10のべき乗」の倍数だけ変わりますが、23はこれも割り切れないため、この誤りも見つかります。2桁以上を間違えると、偶然同じ文字になることがあります。
確認文字では、番号が実在するかはわかりません。8桁の数にはすべて正しい文字が1つずつあるため、発行されたことのない何百万もの番号もチェックを通ります。番号が実在するかを確認できるのは発行機関だけで、DNIとNIEは内務省、その他のNIFは税務庁です。
K・L・Mと法人のNIF
税務の一般規則はK・L・Mの番号の構成だけを定め、確認文字の計算方法は定めていません。法人・団体のNIFはOrden EHA/451/2008が構成を定めています。法的形態を表す文字、ランダムな7桁の数字、確認文字です。この省令も文字の一覧は示していますが、確認文字の計算方法は公開していません。そのためLeedyBoxの検証ツールはこれらの番号を判別して法的形態を表示し、最後の文字はチェックしません。
| 先頭の文字 | 法的形態(Orden EHA/451/2008) |
|---|---|
| A | Sociedades anónimas(株式会社) |
| B | Sociedades de responsabilidad limitada(有限会社) |
| C、D | Sociedades colectivas、sociedades comanditarias(合名・合資会社) |
| E | Comunidades de bienes、herencias yacentesなど法人格のない団体 |
| F、G、H、J | 協同組合、協会、区分所有者の共同体、民法上の組合 |
| P、Q、R、S | 地方公共団体、公的機関、宗教団体、国・自治州の行政機関 |
| U、V | 共同企業体(UTE)、その他の形態 |
| N、W | 外国法人、非居住法人の恒久的施設 |
番号の書き方と保存
- 文字は大文字で、空白を入れずに書きます:
12345678Z。文字の前にハイフンを入れる書式も多いので、2つの番号を比べるときは空白・ピリオド・ハイフンを除いてから比べます。 - DNIは整数ではなく文字列として保存します。数値の列に入れると先頭の0と文字が失われます。
- 入力時に確認文字をチェックして入力ミスを早めに見つけますが、文字が正しいことを本人確認とみなさないでください。
- DNIとNIEは個人を特定する個人情報です。URL、ログ、アクセス解析に含めないでください。
開発用のテスト番号
フォームやデータベースのテストには、チェックを通るサンプル番号が必要です。検証ツールは確認文字が正しいランダムなDNI・NIEを生成できます。テスト専用です。ランダムな番号が実在する人の番号と一致することがあるため、実データや請求書、書類で誰かの番号として使ってはいけません。
よくある質問
NIFとDNIは同じ番号ですか?
スペイン国民の場合はそうです。NIFはDNIの番号に文字を付けたものです。外国人居住者はNIEをNIFとして使い、どちらもない人は税務庁からK・L・Mで始まる番号を受け取ります。
CIFとは何ですか?
以前使われていた法人の税番号の名称です。現在、法人は法的形態の文字、数字7桁、確認文字からなるNIFを使います。
DNIの文字が誤りと表示されるのはなぜですか?
証明書と数字・文字を1つずつ照らし合わせてください。I、Ñ、O、Uは常に誤りで、数字を2つ入れ替えただけでも正しい文字が変わります。
誰の番号かわかりますか?
いいえ。文字は数字だけから計算するので所有者の情報は含まれず、検証ツールはどこにも番号を問い合わせません。
出典
出典:Ministerio del Interior: Cálculo del dígito de control del NIF/NIE (Internet Archive, 2025-12-30)・確認日:
出典:BOE: Real Decreto 255/2025, de 1 de abril, por el que se regula el Documento Nacional de Identidad・確認日:
出典:BOE: Orden EHA/451/2008 (texto consolidado, modificada por la Orden HAP/5/2016)・確認日: