NEW CASE
Antana

We create digital solutions that work for businesses


Give us a call +38 (066) 35-14-529

Let's take the first step towards your website — write to us

Close
August 29, 2026 9 min read

IBAN Check: How to Validate an Account Number Before Payment

For business
IBAN Check: How to Validate an Account Number Before Payment

A single wrong character in bank details can delay a payment, cause a return, or send money to the wrong recipient. An IBAN should therefore be checked after every manual entry or copy from an invoice, contract, email, PDF, or message.

The technical check is fast: remove spaces, verify the country code and national length, reject invalid characters, and calculate the checksum. Yet this is only the first layer. A valid IBAN follows the expected format and mathematical rule; it does not prove that the account is active, belongs to the named business, or was supplied by an authorised person.

This guide covers both layers: format validation and safe beneficiary verification.

What is an IBAN?

IBAN stands for International Bank Account Number. It follows ISO 13616 and combines a country code, two check digits, and a country-specific Basic Bank Account Number. This structure allows banks and payment systems to detect many input errors before processing a transfer.

An IBAN is not a card number. A payment card may be linked to a bank account, but its number, expiry date, and security code are not part of the IBAN. IBAN is also different from SWIFT/BIC: the former identifies an account in a standardised format, while the latter identifies a financial institution in international financial messaging.

Ukraine uses a 29-character IBAN beginning with UA. Electronic records must use Latin characters.

Ukrainian IBAN structure

The format can be represented as:

UAkk bbbbbb aaaaaaaaaaaaaaaaaaa

Part Length Meaning
UA 2 Ukraine country code
kk 2 check digits
bbbbbb 6 bank code
aaaaaaaaaaaaaaaaaaa 19 customer account number

Spaces are added only for readability. Software normally validates and transmits the compact form. Because the check digits depend on the complete number, most single-character entry errors cause the checksum test to fail.

How to check an IBAN in five steps

1. Normalise the input

Remove spaces, hyphens, tabs, and line breaks. Convert Latin letters to uppercase. Do not replace lookalike characters by guessing: O and 0, or I and 1, are different values.

2. Check country and length

A Ukrainian IBAN begins with UA and contains exactly 29 characters. Other countries use different fixed lengths, so the Ukrainian rule must not be applied globally. SWIFT, the ISO 13616 registration authority, publishes the registry of national IBAN formats.

3. Check allowed characters

IBAN uses Latin letters A–Z and digits 0–9. Characters pasted from another alphabet may look identical but fail electronic processing.

4. Validate the checksum

The standard check uses MOD 97:

  1. move the first four characters to the end;

  2. convert letters to numbers, with A = 10, B = 11, and so on;

  3. calculate the resulting number modulo 97;

  4. a valid IBAN produces a remainder of 1.

Manual calculation is impractical. Use a bank application, an official banking service, or a reputable validator with a clear data policy. BB STUDIO also maintains a collection of free online tools for websites, domains, and routine digital tasks.

5. Confirm the beneficiary separately

Before a first or high-value payment, compare the beneficiary name, company identifier, invoice, amount, currency, and payment reference. If bank details have changed, call a known number from the contract or official website instead of replying through the same email thread. A small test payment can be appropriate where fees and company policy allow it.

What validation proves — and what it does not

A check can confirm A check cannot confirm
national format that the account is active
correct length the legal account owner
permitted characters the recipient’s integrity
valid checksum support for a specific currency or transfer type
sometimes the bank code and name that details were not replaced in an invoice or email

This distinction matters. A malicious party can substitute its own technically valid IBAN for a supplier’s number. The checksum will pass because the replacement account is real in format; beneficiary verification is what exposes the mismatch.

Can you identify the bank or owner from an IBAN?

The Ukrainian format includes a six-digit bank code. A current banking directory can map that code to a financial institution, and many validators do this automatically. It is a useful consistency check when an invoice names a different bank.

An open validator normally cannot reveal the person or company that owns the account. Your bank may display or verify beneficiary information while preparing a transfer, but coverage depends on the bank, payment rail, and applicable law. Treat websites promising to reveal any IBAN owner with caution.

Common IBAN errors

Missing or extra character

Manual transcription frequently drops or duplicates a digit. A country-length check catches this before checksum calculation.

Wrong alphabet

The UA prefix must use Latin letters. Take extra care with details extracted from scans, images, and OCR-processed PDFs.

Lookalike symbols

