Skip to content

IBAN Validator — Free Online Verification Tool

Validate any International Bank Account Number instantly. Enter an IBAN to check its format, verify the country code, validate check digits using the MOD-97 algorithm, and see the properly formatted result. All validation runs locally in your browser for complete privacy.

What is IBAN?

The International Bank Account Number (IBAN) is an internationally agreed system for identifying bank accounts across borders. It contains the country code, check digits, and the bank account number.

Example IBANs

  • GB29 NWBK 6016 1331 9268 19
  • DE89 3704 0044 0532 0130 00
  • FR76 3000 6000 0112 3456 7890 189
  • ES91 2100 0418 4502 0005 1332

Validation Results

Valid IBAN

This IBAN passes all validation checks.

CountryUnited Kingdom (GB)
Check Digits29
BBANNWBK60161331926819
Length22 (expected 22)
FormattedGB29 NWBK 6016 1331 9268 19

How to Use the IBAN Validator

This tool provides instant IBAN validation using the official MOD-97 algorithm specified in ISO 13616. Whether you are verifying a payment recipient's bank details, checking an IBAN you received on an invoice, or setting up recurring international transfers, follow these steps.

  1. Enter the IBAN number. Type or paste the IBAN into the input field. You can include spaces for readability or enter the number as a continuous string; the validator handles both formats. The input automatically converts to uppercase, so you can enter lowercase characters without issue. IBANs are printed on bank statements, debit cards, and online banking portals.
  2. Check the validation result. A green checkmark and "Valid IBAN" message means the number passes all validation checks. A red cross and "Invalid IBAN" message indicates an error. If the IBAN is invalid, check for typos, missing digits, or transposed characters. Even a single incorrect digit will cause validation to fail.
  3. Review the details. The results show the identified country and country code, the check digits, the BBAN (domestic account number portion), the actual versus expected length, and the properly formatted IBAN with standard four-character grouping. Use the formatted version when providing your IBAN to others.

For batch validation of multiple IBANs (common in payroll processing or accounts payable), validate each number individually through this tool or consider implementing the MOD-97 algorithm in your accounting software.

Understanding the IBAN Validation Algorithm

IBAN validation uses a precise mathematical process defined by ISO 13616. The algorithm catches virtually all single-digit errors and most transposition errors, making it extremely reliable for payment verification.

IBAN Structure

[Country Code (2)] [Check Digits (2)] [BBAN (up to 30)]

MOD-97 Validation Algorithm

Rearranged IBAN mod 97 = 1 (valid)

The step-by-step process:

  1. Step 1: Remove all spaces from the IBAN
  2. Step 2: Move the first four characters to the end of the string
  3. Step 3: Convert each letter to a two-digit number (A=10, B=11, ..., Z=35)
  4. Step 4: Divide the resulting large number by 97
  5. Step 5: If the remainder is 1, the IBAN is valid

Validation Example

Validate GB29 NWBK 6016 1331 9268 19:

  1. Remove spaces: GB29NWBK60161331926819
  2. Rearrange: NWBK60161331926819GB29
  3. Convert letters: N=23, W=32, B=11, K=20, G=16, B=11 gives: 23321120601613319268191629
  4. Compute MOD-97: 23321120601613319268191629 mod 97 = 1
  5. Result: Remainder is 1, so the IBAN is valid

The algorithm processes the large number in chunks to avoid integer overflow in programming implementations. Each chunk is computed as (previous remainder * 10^(chunk length) + chunk value) mod 97.

Practical IBAN Validation Examples

These scenarios demonstrate why IBAN validation matters in everyday business and personal international transactions.

International Invoice Payment

Rebecca, a procurement manager, receives an invoice from a German supplier with the IBAN DE89 3704 0044 0532 0130 00. Before initiating the wire transfer of 45,000 EUR, she validates the IBAN. The validator confirms it is valid: country is Germany, check digits are 89, length is 22 (correct for DE), and the bank code 37040044 identifies the bank. By validating before sending, Rebecca avoids the potential $50-75 bank fee for a rejected international transfer and the 5-10 business day delay of a returned payment.

Freelancer Setting Up Payment Details

Ahmed, a freelance designer in the Netherlands, needs to provide his IBAN to clients. He checks NL91 ABNA 0417 1643 00 through the validator to ensure he has the correct number before sharing it on invoices. The validator confirms it is valid with the Netherlands country code, check digits 91, and 18-character length (correct for NL). This prevents embarrassing situations where a typo in the IBAN leads to failed client payments and delayed income.

