账单 Bill

个人与多人共享账单、分摊与结算工具,支持微信与支付宝账单导入、图片附件、账户结余,飞牛 NAS 上可用 NAS 账号登录

v0.2.0

界面预览

PC 端 · 总览仪表盘(深色)
PC 端 · 总览仪表盘(深色)
PC 端 · 账户管理与结余(浅色)
PC 端 · 账户管理与结余(浅色)
PC 端 · 共享账本分摊与结算
PC 端 · 共享账本分摊与结算
移动端 · 账单与筛选
移动端 · 账单与筛选

功能特性

📒

多账本管理

按生活、交通、旅行等用途创建多个账本,支持排序、默认账本与归档

💳

收支账户

支持银行卡(借记卡/信用卡)、微信、支付宝;仅保存卡号指纹与尾号,不存完整卡号

💰

账户结余

给每个账户设初始余额,结余=初始余额+收入-支出,改删流水自动回正,负数余额红色高亮

🏷️

分类与标签

分类最多支持两级,上级分类自动继承收支类型;账单支持多标签、回车快捷新增

📝

个人账单

收入、支出、备注、时间一应俱全,支持筛选、分页和 CSV 导出

🖼️

图片附件

个人与共享账单均可上传最多 9 张图片,支持缩略图、大图预览与原图下载

📥

账单导入

直接导入微信、支付宝导出的 CSV / Excel 账单,自动识别收入与退款、匹配分类、跳过重复流水

📊

个人分析

支持全部或指定账本,提供区间汇总、收支趋势、分类、账本、标签和星期分布

👥

共享账本

创建、邀请、接受/拒绝、成员管理和归档,多人共同记账轻松协作

⚖️

四种分摊方式

等额、固定金额、百分比、份额,共同支出与共同收入灵活拆分

🧮

自动补差结算

自动计算每位成员应收/应付,并给出转账次数较少的结算建议

✅

结算记录

把实际转账计入余额,支持回溯删除,账目来龙去脉清晰可查

🔐

账号与安全

密保问题找回密码、记住登录 1–365 天可配置、管理员审计日志与 API Key 管理

🐂

飞牛一键登录

支持飞牛 NAS 账号授权登录与账号绑定、URL 网关应用入口;响应式界面适配 PC 侧边栏与手机底部导航,浅色/深色/跟随系统

技术架构

后端技术栈

  • Go - 高性能编译型语言
  • Gin - 轻量级 HTTP 框架
  • GORM - ORM 框架
  • SQLite (WAL) - 单文件数据库
  • 金额以整数“分”存储,避免浮点误差

前端技术栈

  • Vue 3 - 现代前端框架
  • TypeScript - 类型安全
  • Vite - 构建工具
  • Pinia - 状态管理
  • Tailwind CSS - 原子化样式

部署方式

  • 飞牛 NAS(fnOS)FPK 包(amd64 / arm64)
  • Docker 多平台镜像
  • 本地二进制与全平台压缩包

快速开始

飞牛 NAS 安装

  1. 下载对应架构的 .fpk 文件
  2. 打开飞牛 NAS 桌面 → 应用中心
  3. 点击右上角 手动安装,选择下载的 .fpk 文件
  4. 设置应用端口(默认 8907,范围 1024–65535),点击完成
  5. 安装完成后打开应用,可通过飞牛 NAS 账号授权登录:首次创建的应用账号自动成为管理员并绑定当前 NAS 账号

Docker 运行

docker run -d \ --name bill \ -p 8907:8907 \ -v bill-data:/app/data \ -e TZ=Asia/Shanghai \ --restart unless-stopped \ techfunways/bill:v0.2.0

docker-compose.yaml

services: bill: image: techfunways/bill:v0.2.0 container_name: bill restart: unless-stopped ports: - "8907:8907" volumes: - bill-data:/app/data environment: - TZ=Asia/Shanghai

二进制直接运行

解压对应平台的压缩包后:

# Linux / macOS ./bill

启动后浏览器访问 http://localhost:8907,首次注册的账号自动成为管理员。启动参数可通过 ./bill -help 查看。

