stdnum.cz.bankaccount

Czech bank account number.

The Czech bank account numbers consist of up to 20 digits:

UUUUUK-MMMMMMMMKM/XXXX

The first part is prefix that is up to 6 digits. The following part is from 2 to 10 digits. Both parts could be filled with zeros from left if missing. The final 4 digits represent the bank code.

More information:

>>> validate('34278-0727558021/0100')
'034278-0727558021/0100'
>>> validate('4278-727558021/0100')  # invalid check digits (prefix)
Traceback (most recent call last):
    ...
InvalidChecksum: ...
>>> validate('34278-727558021/0000')  # invalid bank
Traceback (most recent call last):
    ...
InvalidComponent: ...
>>> format('34278-727558021/0100')
'034278-0727558021/0100'
>>> to_bic('34278-727558021/0100')
'KOMBCZPP'
stdnum.cz.bankaccount.compact(number: str) str

Convert the number to the minimal representation. This strips the number of any valid separators and removes surrounding whitespace.

stdnum.cz.bankaccount.format(number: str) str

Reformat the number to the standard presentation format.

stdnum.cz.bankaccount.info(number: str) dict[str, str]

Return a dictionary of data about the supplied number. This typically returns the name of the bank and branch and a BIC if it is valid.

stdnum.cz.bankaccount.is_valid(number: str) bool

Check if the number provided is a valid bank account number.

stdnum.cz.bankaccount.to_bic(number: str) str | None

Return the BIC for the bank that this number refers to.

stdnum.cz.bankaccount.validate(number: str) str

Check if the number provided is a valid bank account number.