# 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:

- https://www.penize.cz/osobni-ucty/424173-tajemstvi-cisla-uctu-klicem-pro-banky-je-11

- https://www.zlatakoruna.info/zpravy/ucty/cislo-uctu-v-cr

    >>> 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)

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

stdnum.cz.bankaccount.format(number)

  Reformat the number to the standard presentation format.

stdnum.cz.bankaccount.info(number)

  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)

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

stdnum.cz.bankaccount.to_bic(number)

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

stdnum.cz.bankaccount.validate(number)

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