stdnum.lv.pvn¶
PVN (Pievienotās vērtības nodokļa, Latvian VAT number).
The PVN is a 11-digit number that can either be a reference to a legal entity (in which case the first digit > 3) or a natural person (in which case it should be the same as the personal code (personas kods)). Personal codes start with 6 digits to denote the birth date in the form ddmmyy.
>>> validate('LV 4000 3521 600')
'40003521600'
>>> validate('40003521601') # invalid check digit
Traceback (most recent call last):
...
InvalidChecksum: ...
>>> validate('161175-19997') # personal code
'16117519997'
>>> validate('161375-19997') # invalid date
Traceback (most recent call last):
...
InvalidComponent: ...
-
stdnum.lv.pvn.
calc_check_digit_pers
(number)¶ Calculate the check digit for personal codes. The number passed should not have the check digit included.
-
stdnum.lv.pvn.
checksum
(number)¶ Calculate the checksum for legal entities.
-
stdnum.lv.pvn.
compact
(number)¶ Convert the number to the minimal representation. This strips the number of any valid separators and removes surrounding whitespace.
-
stdnum.lv.pvn.
get_birth_date
(number)¶ Split the date parts from the number and return the birth date.
-
stdnum.lv.pvn.
is_valid
(number)¶ Check if the number is a valid VAT number.
-
stdnum.lv.pvn.
validate
(number)¶ Check if the number is a valid VAT number. This checks the length, formatting and check digit.