💡 提示:数据默认保存在 data 目录,核心数据库文件为 data/db/bill.db;应用健康检查地址为 /api/health。运行日志按 logs/YYYYMM/ 目录按天写入,默认保留最近 30 天。

更新日志

v0.2.0 2026-10-20

本版本包含自 v0.1.4 以来的全部功能与体验更新。

  • 新增微信账单导入:直接选择微信导出的账单文件,自动识别收入、支出与退款,按商户与备注匹配分类,重复流水自动跳过
  • 新增支付宝账单导入:支持支付宝导出的 CSV / Excel 账单,同样自动识别收支方向、匹配分类并跳过重复记录
  • 新增账户结余:为银行卡、微信、支付宝等账户设置初始余额,结余=初始余额+收入-支出;修改或删除流水后结余自动回正,记账时下拉可直接看到各账户当前结余,负数余额红色显示
  • 「记一笔」默认沿用上次选择的账本、账户与收支类型,连续记账少点几下
  • 飞牛桌面入口统一到网关域,登录票据就地签发,刷新不再掉登录态,网关域上退出登录即时生效
  • 全局界面密度收紧,一屏能看到更多账单与分析内容
  • 修复 Windows 安装包启动后一碰数据库就报错的问题,Windows 版现在与其它平台功能一致
  • 修复未勾选「记住我」却长期保持登录、以及在网关域退出登录无效的问题
  • 修复共享账本的结余计算与结算方向校验问题
运行(x86/ARM 架构):
docker run -d -p 8907:8907 -v bill-data:/app/data techfunways/bill:v0.2.0
v0.1.4 2026-09-11
  • 飞牛授权登录改用网关跳板与一次性凭证,登录后应用走直连端口访问,刷新不再掉登录态
  • 个人账本默认分类补充常用二级分类,记账选分类更顺手
运行(x86/ARM 架构):
docker run -d -p 8907:8907 -v bill-data:/app/data techfunways/bill:latest
v0.1.3 2026-09-06
  • 修复通过飞牛网关访问时登录后刷新跳回登录页、首页数据加载失败的问题;应用改为直连端口访问,飞牛网关仅用于授权登录
  • 飞牛授权登录先弹窗确认当前 NAS 账号,支持切换其他飞牛账号,取消后不保留登录态
v0.1.2
  • 多用户与角色:开放注册可由管理员配置,第一个注册用户自动成为管理员
  • 个人账本、收支账户、两级分类与多标签,账单筛选、分页与 CSV 导出
  • 图片附件:个人与共享账单最多 9 张,缩略图、大图预览与原图下载
  • 个人分析:区间汇总、收支趋势、分类、账本、标签和星期分布
  • 共享账本:创建、邀请、成员管理和归档,共同支出与共同收入
  • 四种分摊:等额、固定金额、百分比、份额;自动补差与结算建议
  • 飞牛 fnOS:NAS 账号授权登录与账号绑定、自定义服务端口、URL 网关应用入口
  • 响应式界面:PC 侧边栏、手机底部导航,浅色、深色和跟随系统
  • 金额在服务端以整数“分”存储,个人数据按 user_id 隔离
  • 支持飞牛 NAS(fnOS)FPK 安装、Docker 部署、二进制与全平台压缩包
运行(x86/ARM 架构):
docker run -d -p 8907:8907 -v bill-data:/app/data techfunways/bill:latest

常见问题

如何修改端口?

飞牛 NAS 安装向导中可自定义服务端口(默认 8907,范围 1024–65535),升级与运行配置留空则保持当前端口。Docker 方式通过 -p 参数映射端口。

如何多人共同记账?

创建共享账本并邀请成员加入,录入共同支出/收入时可选择等额、固定金额、百分比、份额四种分摊方式;应用会自动计算每位成员应收/应付,并给出转账次数较少的结算建议,实际转账后计入结算记录即可。

忘记密码怎么办?

注册时设置了密保问题的用户,可通过密保问题重置密码。

如何备份数据?

备份数据目录即可,核心数据库文件为 data/db/bill.db,上传的图片附件与运行日志也在数据目录下。建议在升级前手动备份数据目录以确保安全。