🏦 IBAN验证器
国际银行账号格式校验,支持90+国家,自动验证校验位
什么是IBAN验证工具?
IBAN(International Bank Account Number,国际银行账户号码)验证工具是一种检查IBAN号码格式有效性的在线工具。IBAN是国际银行转账的标准账号格式,由ISO 13616标准定义,最多包含34个字符,由国家代码、校验码和银行账号组成。在进行国际汇款时,输入错误的IBAN可能导致资金转入错误账户或交易被拒绝。IBAN验证工具通过校验位算法和格式规则检查IBAN的有效性,并可识别所属国家和银行信息。本工具帮助财务人员、开发者和跨境电商在进行国际转账前确认IBAN格式正确,减少因账号错误导致的资金损失和处理延迟。
如何使用IBAN验证工具
- 输入IBAN — 粘贴或输入需要验证的IBAN号码,支持带空格和不带空格的格式。
- 自动验证 — 工具即时检查IBAN的格式和校验位是否正确。
- 查看详细信息 — 显示验证结果、所属国家、IBAN长度、BBAN(国内银行账号)部分等详细信息。
常见使用场景
场景一:国际汇款前验证
向海外供应商或合作伙伴付款前,验证其提供的IBAN是否正确,避免因账号错误导致汇款失败或资金损失。
场景二:财务系统输入验证
在ERP或财务系统中添加供应商银行信息时,集成IBAN验证确保录入数据的有效性。
场景三:电商平台收款设置
跨境电商平台在卖家设置收款账户时验证IBAN格式,确保 payouts 能正确到账。
技术原理
IBAN验证基于模97校验算法:
// IBAN结构(以德意志银行为例)
// DE89 3704 0044 0532 0130 00
// DE = 国家代码(ISO 3166-1 alpha-2)
// 89 = 校验码(两位数字)
// 370400440532013000 = BBAN(国内银行账号)
// 校验算法(ISO 7064 Mod 97-10)
// 1. 将前4位移到末尾
// 2. 将字母转为数字(A=10, B=11, ..., Z=35)
// 3. 计算结果 mod 97
// 4. 余数为1则IBAN有效
function validateIBAN(iban) {
const rearranged = iban.slice(4) + iban.slice(0, 4);
const numeric = rearranged.replace(/[A-Z]/g,
c => (c.charCodeAt(0) - 55).toString());
return mod97(numeric) === 1;
}
// 不同国家的IBAN长度不同
// 德国: 22字符 英国: 22字符
// 法国: 27字符 西班牙: 24字符
最佳实践与注意事项
- IBAN验证只检查格式有效性,不确认账户是否真实存在或可用。实际转账前还需通过银行系统验证。
- 不同国家的IBAN长度不同(15-34字符),验证时需使用对应国家的长度标准。
- IBAN中不包含银行SWIFT/BIC代码,国际转账通常需要同时提供两者。
- 输入时允许空格和大小写混合,工具会自动规范化处理。
常见问题
Q:IBAN验证通过是否意味着账户存在?
A:不是。IBAN验证只确认号码格式正确且校验位匹配,不确认该账户是否真实存在。确认账户需要联系对应银行或使用银行的账户验证服务。
Q:IBAN和SWIFT/BIC有什么区别?
A:IBAN标识具体的银行账户(账号),SWIFT/BIC标识具体的银行机构。国际转账通常需要同时提供两者:SWIFT定位银行,IBAN定位账户。
Q:美国的银行有IBAN吗?
A:美国不使用IBAN系统。美国国内转账使用ABA Routing Number和Account Number,国际转账使用SWIFT代码。IBAN主要在欧洲和中东国家使用。
Q:IBAN输错了一位会怎样?
A:校验位算法(mod 97)可以检测到绝大多数单字符错误和相邻字符交换。如果校验不通过,工具会提示IBAN无效,避免将资金转到错误账户。
Q:如何从IBAN中提取银行信息?
A:IBAN的国家代码和BBAN部分包含银行识别信息。不同国家的BBAN结构不同,通常需要查询各国银行代码目录来识别具体的银行和分行。