Example #1
0
def validate(number):
    """Checks to see if the number provided is a valid PPS number. This
    checks the length, formatting and check digit."""
    number = compact(number)
    if not pps_re.match(number):
        raise InvalidFormat()
    if len(number) == 9 and number[8] in 'AH':
        # new 2013 format
        if number[7] != vat.calc_check_digit(number[:7] + number[8:]):
            raise InvalidChecksum()
    else:
        # old format, last letter ignored
        if number[7] != vat.calc_check_digit(number[:7]):
            raise InvalidChecksum()
    return number
Example #2
0
def validate(number):
    """Check if the number provided is a valid PPS number. This checks the
    length, formatting and check digit."""
    number = compact(number)
    if not pps_re.match(number):
        raise InvalidFormat()
    if len(number) == 9 and number[8] in 'AH':
        # new 2013 format
        if number[7] != vat.calc_check_digit(number[:7] + number[8:]):
            raise InvalidChecksum()
    else:
        # old format, last letter ignored
        if number[7] != vat.calc_check_digit(number[:7]):
            raise InvalidChecksum()
    return number
Example #3
0
def validate(number):
    """Checks to see if the number provided is a valid PPS number. This
    checks the length, formatting and check digit."""
    number = compact(number)
    if not pps_re.match(number):
        raise InvalidFormat()
    if number[7] != vat.calc_check_digit(number[:7]):
        raise InvalidChecksum()
    return number