登录到控制台后,你会看到一个自动创建的名为「Your Ledger」的账本,其中包含了一些示例数据,你可以点击 Open Fava 进入到 Web UI:
在 Fava 中,你可以点击左侧导航栏的 Editor 进入到纯文本编辑界面,或者点击 Editor 右侧的加号来快速添加新的账目。
或者你还可以用 Git 将账本下载到本地(需要先 设置 SSH 密钥):
$ git clone [email protected]:ledgers/1 'Your Ledger'
然后使用你常用的编辑器打开它:
目前的示例数据来自于 Beancount 的官方仓库,可能不太适合新用户入门,我们正在着手改进示例数据。
如果你还不了解 Beancount, 可以先看一下这些资料:
Beancount 的每一笔交易都表示资金从一个账户流向另一个账户,根据你记账的粒度和目标,你可能需要先创建一些账户:
2023-01-01 open Income:Salary ; 工资收入
2023-01-01 open Income:Investment ; 投资收入
2023-01-01 open Assets:Bank:ICBC ; 工商银行储蓄账户
2023-01-01 open Assets:Funds:Antfin ; 蚂蚁财富基金账户
2023-01-01 open Liabilities:CreditCard:CMB ; 招商银行信用卡
2023-01-01 open Expenses:Food ; 食物支出
2023-01-01 open Expenses:Uncounted ; 未分类的支出
然后就可以开始记账了:
2023-11-10 * "发工资"
Income:Salary -10000.00 CNY
Assets:Bank:ICBC +10000.00 CNY
2023-11-11 * "吃火锅"
Assets:Bank:ICBC -250.00 CNY
Expenses:Food ; 省略金额让 Beancount 自动计算
2023-11-15 * "信用卡还款"
Assets:Bank:ICBC -1500.00 CNY
Liabilities:CreditCard:CMB +1500.00 CNY
当然,在你开始用 Beancount 之前,你的资产账户里很可能已经有了一些余额,你需要告诉 Beancount 这些账户的初始余额:
2023-10-31 pad Assets:Bank:ICBC Equity:Opening-Balances
2023-11-01 balance Assets:Bank:ICBC 12345.00 CNY
2023-10-31 pad Liabilities:CreditCard:CMB Equity:Opening-Balances
2023-11-01 balance Liabilities:CreditCard:CMB -1250.00 CNY
如果你不想记录每一笔小额交易,那么你也可以通过定期添加 pad 和 balance 指令来更新账户的余额,并将差额笼统地记录到某个账户(例如上面的例子中将差额归为了 Equity:Opening-Balances
):
; 将自上次记录以来的余额变动都归于未分类的支出
2023-11-30 pad Liabilities:CreditCard:CMB Expenses:Uncounted
2023-12-01 balance Liabilities:CreditCard:CMB -1300 CNY
; 将自上次记录以来的余额变动都归于投资收入
2023-11-30 pad Assets:Funds:Antfin Income:Investment
2023-12-01 balance Assets:Funds:Antfin 3,009.41 CNY
登录到控制台后,你会看到一个自动创建的名为「Your Ledger」的账本,还有对应的 Git 地址([email protected]:ledgers/1
),如果你已经有了一个自己的 Beancount 账本,那么你可以将它推送到 Hostedbeans 上,覆盖掉自动创建的账本。
在 设置 SSH 密钥 之后,在你本地的仓库中运行:
$ git remote add origin [email protected]:ledgers/1
$ git push --set-upstream --force origin :
Enumerating objects: 215, done.
Counting objects: 100% (215/215), done.
Compressing objects: 100% (204/204), done.
Writing objects: 100% (215/215), 68.42 KiB | 4.02 MiB/s, done.
remote: Resolving deltas: 100% (109/109), done.
To hostedbeans.io:ledgers/1
+ 42f54cc...8cf9ffd master -> master (forced update)
branch 'master' set up to track 'origin/master'.
注意 该操作会导致 Hostedbeans 上原仓库的数据丢失。