CheckDigits::M97_001 - compute check digits for VAT Registration Number (BE)
use Algorithm::CheckDigits;
$ustid = CheckDigits('ustid_be');
if ($ustid->is_valid('136695962')) {
# do something
}
$cn = $ustid->complete('1366959');
# $cn = '136695962'
$cd = $ustid->checkdigit('136695962');
# $cd = '62'
$bn = $ustid->basenumber('136695962');
# $bn = '1366959'
- 1.
- The whole number (without checksum) is taken modulo 97.
- 2.
- The checksum is difference of the remainder from step 1 to 97.
- is_valid($number)
- Returns true if $number consists solely of numbers
and the last digit is a valid check digit according to the algorithm given
above.
A leading 'BE' before the numbers will be ignored.
Returns false otherwise,
- complete($number)
- The check digit for $number is computed and
concatenated to the end of $number.
Returns the complete number with check digit or '' if
$number does not consist solely of digits and
spaces.
A leading 'BE' before the digits is ignored for the
computation and retained for the result.
- basenumber($number)
- Returns the basenumber of $number if
$number has a valid check digit.
A leading 'BE' before the digits will be ignored and not
returned with the result.
Return '' otherwise.
- checkdigit($number)
- Returns the checkdigits of $number if
$number has a valid check digit.
Return '' otherwise.
Mathias Weidner, "<mamawe@cpan.org>"
perl, CheckDigits, <http://www.pruefziffernberechnung.de>.
<https://en.wikipedia.org/wiki/VAT_identification_number>