Zero and O, or one and I, can be difficult to distinguish in some fonts. Copying from a trusted digital source is safer than retyping.

Invisible characters

A pasted value may include a non-breaking space or line break. A well-designed form removes these before validation.

Outdated or replaced details

A correctly formatted account may no longer be used. Unexpected “our bank details have changed” messages require independent confirmation.

Currency or transfer mismatch

A valid IBAN does not guarantee that the account accepts the intended currency or international payment type. Confirm this with the beneficiary or bank.

Pre-payment safety checklist

  • Did the details come from a contract, invoice, verified portal, or an informal message?

  • Does the beneficiary name and company identifier match your documents?

  • Does a Ukrainian number begin with UA and contain 29 characters?

  • Does the checksum pass?

  • Does the embedded bank code match the named bank?

  • Were the details changed without prior agreement?

  • Are amount, currency, and payment reference correct?

  • Were new details confirmed through an independent channel?

  • Has the payment received the approval required by company policy?

Machine-readable payment details can be presented using a QR code generator. A QR code only reproduces the encoded content, so details should be checked both before generation and after scanning.

Validating IBAN in a website or business system

When customers or suppliers enter bank details into a form, validation should happen at two levels.

Browser-side validation

The interface can:

  • remove spaces and hyphens;

  • uppercase letters;

  • detect the country prefix;

  • enforce the country-specific length;

  • reject unsupported characters;

  • calculate MOD 97;

  • provide a specific, actionable error.

During professional website development, these rules should be documented together with requirements for data storage, logging, access, and revalidation.

Server-side validation

Browser checks can be bypassed, so the server must repeat normalisation and checksum validation. Payment and payout systems also need an up-to-date format registry, graceful API failure handling, and a manual review route.

For checkout flows, an online store development team should test the whole payment journey: beneficiary, currency, transaction status, retries, duplicate prevention, and clear failure messages.

Data protection

Do not send bank details to unknown analytics or advertising tools. Apply role-based access, an audit trail, and multi-factor authentication. Create unique credentials with a secure password generator and keep them in a password manager.

Payment integrations need updates and monitoring after launch. Ongoing website support can cover dependency changes, logs, error alerts, and regression tests.

Helpful validation messages

“Invalid IBAN” gives the user no direction. Better messages include:

  • “A Ukrainian IBAN must contain 29 characters”;

  • “Use Latin letters only”;

  • “The checksum does not match; verify the bank details”;

  • “The format is valid, but confirm the beneficiary before payment.”

Clear feedback reduces retries and support requests. It is also a hallmark of thoughtful product work visible across BB STUDIO’s website portfolio.

Should a business build a dedicated IBAN checker?

For a bank, accounting platform, marketplace, or B2B service, a dedicated checker can attract qualified search traffic and reduce support demand. A bare input and button, however, are not enough. The page needs an understandable result, privacy explanation, mobile usability, limitations, and an appropriate next action.

An SEO strategy can connect the tool with supporting content and structured data while preventing duplicate pages from competing with one another. To estimate a checker, CRM integration, or payment workflow, contact BB STUDIO.

Conclusion

Reliable IBAN checking has two layers. Technical validation confirms country, length, characters, structure, and checksum. Operational verification confirms the beneficiary, source of the details, currency, payment reference, and any change through an independent channel.

A valid number reduces accidental input errors. It does not replace beneficiary verification. Businesses need both layers to reduce failed payments and invoice-redirection risk.

FAQ

How long is a Ukrainian IBAN?

It has 29 characters: UA, two check digits, a six-digit bank code, and a nineteen-digit customer account number.

Can I check an IBAN for free?

Yes. A bank app or reputable online validator can check format and checksum. Review the service’s data policy before submitting bank details.

Does a valid IBAN prove account ownership?

No. It proves format and checksum only. Ownership requires verification through the bank, documents, and an independent contact with the beneficiary.

Can an IBAN identify the bank?

The Ukrainian format contains a six-digit bank code that can be matched to a current directory. This does not prove that the particular account is active.

What should I do if validation fails?

Do not guess the missing or incorrect character. Obtain the details again from a trusted source and do not initiate payment until the discrepancy is resolved.

Is it safe to share an IBAN?

IBAN is designed to receive payments, but share only the information required for the transaction. Never send a PIN, password, one-time code, or card security code with it.

Rate this article
It helps us write better content
Be the first to rate 5.0 of 5 1 vote

Recommended reading

Let’s create something amazing together

Become a clientBecome a client
Telegram Viber Call us