Skip to content

iban

validators.iban.iban(value)

Return whether or not given value is a valid IBAN code.

Examples:

>>> iban('DE29100500001061045672')
# Output: True
>>> iban('123456')
# Output: ValidationError(func=iban, ...)

Parameters:

Name Type Description Default
value str

IBAN string to validate.

required

Returns:

Type Description
Literal[True]

If value is a valid IBAN code.

ValidationError

If value is an invalid IBAN code.

New in version 0.8.0

Source code in /opt/hostedtoolcache/Python/3.11.7/x64/lib/python3.11/site-packages/validators/iban.py
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
@validator
def iban(value: str, /):
    """Return whether or not given value is a valid IBAN code.

    Examples:
        >>> iban('DE29100500001061045672')
        # Output: True
        >>> iban('123456')
        # Output: ValidationError(func=iban, ...)

    Args:
        value:
            IBAN string to validate.

    Returns:
        (Literal[True]):
            If `value` is a valid IBAN code.
        (ValidationError):
            If `value` is an invalid IBAN code.

    > *New in version 0.8.0*
    """
    return (
        (re.match(r"^[A-Z]{2}[0-9]{2}[A-Z0-9]{11,30}$", value) and _mod_check(value))
        if value
        else False
    )