Detecting a Fraudulent IBAN

Sofia, an accounts payable specialist, receives an email appearing to be from a regular supplier requesting a change of bank details to FR76 3000 6000 0112 3456 7890 188 (note: the last digit is wrong). She validates the IBAN and finds it invalid: the check digit verification fails. This flags a potential payment redirection fraud attempt. She contacts the supplier through a verified phone number and confirms the email was fraudulent. The IBAN validator served as an additional security layer, catching an error that could have resulted in a significant financial loss.

Payroll Processing for International Employees

Chen manages payroll for a company with 25 employees across Europe. Each month, he validates all employee IBANs before submitting the payroll batch. When employee #17's IBAN ES91 2100 0418 4502 0005 1332 validates correctly but employee #22's IBAN IT60 X054 2811 1010 0000 0123 456 returns invalid (incorrect length for Italy, which requires 27 characters), he catches the error before submission. Correcting the IBAN before processing saves the company failed transfer fees and ensures all employees receive their salary on time.

IBAN Length by Country Reference Table

Country Code IBAN Length Example Format
United Kingdom GB 22 GBkk BBBB SSSS SSCC CCCC CC
Germany DE 22 DEkk BBBB BBBB CCCC CCCC CC
France FR 27 FRkk BBBB BGGG GGCC CCCC CCCC CKK
Spain ES 24 ESkk BBBB GGGG KKCC CCCC CCCC
Italy IT 27 ITkk XBBB BBGG GGGC CCCC CCCC CCC
Netherlands NL 18 NLkk BBBB CCCC CCCC CC
Switzerland CH 21 CHkk BBBB BCCC CCCC CCCC C
Norway NO 15 NOkk BBBB CCCC CCK

IBAN Validation Tips and Complete Guide

Properly handling IBANs is essential for anyone involved in international banking, whether you are a business processing cross-border payments, an individual sending money abroad, or a developer building payment systems.

Always Validate Before Sending

Never initiate an international wire transfer without first validating the recipient's IBAN. Failed transfers due to invalid IBANs cost $25-75 per occurrence in bank fees and can take 5-10 business days to resolve. For businesses processing hundreds of international payments monthly, implementing IBAN validation as a mandatory step in the payment workflow saves thousands of dollars annually and eliminates payment delays that strain supplier relationships.

Know the Country-Specific Formats

IBAN lengths and internal structures vary by country. German IBANs are always 22 characters, while French IBANs are always 27. If someone provides an IBAN that does not match the expected length for the country code, it is incorrect even if the check digits happen to validate. This country-specific length check is the fastest way to spot an invalid IBAN before running the full MOD-97 algorithm.

Be Aware of IBAN Fraud Schemes

IBAN-related fraud is increasingly common. Scammers intercept legitimate business emails and change the IBAN in invoices or payment instructions to redirect funds to their own accounts. To protect against this: always validate any new or changed IBAN, confirm bank detail changes through a separate verified communication channel (phone call, in-person), and implement dual-authorization for any changes to stored bank details. Some banks offer IBAN-to-name verification services that cross-check the IBAN against the account holder's name.

Use Proper Formatting for Readability

IBANs should be printed and displayed in groups of four characters separated by spaces (e.g., GB29 NWBK 6016 1331 9268 19). This formatting makes it easier to read, transcribe, and verify the number. However, when transmitting IBANs electronically (in payment files, APIs, or databases), always use the compact format without spaces. This tool accepts both formats and displays the properly formatted version in the results.

Common Mistakes to Avoid

  • Confusing IBAN with regular account numbers. A regular domestic bank account number is not an IBAN. IBANs include the country code and check digits as prefix. Sending money using a domestic account number format to an international transfer will fail in countries that require IBAN.
  • Transposing digits when copying. Manually copying long IBANs is error-prone. Always copy-paste when possible and validate after pasting. The MOD-97 algorithm catches most transposition errors, but it is better to avoid them in the first place.
  • Assuming validation means the account exists. A valid IBAN format does not guarantee the account is active or belongs to the intended recipient. IBAN validation checks mathematical correctness, not account existence. Some banks offer additional services to verify account ownership.
  • Using outdated IBAN formats. Some countries have updated their IBAN formats over the years. Always ensure you are using the current format specification. This tool stays updated with the latest ISO 13616 standards.
  • Not validating IBANs in your own systems. If you develop software that processes IBANs, implement MOD-97 validation on input. Storing and processing unvalidated IBANs propagates errors downstream and increases the rate of failed payments.

