推荐一个PC的开源复式记账软件beancount
本帖最后由 Prushka 于 2025-1-3 16:30 编辑虽然直接安装Windows版本的beancount很蛋疼,但是现在有了WSL。在WSL里面安装beancount+fava的难度可比下一个Visual Studio 2019的C编译工具小多了。再加上VSCode里面的beancount插件补全功能也很好用,可以说是比较完美的PC记账软件选择了吧。
优点:
- 纯文本格式的数据,完全由你自己掌控
- 开源软件,用得放心
- fava生成的报表很好看
缺点:
- 账户分类只支持英文
- 要折腾一下WSL
报表示例图:
https://wzyboy.im/uploads/2016/02/screenshot-02.png
账本示例图:
http://wx4.sinaimg.cn/large/006MV2nZly1g3smwdvjlbj30mz0m1411.jpg
入门教程:https://wzyboy.im/post/1063.html
如果你只打算在wsl里面用beancount的话,可以看看操作图解:https://zhuanlan.zhihu.com/p/68525917
====
20250103更新:翻新了一个Windows的beancount+fava打包便携版。
Beancount在Windows上安装,一直有一个绕不过去的编译问题,官方推荐的几种方式(MSVC编译器、WSL、Cygwin)都对非电脑专业用户很不友好(程序员也会被绕一下)。
幸好,我发现GitHub上早有人创建了Beancount+Fava的可执行打包exe脚本,但是疏于更新,上次发布已是三年前了。我fork了这个repo,并把打包的Beancount和Fava更新到了最新版本(Beancount 3.0.0 + Fava 1.30)。现将使用流程记录于下。
安装压缩包到系统
[*]从Release界面或Action点进去之后的Artifacts界面下载GitHub Action打包好的fava.zip
[*]然后按Win+R,输入cmd并回车,进入cmd界面,输入:
mkdir C:\Users\Public\bin\fava无反应或输出「子目录或文件已存在」为正常。
[*]然后按Win+E 进入资源管理器界面,在上方地址栏输入C:\Users\Public\bin\fava,按回车进入该目录。
[*]把先前下载好的fava.zip层层解压,直到看见app和python两个文件夹。
解压完成后可能会报「不支持的压缩算法」错误,不用管。
[*]把这两个文件夹拷贝到先前打开的C:\Users\Public\bin\fava目录中。
设置启动Fava快捷方式
[*]使用Fava时,需要设置一个主文件(参考1、byvoid博文),这里以main.bean为例,也可以叫1.bean或114514.bean,都不影响。
[*]在账本主文件同级文件夹(main.bean文件存放的目录),右键—新建—文本文档,然后将其打开,复制以下内容进去:
C:\Users\Public\bin\fava\app\Scripts\fava.exe main.bean注意,如果你的主文件不叫main.bean,那就把上面这行最后的main.bean换成你的主文件带后缀名全名。
[*]然后保存,并关闭,把这个新建 文本文档.txt重命名为fava.bat,并保存。
[*]最后双击启动fava.bat,会看见一个窗口弹出,上面有一行小字:
Starting Fava on http://127.0.0.1:5000
[*]按住Ctrl,点击窗口中的后面那行链接(或者打开你的浏览器,在地址栏里输入后面的地址也行),就能进入Fava的网页界面。
[*]要关闭Fava,直接点右上角的❌就行。
支付宝或微信要是愿意增加记账功能,这些记账软件迟早退出历史舞台 guyfawkes 发表于 2019-6-7 16:11
支付宝或微信要是愿意增加记账功能,这些记账软件迟早退出历史舞台
那自然
—— 来自 HMD Global Nokia X7, Android 9上的 S1Next-鹅版 v2.1.2 之前研究过,有两个痛点所以没有迁移过去
一个是没有好用的安卓端app
一个是没有精确到时刻
— from Sony G8441, Android 9 of S1 Next Goose v2.1.2 月千一夜 发表于 2019-6-7 16:16
之前研究过,有两个痛点所以没有迁移过去
一个是没有好用的安卓端app
一个是没有精确到时刻
手机上的记账app大多是单式的,复式基本上没有(除了很久没更新的贝壳记账和难用的GNUCash)
记账为什么要精确到时刻……这个粒度也太细了吧 记账的话Android我用“钱迹”,感觉不错。PC端直接用Excel了( 早就被安利过了,对我来说最大的痛点就是外出记账不方便。 Lisylfn 发表于 2019-6-7 16:21
记账的话Android我用“钱迹”,感觉不错。PC端直接用Excel了(
excel记多了感觉有点“重”,这个更轻量一点 萌名雪 发表于 2019-6-7 16:24
早就被安利过了,对我来说最大的痛点就是外出记账不方便。
毕竟PC软件 依云老师安利之后我在用vim-beancount,还挺不错的
方不方便看个人,对于我来讲没有内置云端存储是加分项 手机上一直用bluecoins,虽然不能直接读取支付宝微信信用卡的记录需要手动填写,但就是觉得好用 Hieda 发表于 2019-6-7 16:42
依云老师安利之后我在用vim-beancount,还挺不错的
方不方便看个人,对于我来讲没有内置云端存储是加分项 ...
现在用的Moneywiz,被它的内置云同步弄得不厌其烦…
— from Sony G8441, Android 9 of S1 Next Goose v2.1.2 虽然好久不用现金了,但我还是愿意用第三方软件记账 都折騰WSL了干嘛不上SQL-Ledger gofbayrf 发表于 2019-6-7 18:13
都折騰WSL了干嘛不上SQL-Ledger
wsl现在真不折腾,特别傻瓜化操作。
—— 来自 HMD Global Nokia X7, Android 9上的 S1Next-鹅版 v2.1.2 暗藏流 发表于 2019-6-7 17:40
记账当然最好的是在手机上,随身而且手机自己就是个钱包。电脑太不方便了 ...
可以手机记录纯文本之后输入电脑做分析
—— 来自 HMD Global Nokia X7, Android 9上的 S1Next-鹅版 v2.1.2 马一下 不懂记账,开始用对这种表格的美感感觉很爽
我就有一个问题,我用信用卡花了20块钱吃饭
Liabilities:CreditCard:DiscoverIt -28.66 USD
Expenses:Eating 28.66 USD
在fava里的Income statement没有问题
为什么Balance sheet就看着很奇怪
Equity
-xxx CNY
-xxx USD
Before
-xxx CNY
-xxx USD
CN
-xxx CNY
US
-xxx USD
Earnings
28.66 USD
Current
28.66 USD
我不太理解为什么在equity里面一定要自动加一个Earnings-Current,因为我没有赚钱,这是让什么归零啊 waox 发表于 2019-6-8 00:41
不懂记账,开始用对这种表格的美感感觉很爽
我就有一个问题,我用信用卡花了20块钱吃饭
负债增加相应权益减少,的确不是赚钱,因为实际上是预支收入举债 请问楼主,这个软件支持自动计算资产评估吗?比如投资收益和资产减记。正常情况下买东西当时应该不会有明显的资产变化,而是在使用过程中通过不断的资产增值或减记来体现。至于买菜这种根本没必要记。 Prushka 发表于 2019-6-7 16:21
手机上的记账app大多是单式的,复式基本上没有(除了很久没更新的贝壳记账和难用的GNUCash)
记账为什么 ...
肯定要精确到时刻,不然怎么计算资产的增值和减记? guyfawkes 发表于 2019-6-7 16:11
支付宝或微信要是愿意增加记账功能,这些记账软件迟早退出历史舞台
支付宝有个简单的记账功能 lixianfyss 发表于 2019-6-8 04:25
肯定要精确到时刻,不然怎么计算资产的增值和减记?
以天为单位啊
—— 来自 HMD Global Nokia X7, Android 9上的 S1Next-鹅版 v2.1.2 本帖最后由 Prushka 于 2019-6-8 05:50 编辑
lixianfyss 发表于 2019-6-8 04:23
请问楼主,这个软件支持自动计算资产评估吗?比如投资收益和资产减记。正常情况下买东西当时应该不会有明显 ...
你是说这种吗?
http://ws4.sinaimg.cn/large/006MV2nZly1g3tawheuz1j31xd0q9q75.jpg
证券投资的话请看这里 使用 Beancount 记录证券投资
waox 发表于 2019-6-8 00:41
不懂记账,开始用对这种表格的美感感觉很爽
我就有一个问题,我用信用卡花了20块钱吃饭
当小明决定开始用复式簿记的时候,他从 Equity 里倒一些豆子其他桶里(或从其他桶倒一些豆子到 Equity 里),将其他桶的数字调节成符合当前实际情况即可。实际操作中,人们一般只关心 Income 和 Expenses 桶的数字在某段时间内的变化,并不关心它的总数(除非你想统计你出生到现在一共收入多少、支出多少),只要把 Assets 和 Liabilities 调节准就行了。这便是 Equity 的作用——存放已有的「权益」。
所以不用关心Equity里面的东西,只要不报错一般就不会有问题。 waox 发表于 2019-6-8 00:41
不懂记账,开始用对这种表格的美感感觉很爽
我就有一个问题,我用信用卡花了20块钱吃饭
因为是复式记账嘛 Prushka 发表于 2019-6-8 05:32
你是说这种吗?
主要是固定资产投资,证券一般不需要这种记账软件。记账软件主要就是反应所购买的固定资产的价值变化状况,如果买的产品有严重的资产减记现象,购买前需要非常谨慎。 Prushka 发表于 2019-6-7 15:42
虽然直接安装Windows版本的beancount很蛋疼,但是现在有了WSL。在WSL里面安装beancount+fava的难度可比下一 ...
楼主怎么导入银行账单啊?比如招行的借记卡和信用卡账单? 楼主这套让我对电子记账这套东西更加惧怕了,
还是专门手写记账好了 猫不萌 发表于 2019-6-15 01:37
楼主这套让我对电子记账这套东西更加惧怕了,
还是专门手写记账好了
请问手写记账有哪些作用?平常买菜吃饭,坐车通信水电费这些都是刚性支出,且无法变卖,感觉记录下来没有用。 org-mode 不是也能做计算吗?tag 什么也都支持,win osx linux 直接用就行了。 本帖最后由 Prushka 于 2019-6-15 06:12 编辑
猫不萌 发表于 2019-6-15 01:37
楼主这套让我对电子记账这套东西更加惧怕了,
还是专门手写记账好了
电子记账图个后期处理分析省事,程序自动计算了。beancount和手写记账其实也没什么区别罢。 网银患者 发表于 2019-6-15 01:00
楼主怎么导入银行账单啊?比如招行的借记卡和信用卡账单?
https://yuchi.me/post/beancount-intro/
https://morefreeze.github.io/2016/10/beancount-thinking.html
导入支付宝账单:http://lidongchao.com/2018/07/20/has_header_in_csv_Sniffer/
总之都需要手动调整下格式,最好是用python编一个小脚本 ekdc11 发表于 2019-6-15 05:21
org-mode 不是也能做计算吗?tag 什么也都支持,win osx linux 直接用就行了。
报表难弄 我用记账城市。这东西其实如果不是花钱比较随意平常不注意的人,其实用处不是很大。
----发送自 Sony G8441,Android 9 lixianfyss 发表于 2019-6-15 05:00
请问手写记账有哪些作用?平常买菜吃饭,坐车通信水电费这些都是刚性支出,且无法变卖,感觉记录下来没有 ...
我也不知道,我习惯了粗略的记,防止我想不起来某一次大开支的原因 本帖最后由 旧游时节 于 2019-6-15 08:45 编辑
之前用过一段时间的Ledger,也是复式记账+文本文档管理账单。结果后来有几天忙着没记后来也就懒得记了。
反正现在消费都走微信支付宝,自己盘点的时候也麻烦不到哪去。每天去记录反而更花时间。 旧游时节 发表于 2019-6-15 08:43
之前用过一段时间的Ledger,也是复式记账+文本文档管理账单。结果后来有几天忙着没记后来也就懒得记了。
...
我也考虑过用ledger,但是beancount的报表实在是太好看了。