IBAN mod-97 Validator

Streaming IBAN mod97 checksum only, distinct from country-specific BBAN length/format catalog; checksum does not establish issued account, country validity or bank existence.

Description

An IBAN check validates a modular checksum within a canonical text envelope.

An IBAN check validates a modular checksum within a canonical text envelope.1

A valid remainder does not establish a real account, country-specific structure or payment eligibility. Use IBAN mod-97 Validator to evaluate the supplied inputs under the specific model below.

When to use IBAN mod-97 Validator

Use IBAN mod-97 Validator to evaluate the supplied inputs under the specific model below. Choose the intended encoding, alphabet or check and keep the exact character, key and measurement conventions described below.

How to use IBAN mod-97 Validator and understand its results

  1. Choose the intended encoding, alphabet or check and keep the exact character, key and measurement conventions described below.
  2. Enter Iban using the field table and validation rules below, then run the tool.
  3. Read Mod97 remainder, Valid mod97 and interpret units, signs, ordering and placeholders as explained below.
  4. If the tool reports an input error, correct that field and rerun. A successful false result, empty match list or unknown-evidence placeholder has the specific meaning described here; check the limitations before applying the result.
Input fieldMeaningValue typeRequirement
ibanIbanstringRequired; constraints below

Enter a canonical uppercase IBAN-shaped string: two letters, two digits and 11 to 30 following alphanumeric characters. Move the first four characters to the end, convert letters A through Z to 10 through 35 and accumulate the decimal remainder modulo 97. Return whether the remainder is 1. Formatting failures are errors; no country-specific length, country registry or account existence is verified.

remainder = expanded(reorderedIBAN) mod 97; validChecksum = remainder==1

Field order, units and branch conditions follow the implementation explanation above.

Output fieldMeaningValue type
mod97RemainderMod97 remaindernumber
validMod97Valid mod97boolean
json
{
  "input": {
    "iban": "GB82WEST12345698765432"
  },
  "output": {
    "mod97Remainder": 1,
    "validMod97": true
  }
}

Limitations and assumptions

A valid remainder does not establish a real account, country-specific structure or payment eligibility. Apply the exact scope and assumptions described above.

All listed fields require explicit values. Unexpected fields, incorrect types, nonfinite numbers and sparse arrays fail validation. Domain-specific bounds, alignments and supported tokens are stated above; extremely large inputs or outputs can also be rejected. These errors differ from successful results such as false, no matches or unknown evidence.

Alternative or Complementary methods

Use Verhoeff Algorithm Validator for a related task: Verhoeff validation uses a decimal check-digit structure.

Use Damm Algorithm Validator for a related task: Damm validation processes decimal digits through a quasigroup table.

References

  1. IBAN mod-97 Validator — tool.io

Similar or alternative tools

Don't forget to set a bookmark for tool.io!
Privacy | Imprint | Cookies