Frequently Asked Questions

An IBAN (International Bank Account Number) is a standardized international numbering system for identifying bank accounts across national borders. Introduced by the European Committee for Banking Standards and adopted by ISO 13616, the IBAN ensures that international payments are routed correctly and processed efficiently. Using an IBAN reduces the risk of payment errors, rejected transfers, and delays. Over 80 countries currently use the IBAN system. For businesses processing international payments, validating IBANs before submission prevents costly failed transfers and associated fees.

An IBAN consists of up to 34 alphanumeric characters in a specific format: the first two characters are the ISO country code (e.g., GB for United Kingdom, DE for Germany), followed by two check digits calculated using the MOD-97 algorithm, followed by the BBAN (Basic Bank Account Number) which varies by country and includes the bank code, branch code, and account number. For example, GB29 NWBK 6016 1331 9268 19 breaks down as: GB (country), 29 (check digits), NWBK (bank code), 6016 13 (branch/sort code), 31926819 (account number). The length varies by country, from 15 characters (Norway) to 34 characters (Saint Lucia).

IBAN validation involves several checks performed in sequence. First, the format is verified: it must start with two letters followed by two digits and then alphanumeric characters. Second, the length is checked against the expected length for the specific country (e.g., 22 for GB, 22 for DE, 27 for FR). Third, the check digits are verified using the MOD-97 algorithm: the first four characters are moved to the end, all letters are converted to numbers (A=10, B=11, ..., Z=35), and the resulting number must have a remainder of 1 when divided by 97. This mathematical check catches transposition errors and most single-digit mistakes. Our <a href="/financial/business/margin-calculator">margin calculator</a> helps with the business financial analysis side of international trade.

The MOD-97 algorithm is the mathematical validation method used to verify IBAN check digits. The process works as follows: take the IBAN, move the first four characters (country code and check digits) to the end of the string. Convert all letters to numbers (A=10, B=11, ..., Z=35). Calculate the remainder when this large number is divided by 97. If the remainder is 1, the IBAN is valid. For example, for GB29NWBK60161331926819: rearrange to NWBK60161331926819GB29, convert letters to numbers: 232011601613319268191129, divide by 97, and the remainder is 1, confirming validity.

No, not all countries use IBAN. The system is mandatory in the European Union, European Economic Area, and many other countries. Major countries that use IBAN include all EU member states, the UK, Switzerland, Saudi Arabia, UAE, Turkey, Brazil, and many others (over 80 countries total). Notable countries that do NOT use IBAN include the United States, Canada, Australia, China, Japan, India, and most countries in Southeast Asia. These countries use their own domestic account numbering systems and rely on SWIFT/BIC codes for international transfers.

Sending money to an invalid IBAN typically results in the payment being rejected by the receiving bank, which triggers a return process. This can take 5-10 business days and often incurs fees from both the sending and receiving banks, typically ranging from $25-$75 per failed transfer. In some cases, the payment may be delayed while the banks investigate, or it could be applied to an incorrect account if the IBAN happens to match another valid account despite the error. This is why pre-validation is critical, especially for large or recurring international payments.

Yes, this validator performs all calculations entirely in your web browser. No IBAN data is sent to any server or stored anywhere. The validation algorithm runs client-side using JavaScript, meaning your banking information never leaves your device. This is important for financial privacy and data protection compliance. You can verify this by disconnecting from the internet and confirming the validator still works.

An IBAN identifies a specific bank account, while a SWIFT/BIC (Bank Identifier Code) identifies a specific bank or financial institution. For international wire transfers, you typically need both: the SWIFT code to route the payment to the correct bank, and the IBAN to identify the recipient's specific account within that bank. The SWIFT code is an 8 or 11 character code (e.g., NWBKGB2L for NatWest UK), while the IBAN includes the full account information. In IBAN-using countries, the IBAN often contains enough information to derive the bank and branch, but the SWIFT code is still commonly required by payment systems.

Related Calculators

Disclaimer: This calculator is for informational purposes only and does not constitute financial advice. Consult a qualified financial advisor before making financial decisions.

Last updated: February 23, 2026

Sources

  • SWIFT — IBAN International Bank Account Number Standard: swift.com
  • Consumer Financial Protection Bureau — Consumer Financial Tools: consumerfinance.gov
  • Federal Reserve Board — Banking and Payment Systems: federalreserve.gov