原文地址:https://segmentfault.com/a/1190000039353992
作者:Fw 恶龙
本文首发于:思否
一、前言
最早是从大学开始记账的,因为过后惟一的支出是每个月的生活费,为了能够买本人想要的货色,只能通过记账以缩小不必要的开销。过后用的是 Timi 记账,整体格调还是挺喜爱的,始终用到了当初。然而个别的记账 app 记的都是流水账(单式记账),对于一些简单场景无奈做到很好的记录,构想以下场景:
场景 1:从银行卡别离转 1000 元到支某宝和微某信
或者你会认为当成银行卡的总金额就好,然而这样银行卡只会记录转出了 2000 元,而这 2000 元在支某宝和微某信里具体怎么花的你并不分明,支某宝和微某信的收益率也不一样,这时候把支某宝和微某信别离当成一个账户或者是更好的办法,这样在定期对账时,账目才好对上。
这里波及到外部转账(即:银行卡 -> 支某宝 / 微某信),这是单式记账无奈记录的。
场景 2:同学一起进来吃饭,由你先垫付,其他同学示意后续再转账给你
假如共付了 500(共 5 人,每个人 100),你记账收入 500,而后同学还你的时候再别离记账支出 100,这样在后续统计时会发现自己多收入了 400,尽管支出也会多出 400,然而在比拟几个月的收入时会发现这个月收入得特地多,数据间的比拟意义不大。
当然还有更多简单的场景(买房、二手买卖、基金、股票 …)
为什么流水账(单式记账)不可能满足记账需要?:从单式记账到复式记账
对于 Beancount 介绍的文章曾经十分多了,想要理解的能够见文末的相干链接,本文次要记录 Beancount 的装置以及初步应用。
二、Beancount 装置步骤
1. 装置 Python
其实我很早就想试试复式记账了,然而过后看到还须要装置 Python,就认为还须要学习这门语法,间接劝退。最近又被安利复式记账,所以再次尝试搭建环境,后果会发现其实不必学习 Python(当然高阶玩法可能还是须要)。
谬误记录
- win10 cmd 下运行 python 弹出 windows 利用商店
2. 装置 Beancount
命令行执行如下代码,装置速度视网络状况而定,以下工夫仅供参考
pip install beancount(10 分钟左右)pip install fava(10 分钟左右)
谬误记录
- NameError: name ‘pip’ is not defined 应用 pip 时报错:起因是无需在 python 环境中运行
- pip 版本太低:执行以下代码将 pip 版本更新至最新
python -m pip install --upgrade pip
3. 新建账本 moneybook.bean
参考右侧链接文章的“账本示例”:记账神器 Beancount 教程
;【一、账本信息】option "title" "我的账本" ; 账本名称
option "operating_currency" "CNY" ; 账本主货币
;【二、账户设置】;1、开设账户
1990-01-01 open Assets:Card:1234 CNY, USD ; 尾号 1234 的银行卡,反对 CNY 和 USD
1990-01-01 open Liabilities:CreditCard:5678 CNY, USD ; 双币信用卡
1990-01-01 open Income:Salary CNY ; 工资收入
1990-01-01 open Expenses:Tax CNY ; 交税
1990-01-01 open Expenses:Traffic:Taxi CNY ; 打车生产,只反对 CNY
1990-01-01 open Equity:OpenBalance ; 用于账户初始化,反对任意货币
;2、账户初始化
2019-08-27 * """ 银行卡,初始余额 10000 元"
Assets:Card:1234 10000.00 CNY
Equity:OpenBalance -10000.00 CNY
;【三、交易记录】2019-08-28 * "杭州出租车公司" "打车到公司,银行卡领取"
Expenses:Traffic:Taxi 200.00 CNY
Assets:Card:1234 -200.00 CNY
2019-08-29 * """ 餐饮"
Assets:Card:1234 -1100.00 CNY
Liabilities:CreditCard:5678 1100.00 CNY
2019-08-31 * "XX 公司" "工资收入"
Assets:Card:1234 12000.00 CNY
Expenses:Tax 1000.00 CNY
Income:Salary
4. 启动我的项目
fava moneybook.bean
5. 浏览器查看我的项目:http://localhost:5000/
三、备忘
1. 类型
- Assets 资产
- Liabilities 负债
- Equity 权利(净资产)
- Expenses 收入
- Income 支出
2. 正当填充 + 定期断言
平时可能存在一些收入遗记记录,或者是比拟小的金额(如:群红包)没有记录的状况,工夫一长会导致记账总金额和账户总金额对不上的状况,所以须要定期校对。
正当填充:
2021-02-28 pad Assets:Wechat Income:MoneyManagement
定期断言:
2021-03-01 balance Assets:Wechat 1000.00 CNY
四、相干链接
- Beancount 复式记账:接地气的 Why and How
- Beancount —— 命令行复式簿记
- 应用 Beancount 记录证券投资
- Beancount 复式记账(一):为什么
- 记账神器 Beancount 教程
- beancount 繁难入门指南:具体到日常的一些我的项目的命名