正在加载,请稍候…

IBAN 验证器:如何验证国际银行账号

验证和解析 IBAN 号码。了解 IBAN 结构、各国格式以及校验和验证的工作原理。

IBAN 验证器:如何验证国际银行账号

什么是 IBAN?

IBAN(国际银行账号)是一种用于识别银行账户的标准化国际系统,由欧洲银行标准委员会(ECBS)制定,并被 ISO 采纳为 ISO 13616。最初旨在简化欧盟跨境转账,现已被超过 77 个国家使用。

IBAN 验证器:如何验证国际银行账号 插图

IBAN 结构

一个 IBAN 最多包含 34 个字母数字字符:

[国家代码(2位)] [校验位(2位)] [基本银行账号(BBAN,最多30位)]

示例——德国 IBAN:

DE89 3704 0044 0532 0130 00
DE   = 国家代码(德国)
89   = 校验位(验证 IBAN)
3704 0044 0532 0130 00 = BBAN(国内账号)

示例——英国 IBAN:

GB29 NWBK 6016 1331 9268 19
GB   = 国家代码(英国)
29   = 校验位
NWBK = 银行代码前缀/银行标识符
6016 13 = 银行代码
31926819 = 账号

IBAN 验证的工作原理

MOD-97-10 算法

IBAN 验证使用模 97 运算:

  1. 将前四个字符移到末尾:3704 0044 0532 0130 00 DE89 变为 3704004405320130 00 DE89
  2. 将字母替换为数字:A=10, B=11, ..., Z=35。D=13, E=14 → 37040044053201300013148 9
  3. 计算该数字模 97 的结果
  4. 如果结果等于 1,则 IBAN 有效

验证能证明什么

  • IBAN 通过了校验位算法
  • 国家代码是已知的
  • BBAN 长度符合该国家预期长度

验证不能证明什么:

  • 该账户实际存在
  • 该账户属于指定个人
  • 转账会成功

IBAN 验证器:如何验证国际银行账号 插图

IBAN 国家格式

每个国家都有特定的 BBAN 格式和总 IBAN 长度:

国家 长度 示例
德国 (DE) 22 DE89 3704 0044 0532 0130 00
法国 (FR) 27 FR76 3000 6000 0112 3456 7890 189
荷兰 (NL) 18 NL91 ABNA 0417 1643 00
西班牙 (ES) 24 ES91 2100 0418 4502 0005 1332
意大利 (IT) 27 IT60 X054 2811 1010 0000 0123 456
瑞士 (CH) 21 CH93 0076 2011 6238 5295 7
英国 (GB) 22 GB29 NWBK 6016 1331 9268 19
阿联酋 (AE) 23 AE07 0331 2345 6789 0123 456

IBAN 与 SWIFT/BIC

IBAN 标识账户;SWIFT/BIC 标识银行

BIC/SWIFT: NWBKGB2L
  NWBK = 银行代码(NatWest)
  GB   = 国家代码
  2L   = 位置代码

国际转账通常需要两者:

  • IBAN:资金去向(账户)
  • SWIFT/BIC:如何路由(银行)

SEPA 转账

单一欧元支付区(SEPA)涵盖 36 个欧洲国家。SEPA 转账:

  • 仅使用 IBAN(自 2016 年起在 SEPA 内无需 SWIFT/BIC)
  • 在 1 个工作日内处理(SEPA 信用转账)
  • 包括最高 10 万欧元的即时支付(SEPA 即时)
  • 在欧元区内免费或低成本

常见 IBAN 错误

IBAN 验证器:如何验证国际银行账号 插图

错误的校验位

手动输入的 IBAN 常出现换位错误。校验位能捕获大多数单字符错误。

长度不正确

德国 IBAN 必须恰好为 22 个字符。多余或缺失的字符会导致立即验证失败。

格式问题

IBAN 通常以每 4 个字符一组显示以便阅读(DE89 3704 0044),但传输时不带空格。验证工具应接受两种格式。

使用 IBAN 验证器

我们的工具:

  1. 输入任意 IBAN——接受空格和大小写
  2. 验证格式——检查国家代码、长度和校验位
  3. 解析结构——显示银行代码、分行代码、账号
  4. 识别国家——从 ISO 代码获取完整国家名称
  5. 解释错误——对无效 IBAN 提供清晰信息

在处理国际支付前使用它,以捕获数据输入错误并防止转账失败。