乐于分享
好东西不私藏

做了个银行对账单转换技能,MT940/Excel/PDF 一键转成国内司库系统导入模板

做了个银行对账单转换技能,MT940/Excel/PDF 一键转成国内司库系统导入模板

财务人员在使用国内司库系统的时候,大概率都干过一件事——把银行对账单手动整理成系统导入模板。

这件事情不复杂,但非常消耗耐心。每家银行的格式不一样:有的给 Excel,有的给 PDF,境外银行给的是 MT940。而目标系统又各不相同:用友BIPV5、金蝶云星瀚、保融ATS、九恒星G20、用友NCC……每个系统的导入模板格式都不一样,字段名、列顺序、是否带说明 sheet、单元格批注要求,差异很大。

如果每次都要手动复制粘贴、调整列顺序、补日期格式、填组织编码,一个月处理几十张对账单,大把时间就耗在这上面了。

所以我写了一个技能(skill),把这件事自动化了。


这个技能能做什么

输入一份银行对账单文件,告诉它目标系统是哪个,它自动完成格式解析、字段映射、模板填充,输出目标系统可直接导入的标准文件。

一句话概括:MT940 / Excel / PDF 对账单 → 用友BIP旗舰版 / 金蝶云星瀚 / 保融ATS / 九恒星G20 / 用友NCC 导入模板。


核心能力

格式解析层 支持三种主要格式:

  • MT940:SWIFT 标准银行对账单格式,境外银行的标配。自动解析 :61: 交易记录、:86: 交易详情等关键字段。
  • Excel:国内主要银行的 Excel 对账单。通过余弦相似度算法智能匹配列名——不管银行把"对方账号"写成"对手账号"还是"收款账号",都能自动识别。
  • PDF:基于 PyMuPDF 的位置信息按列重组表格,兼容各种列头折行格式(比如"交易时"+"间"→"交易时间")。文本型 PDF 直接提取,扫描型 PDF 可选配 OCR 支持。

目标系统输出层 覆盖五个主流司库/ERP 系统:

目标系统
简称
说明
用友BIPV5
BIPV5
用友BIP旗舰版平台,银行流水处理模板
金蝶云星瀚
EAS_YXH
离线明细导入 .xlsx,保留单元格批注和下拉项
保融ATS
FINGARD
离线信息 .xls,含说明 sheet
九恒星G20
NSTC
批量导入银行明细格式 .xls
用友NCC
YYNCC
数据页签 .xls,含对照表

每个系统的输出严格遵循各自的模板格式,不是简单地把字段塞进去——该有的批注、下拉项、说明 sheet、对照表,一个都不少。

智能字段匹配 是里面比较有意思的部分。不同银行的对账单列名千奇百怪:有的叫"贷方发生额",有的叫"收入金额",有的叫"入账金额",还有的叫"贷方发生额(收入)"。如果硬编码映射关系,每新加一家银行就要改代码。我用余弦相似度做了一个字段匹配器,计算列名与标准字段名的相似度后自动对应,新增银行格式只需要维护一份 JSON 映射配置,不用改逻辑代码。

批量合并 也支持——一个目录下多家银行的对账单扔进去,合成为单个导入文件,适合月末集中处理。


在哪里下载

技能发布在两个市场:

Clawhub(龙虾社区)

  • 地址:https://clawhub.ai/jreadstone/imp-trm-accstmt[1]
  • OpenClaw 命令行安装:openclaw skills install imp-trm-accstmt

WorkBuddy 技能市场

  • 打开 WorkBuddy 桌面客户端
  • 在左侧边栏点击「技能」
  • 搜索「银行对账单」或「imp-trm-accstmt」
  • 点击安装即可

也可以直接在 WorkBuddy 的对话里说:「帮我安装银行对账单处理和转换」,系统会自动从推荐市场搜索并安装。


在 YonClaw 里怎么用

YonClaw 是用友发布的超级智能体,安装技能的方式跟 WorkBuddy 略有不同——需要先从 Clawhub 下载技能文件包,再上传到 YonClaw 的技能中心。

第一步:下载技能文件

打开 Clawhub 页面 https://clawhub.ai/jreadstone/imp-trm-accstmt,点击下载技能压缩包(通常是[2] .zip 格式)。

