@fnzc/nz-bank-account-validator

中文文档
1.0.3发布于 2019/08/31MITTypeScriptCommonJS近 30 天下载 5732

验证新西兰银行账户

中文使用文档
文档目录7 节
  1. 安装
  2. 使用量
  3. 算法
  4. 银行账户编号验证
  5. 更改日志
  6. 捐款
  7. 许可证

银行帐户核证人

npm

新西兰银行账户的验证人

安装

npm install --save @fnzc/nz-bank-account-validator

或者说

yarn add @fnzc/nz-bank-account-validator

使用量

函数需要四个字符串参数:

  • 银行身份证
  • 银行分行
  • 账户基础
  • 后缀 返回布尔值 .
var bankAccountValidator = require('@fnzc/nz-bank-account-validator');
bankAccountValidator.isValidNZBankNumber('00', '0000', '00000000', '000');

算法

该算法基于内地税收局2016年3月31日发布的"非居民持有税和居民持有税规格文件".

银行账户编号验证

所有银行使用的银行账户编号格式是数字格式,包括下列部分:

  • 银行身份证(最多两位数)
  • 银行分行(最多4位数)
  • 账户基号(最多8位数字)
  • 账户后缀(最多4位数).

在内陆收入处处理,每个账户编号部分的字段都最大。 如果提供的数字少于最大数,则数值是正确的,并用零加字段(如适用).

验证过程的第一步是验证银行分行号. 每家银行的身份证,都会分配一系列的分行号码. 如果银行身份证不是以下所列号码之一,或者分行号码未包括在指定的范围内,则银行账户号码无效. 如果分支号码有效,则从下面的“算法”一栏取出适当的代码,并在页面上执行第一段中概述的第二个验证步骤.

银行身份证有效分支编号算法
01号0001-0999、1100-1199、1800-1899见附注
第02条0001 - 0999, 1200 - 1299 (英语)见附注
03号0001-0999、1300-1399、1500-1599、1700-1799、1900-1999见附注
04号2020-2024 (中文(简体) )
06号0001 - 0999, 1400 - 1499 (英语)见附注
08号6500 - 6599 (英语)D级
09个0000 个页:1
10个5165 - 5169 (中文(简体) )见附注
第11个5000 - 6499, 6600 - 8999 (英语)见附注
第12条3000 - 3299, 3400 - 3499, 3600 - 3699 (英语)见附注
第13条4900 - 4999 (英语)见附注
页:14700 - 4799 (英语)见附注
15个3900 - 3999 (英语)见附注
16个4400 - 4499 (英语)见附注
页:13300-3399 (中文(简体) )见附注
第 18 条3500 - 3599 (英语)见附注
第 19 条4600 - 4649 (中文(简体) )见附注
20国4100 - 4199 (中文(简体) )见附注
21国4800 - 4899 (英语)见附注
22个4000 - 4049 (英语)见附注
第23条3700 - 3799 (英语)见附注
24个4300 - 4349 (英语)见附注
第25条2500 - 2599 (英语)法语
第 26 条2600-2699 (中文(简体) )G级
27个3800 - 3849 (英语)见附注
第28条2100 - 2149 (英语)G级
29个2150 - 2299 (英语)G级
30个2900 - 2949 (英语)见附注
31个2800 - 2849 (英语)页:1
33个6700 - 6799 (英语)法语
35个24 -- 2499号见附注
第38条9000 - 9499 (英语)见附注
88国道8800 - 8805 (英语)

说明:如果账户基号低于009900,那么应用算法A,否则应用算法B.

第二个验证步骤是应用于整个帐号的modulus n算法. 算法类型取自上页的表格. 遵循这一进程:

  • 将账号中每个位数的相应权重系数标明为下图所示。 注:所有字段(iebankID、Bankbranch、账户基础和账号后缀)都是正确的,并加上了零.
  • 将加权因子及其相关账号数字的产品相加. 如果使用 E 或 G 算法,则加上产品的两位数(十和十),然后再次加上相接前结果的两位数(见第16页例3).
  • 除以下文“Modulo”一栏中的数值。 如果其余为零,则银行账户号码有效.
算法银行处账户基础后缀莫杜罗
A 类零点6379 (英语)00A58421 (英语)0000 个第11个
页:1零点0000 个00A58421 (英语)0000 个第11个
C级页:10000 个91A53421 (中文(简体) )0000 个第11个
D级零点0000 个07654321 (英语)0000 个第11个
页:1零点0000 个00005432 (英语)0001 个第11个
法语零点0000 个01731731 (英语)0000 个10个
G级零点0000 个01371371 (英语)0371号10个
页:1零点0000 个0000000( 千分之一 )0000 个1个

说明1:算法C目前没有被银行使用. 说明2: 算法X(为银行编号31)总是验证银行账户号码有效. 它包含在本表中,所以同样的验证逻辑可以适用于所有帐号.

更改日志

捐款

欢迎拉动请求.

许可证

版本与发布记录

@fnzc/nz-bank-account-validator 共发布 3 个版本,首次发布于 2019/01/30;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.0.3latest2019/08/317 年前
1.0.22019/01/307 年前
1.0.12019/01/307 年前

关于 @fnzc/nz-bank-account-validator 的常见问题

@fnzc/nz-bank-account-validator 是什么?

验证新西兰银行账户

如何安装 @fnzc/nz-bank-account-validator?

在项目目录运行 npm install @fnzc/nz-bank-account-validator,或使用 pnpm add / yarn add / bun add。

@fnzc/nz-bank-account-validator 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@fnzc/nz-bank-account-validator 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@fnzc/nz-bank-account-validator 可以商用吗?

@fnzc/nz-bank-account-validator 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@fnzc/nz-bank-account-validator 的下载量有多少?

根据 npm 官方下载统计,@fnzc/nz-bank-account-validator 在 2026/10/15 – 2026/11/13 这 30 天内被下载 5,732 次,日均约 191 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@fnzc/nz-bank-account-validator 还在维护吗?

最新版本 1.0.3 发布于 2019/08/31(7 年前);至今共发布 3 个版本,其中过去 12 个月发布了 0 个;首次发布于 2019/01/30。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。