@centrapay/swift-parser

中文文档
1.0.3发布于 2026/11/03Apache-2.0CommonJS构建来源已验证近 30 天下载 1万

快速财务信息解析器( MT940, MT942)

中文使用文档
文档目录11 节
  1. 安装
  2. 使用量
  3. 国 际
  4. API 密码
  5. parse () (帮助)
  6. 声明
  7. 交易
  8. 结构化交易细节
  9. 历史
  10. 法律
  11. 贷项

Centrapay SWIFT 解析器

JavaScript的SWIFT银行对账单解析器(ES2015). 支助 MT 940 客户 语句消息 财务报告和审定财务报表 MT 942 临时交易报告。 。 。 .

安装

npm install @centrapay/swift-parser

使用量

const parser = require('@centrapay/swift-parser');
const statements = parser.parse({
  type: 'mt940',
  data: fs.readFileSync(path, 'utf8'),
});

statements.forEach(stmt => {
  console.log(stmt.statementDate, stmt.accountIdentification, stmt.number.statement);
  stmt.transactions.forEach(txn => {
    console.log(txn.amount, txn.currency);
  };
};

国 际

这个软件包还包括一个CLI,它分析一个SWIFT文件,并将结果输出为JSON:

swift-parse -t mt942 my-statement.txt

API 密码

parse () (帮助)

解析 SWIFT 语句文档 .

若为 parser.parse() 以 { validate: true } 然后是MT940语句 经进一步验证的有:

  • 所有严格要求的标记
  • 期初/期末余额货币相同
  • 期初余额+营业额=期末余额

回返情况: 矩阵<声明>

参数 :

参数类型说明
数据字符串原始 SWIFT 信件文本
类型字符串信件格式( mt940 或 mt942)
验证布尔可选 执行额外的语义错误检查

声明

外地类型说明
交易参考字符串标记 20 引用
相关参考字符串标记 21 引用
账户识别字符串标记 25 自己的银行账户识别
编号。报表字符串标记 28 主语句编号
数字.顺序字符串标记 28 语句子编号(序列)
数字. 节字符串标记 28 语句子编号( 存在于一些银行)
语句日期日期标记 62(MT940,日精度)或标记 13D(MT942,分精度)
打开目标日期标记 60 语句打开日期
关闭目标日期标记 62 语句关闭日期
关闭 Availbalance 数据日期标记 64 期末可用余额日期,默认=期末日期
前置易碎电池日期页:1
货币字符串报表货币 (美元,欧元.)
打开屏蔽大数报表的期初余额(有符号,根据借方/贷方标记计算)
关闭大数报表期末余额(有符号,根据借项/贷记号计算)
关闭易碎品大数标记 64 期末可用余额,默认为期末余额
前进的易碎品大数页:1
资料 给会计字符串附加声明级别信息
交易数组收取交易
信件锁定对象如果存在语句信息块( 警告)

交易

外地类型说明
日期日期交易日期
金额大数交易金额(带有符号、信用+、去比特-)
倒转布尔交易为倒转
货币字符串交易货币(报表货币副本)
细节字符串有关86个标签的内容,可以是多行(\n 已删除)
交易类型字符串MT940交易类型代码(例如NTRF.)
参考文献字符串付款参考字段
条目日期日期输入日期字段
基金代码字符串基金代码字段
银行参考字符串银行参考
其他细节字符串额外细节(补充细节)
结构细节对象如果检测到结构化细节
非线性字符串与交易有关的NS标签的内容(标签后61或86)

结构化交易细节

这个 transaction.structuredDetails 属性可用于访问结构化 数据来自语句交易细节(SWIFT"86"标记). 以下内容: 支持结构化细节格式 :

  • '<sep>DD'时 <sep> 可能会是 '>' 或者说 '?' 财务报告和审定财务报表 DD 是两位数
  • '/TAG/value'时 TAG 是 2 至 4 大写字符.

示例

>20some details >30more data
{
  "20": "some details",
  "30": "more data"
}

示例

/ORDP/Smith Corp
{
  "ORDP": "Smith Corp"
}

历史

见 更改日志

版权:"2015" 亚历山大·齐布尔斯基 和其他贡献者。 版权 2020 百分点付费。 。 。 .

这个软件根据Apache-2.0许可证获得许可. 请看 自由主义 详细情况.

贷项

从 a-fas/mt940 (单位:千美元)。最初灵感来自 WoLpH/mt940 电话。 。 。 .

版本与发布记录

@centrapay/swift-parser 共发布 6 个版本,首次发布于 2020/08/03;过去 12 个月发布了 2 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.0.3latest2026/11/036 天前
1.0.22026/10/051 个月前
1.0.12024/10/302 年前
1.0.02020/08/056 年前
0.2.02020/08/036 年前
0.1.02020/08/036 年前

关于 @centrapay/swift-parser 的常见问题

@centrapay/swift-parser 是什么?

快速财务信息解析器( MT940, MT942)

如何安装 @centrapay/swift-parser?

在项目目录运行 npm install @centrapay/swift-parser,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 swift-parse,可以用 npx swift-parse 直接运行。

@centrapay/swift-parser 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/centrapay__swift-parser 是否存在。

@centrapay/swift-parser 支持 ESM 还是 CommonJS?

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

@centrapay/swift-parser 可以商用吗?

@centrapay/swift-parser 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@centrapay/swift-parser 的下载量有多少?

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

@centrapay/swift-parser 还在维护吗?

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