第二步:上传到 YonClaw

打开 YonClaw 客户端,进入「技能中心」,点击右上角的「上传技能」按钮:

选择刚才下载的压缩包,等待上传完成即可。上传后技能会出现在「我的技能」列表中,直接可用。

第三步:对话中使用

安装完成后,使用方式跟 WorkBuddy 完全一致。在 YonClaw 的对话窗口直接输入:

把招商银行的对账单转换成 BIPV5 导入模板

或者:

将 D:/对账单/ 目录下所有文件合并转换成九恒星司库格式

YonClaw 会自动调用技能完成解析和转换,输出文件可以直接下载使用。


在 WorkBuddy 里怎么用

安装完成后,在 WorkBuddy 里直接对话就能用。举个例子:

单文件转换:

把平安银行的对账单转换成 BIPV5 导入模板

系统会自动识别文件格式是 PDF,解析后生成 BIPV5 格式的输出文件。

带参数指定:

将 D:/对账单/招商银行.xlsx 转换为金蝶云星瀚的导入模板,账户组织编码 ORG001

批量合并:

把 D:/对账单/ 目录里所有对账单合并转换成九恒星司库导入模板

系统会自动处理目录下所有 MT940、Excel、PDF 文件,合并输出一个九恒星格式的文件。

输出的文件默认放在输入文件同目录,文件名自动加上目标系统后缀,方便管理。

在 OpenClaw 里怎么用

安装后同样通过自然语言对话调用。OpenClaw 环境下支持 CLI 直接调用:

# 单文件转换python scripts/main.py input.xlsx# 指定输出路径python scripts/main.py input.pdf -o output/BIPV5_output.xlsx# 批量合并python scripts/main.py --merge -i ./input_dir -o ./merged.xlsx

一些实务细节

账号自动提取:很多银行对账单的表头区域包含本方账号、户名、币种信息,Excel 解析器会自动提取这些信息填入输出模板。账号中附带的币种标识(如"账号(人民币)")也会自动清理。

多页 PDF 合并:部分银行的 PDF 对账单跨多页,首页有表头、后续页只有数据行。PDF 解析器按 Y 坐标分组、按 X 坐标排序列,自动识别跨页表格并合并。

PDF 的 OCR 支持:默认处理文本型 PDF。如果遇到扫描型 PDF,可以接入 Tesseract OCR,目前接口是开放的,也可以替换为百度 OCR、阿里云 OCR 等。

错误处理:内置了完整的错误码体系(E001-E009),从格式识别失败、必填字段缺失到数据格式错误,每种异常都有明确的提示和处理建议。


适用场景

场景
说明
司库系统上线期
大量历史银行对账单需要导入到新系统
多银行日常对账
每月集中处理多家银行的流水,统一导入
境外账户管理
境外银行只有 MT940 格式,需要转换为系统可读格式
财务系统切换
从旧系统迁移到 BIPV5 / 金蝶云星瀚 / NCC
PDF 对账单处理
农商行、村镇银行等只提供 PDF 对账单,无 Excel 版本

最后

这个技能的代码和配置文件都是开放的,MIT-0 许可证。如果你用的银行格式目前不在支持范围里,可以自己加解析器和映射配置,结构是插件化的,不需要改动核心逻辑。

如果你也在做司库实施或者日常资金管理,经常被对账单格式来回转换折腾,可以在 WorkBuddy 或 Clawhub 上安装试一下。有问题或者需要支持新的银行格式,也欢迎反馈。

Clawhub 地址:https://clawhub.ai/jreadstone/imp-trm-accstmt[3]

引用链接

[1]https://clawhub.ai/jreadstone/imp-trm-accstmt

[2]https://clawhub.ai/jreadstone/imp-trm-accstmt,点击下载技能压缩包(通常是: https://clawhub.ai/jreadstone/imp-trm-accstmt%EF%BC%8C%E7%82%B9%E5%87%BB%E4%B8%8B%E8%BD%BD%E6%8A%80%E8%83%BD%E5%8E%8B%E7%BC%A9%E5%8C%85%EF%BC%88%E9%80%9A%E5%B8%B8%E6%98%AF

[3]https://clawhub.ai/jreadstone/imp-trm-accstmt