92451 67c85678e6 feat: 接入网商银行每日动账明细 (#831)
Co-authored-by: 92451 <924518135@qq.com>
Co-committed-by: 92451 <924518135@qq.com>
2026-11-02 20:58:42 +08:00

2.1 KiB

网商银行每日交易明细

每天从支付宝企业工作台进入网商银行企业网银,查询并下载前一天的交易明细,批量写入财务台账“动账明细”。

首次准备

pwsh -File scripts\wangshang-bank\import-accounts.ps1
pwsh -File scripts\wangshang-bank\open-login.ps1

账号表默认读取 D:\zyc\网商银行账号密码.xlsx。脚本生成:

  • runtime/private/wangshang-bank-accounts.json:公司、支付宝账号密码、网商账号和账户简称。
  • runtime/private/wangshang-bank-profiles/:每个网商账号独立的 Edge 登录态。
  • 登录 Cookie 额外使用 Windows 当前用户 DPAPI 加密保存,后续任务可直接恢复会话。

若支付宝要求短信、扫码或图形验证,在打开的 Edge 窗口完成验证即可;脚本最多等待 5 分钟,成功后自动关闭该账户窗口并继续下一个账户。

手动运行

# 导出并导入昨天
pwsh -File scripts\wangshang-bank\run-wangshang-daily.ps1

# 指定日期,只导出
pwsh -File scripts\wangshang-bank\run-wangshang-daily.ps1 -Date 2026-11-01 -SkipImport

# 指定公司,校验端到端链路但不写台账
pwsh -File scripts\wangshang-bank\run-wangshang-daily.ps1 -Company 株洲市珉佳 -Date 2026-11-01 -DryRun

安装每日任务

pwsh -File scripts\wangshang-bank\install-daily-task.ps1

任务名为 CaiWuXiTong-WangshangBankDaily,默认每天 10:00 执行;电脑休眠时会在恢复后补跑。

数据规则

  • 页面笔数和下载文件有效行必须一致,否则整批不写入。
  • 每批先完整解析,再按“网商银行来源 + 账号 + 日期”替换,最后统一重算一次台账。
  • 部分账户登录失效时,成功账户仍会导入,失败账户保持原数据,任务以失败状态结束并写日志。
  • 账户总表暂未登记网商账号时,明细仍会按公司简称显示在“动账明细”;补齐账户和期初余额后才会进入余额计算。
  • 密码、登录态、下载账单和日志只保存在 runtime/private/,不会进入 Git。