Skip to content

数据格式与备份 ​

一份数据就是一个 JSON,长这样:

jsonc
{
  "version": 1,
  "baseCcy": "CNY",
  "accounts": [
    { "id": "hk_sv_hsbc", "name": "汇丰", "region": "hk", "kind": "savings",
      "ccy": "BOTH", "limit": null, "note": "", "active": true }
  ],
  "months": [
    { "id": "2026-08-04#k3f2a", "date": "2026-08-04", "rate": 0.92,
      "values": { "hk_sv_hsbc": { "hkd": 52400, "cny": 4200 } },
      "carried": [] }
  ]
}
字段含义
id只是一个不重复的键,不代表月份 —— 所以同一个月可以有多条记录。排序、环比一律按 date 走。早期数据里 id 是 "2026-08" 这种形式,仍然能正常读入
regioncn / hk
kindsavings / credit / invest / receivable
ccyCNY(只有人民币)/ HKD(只有港币)/ BOTH(港币 + 港卡里的人民币子账户)
rate1 港币 = 多少人民币,每条记录单独存
金额一律是带符号的余额:信用卡欠款是负数,溢缴款是正数
carried这条记录里「沿用上一条、还没更新」的账户 id

installments(可选)是分期,形如:

js
{ bank, name, total, periods, start: "2026-10", feeType: "none"|"rate"|"once", fee, ccy, accountId }

start 是第 1 期还款的月份;feeType: rate 时 fee 是每期费率(%),once 时是首期一次收的金额。只用于展示,不参与任何合计。

备份 ​

导出 / 导入都在右上角 ⋯ 菜单里。

服务端的数据在 server/data/users/(systemd 部署时在 /var/lib/finance-dashboard/users/), 每个用户一个 JSON 文件,原子写入并留一份 .bak,直接 tar 就能备份。见部署 · 备份。

基于 MIT 许可发布