NIF (Número de Identificación Fiscal, Spanish VAT number).
The Spanish VAT number is a 9-digit number where either the first, last digits or both can be letters.
The number is either a DNI (Documento nacional de identidad, for Spaniards), a NIE (Número de Identificación de Extranjeros, for foreigners) or a CIF (Certificado de Identificación Fiscal, for legal entities and others).
>>> compact('ES B-58378431')
'B58378431'
>>> validate('B64717838')
'B64717838'
>>> validate('B64717839') # invalid check digit
Traceback (most recent call last):
...
InvalidChecksum: ...
>>> validate('54362315K') # resident
'54362315K'
>>> validate('X-5253868-R') # foreign person
'X5253868R'
Traceback (most recent call last):
...
InvalidChecksum: ...
Convert the number to the minimal representation. This strips the number of any valid separators and removes surrounding whitespace.
Checks to see if the number provided is a valid VAT number. This checks the length, formatting and check digit.
Checks to see if the number provided is a valid VAT number. This checks the length, formatting and check digit.