准备好掌控你的财务了吗?本指南将帮助你在几分钟内开始使用 Beancount。你将学习如何创建第一个账本、设置基本账户,以及记录第一笔交易。

初始设置
创建你的第一个账本
; Basic structure for a new ledger
2024-01-01 open Assets:Checking
2024-01-01 open Equity:Opening-Balances
2024-01-02 * "Initial Deposit"
Assets:Checking 100.00 USD
Equity:Opening-Balances基本配置
option "title" "Personal Finance Ledger"
option "operating_currency" "USD"文件组织
推荐结构
; 1. Configuration Options
option "title" "Personal Ledger"
option "operating_currency" "USD"
; 2. Account Declarations
2024-01-01 open Assets:Checking USD
2024-01-01 open Assets:Savings USD
2024-01-01 open Expenses:Food USD
2024-01-01 open Equity:Opening-Balances
; 3. Initial Balances
; Pad fills the gap up to Equity:Opening-Balances, so it must be dated
; before the assertion. Balance assertions are checked at the start of
; their day, so assert the next morning.
2024-01-01 pad Assets:Checking Equity:Opening-Balances
2024-01-02 balance Assets:Checking 1000.00 USD
; 4. Transactions
2024-01-15 * "Grocery Store" "Weekly groceries"
Expenses:Food 50.00 USD
Assets:Checking分区组织
-
永久账户
2024-01-01 open Liabilities:Payables USD 2024-01-01 open Assets:Receivables USD -
银行账户
2024-01-01 open Assets:Bank:Checking USD 2024-01-01 open Assets:Bank:Savings USD 2024-01-01 open Income:Bank:Interest USD -
投资账户
2024-01-01 open Assets:Investment:Cash USD 2024-01-01 open Assets:Investment:Stocks VTSAX 2024-01-01 open Income:Investment:Dividend USD
验证与报告
基本验证
# Check for errors (exits 0 when clean)
bea --file ledger.beancount check
# Browse balances, reports, and charts in the web interface
fava ledger.beancountbea check 是验证器:当账本无误时它以 0 退出,否则列出所有错误并以非零状态退出。通过 CLI 快速入门 安装它。Fava 是网页界面——运行它并打开打印的 http://localhost:5000 地址即可查看资产负债表、损益表和账户日志。
常用报告
Beancount 3 通过 Fava 的网页界面、一条命令的 bea report,或使用 bea query(运行 Beancount 查询语言)进行即席查询来生成报告。Beancount 3 移除了旧版的报告和网页命令;bea report 和 Fava 取代了它们。
# Balance sheet, in one command
bea --file ledger.beancount report balance-sheet
# Income statement, in one command
bea --file ledger.beancount report income-statement
# Balance-sheet numbers: balances by asset, liability, and equity account
bea --file ledger.beancount query "SELECT account, sum(position) AS balance WHERE account ~ '^(Assets|Liabilities|Equity)' GROUP BY account ORDER BY account"
# Income-statement numbers: totals by income and expense account
bea --file ledger.beancount query "SELECT account, sum(position) AS total WHERE account ~ '^(Income|Expenses)' GROUP BY account ORDER BY account"
# One account's journal, with a running balance
bea --file ledger.beancount query "SELECT date, narration, position, balance WHERE account = 'Assets:Checking'"管理初始余额
Padding 示例
2024-01-01 open Assets:Checking USD
2024-01-01 open Equity:Opening-Balances
; Pad account to match a known balance
2024-01-01 pad Assets:Checking Equity:Opening-Balances
; Assert the known balance the next day: assertions are evaluated at the
; start of their date, and the pad transaction must fall before it
2024-01-02 balance Assets:Checking 1525.00 USDbalance 断言会在其日期的开始检查账户,因此它必须晚于应包含的 pad(或任何交易)日期。如果 pad 和 balance 日期相同,则 pad 不会被使用,断言也会不足——Beancount 会报告 Unused Pad entry 和 Balance failed。Equity:Opening-Balances 账户必须先开设,然后才能对其进行 padding。
账户关闭
2024-01-01 open Assets:OldBank:Checking USD
2024-06-30 close Assets:OldBank:Checking ; Account closed交易去重
处理转账
; Credit card payment - combined view
2024-01-15 * "Credit Card Payment"
Assets:Checking -500.00 USD
Liabilities:CreditCard 500.00 USD
; Flag for pending match
2024-01-15 * "Pending CC Payment"
! Assets:Checking -500.00 USD
Liabilities:CreditCard 500.00 USD余额断言
; Regular balance checks prevent duplicates
2024-01-31 balance Assets:Checking 2150.25 USD
2024-01-31 balance Liabilities:CreditCard -350.00 USD最佳实践
-
文件组织
- 最初保持一个主文件
- 使用清晰的分节标题
- 将相关账户分组在一起
-
账户名称
- 使用一致的命名规则
- 包含国家/机构前缀
- 保持逻辑层级
-
余额验证
- 定期进行余额断言
- 适当使用 pad 账户
- 跟踪账户关闭
-
货币处理
- 声明记账货币
- 使用一致的商品代码
- 指定货币约束
后续步骤
现在你已经设置好一个基本的账本:
- 记录常规交易:从你的日常支出和收入开始
- 设置银行账户导入:使用 CSV 导入或银行连接来自动化数据录入。将语句导出粘贴到 CSV 转 Beancount 转换器 中,在浏览器中获取平衡条目,或使用 OFX 与 QIF 转 Beancount 处理
.ofx、.qfx和.qif下载。 - 复制经过验证的布局:下载适用于 家庭、信封预算 或 自由职业 的可运行启动文件;这些文件都收录在 正在使用的账本示例 中。然后参考同一图库中的房产和投资模式调整账本。
- 学习高级语法:探索 语法参考 以处理更复杂的场景
- 生成你的第一批报告:使用 UI 功能创建财务报告并分析你的支出
- 在终端中工作:通过 CLI 快速入门 安装
bea命令行工具,然后在 与 bea 的第一个月 中完整地关闭一个月的账目
快速参考
常见账户类型:
Assets:Bank:Checking- 你的支票账户Expenses:Food:Groceries- 杂货支出Income:Salary:Company- 就业收入Liabilities:CreditCard:Visa- 信用卡债务
基本命令:
bea --file ledger.beancount check- 验证你的账本(出错时以非零状态退出)bea --file ledger.beancount report balance-sheet- 打印资产负债表bea --file ledger.beancount query "SELECT ..."- 查询余额和交易fava ledger.beancount- 启动网页界面以查看报告和图表
这些指南为使用 Beancount 管理个人财务奠定了坚实的基础。准备好添加你的第一笔交易了吗?查看我们的 UI 交易指南。