从以下五个可运行的 Beancount 账本中复制一个经过验证的账户结构,然后重命名账户并将虚构的金额替换为你自己的数据。每个嵌入的账本都是公开的、在 Git 中版本化,并通过 bean-check 验证。
日常个人理财
为每个银行使用一个资产账户,为每张信用卡使用一个负债账户,并使用费用账户来回答你希望报表解答的问题。完整示例还展示了工资、福利、转账、余额断言和投资持仓。
当你想要一套涵盖现金、信用卡、收入和日常支出的账簿时,复制此结构:
option "operating_currency" "USD"
2026-01-01 open Assets:Bank:Checking USD
2026-01-01 open Liabilities:CreditCard USD
2026-01-01 open Equity:Opening-Balances USD
2026-01-01 open Expenses:Food:Groceries USD
2026-01-01 * "Opening balance"
Assets:Bank:Checking 3,000.00 USD
Equity:Opening-Balances -3,000.00 USD
2026-01-18 * "Corner Market" "Weekly groceries"
Liabilities:CreditCard -71.90 USD
Expenses:Food:Groceries 71.90 USD
2026-01-25 * "Credit card" "Statement payment"
Liabilities:CreditCard 71.90 USD
Assets:Bank:Checking -71.90 USD信用卡账户将购买日期与现金支付日期分开。为每个真实世界的账户添加每月 balance 断言,这样导入错误就无法隐藏。
可结转的信封预算
将每个信封建模为权益子账户,叠加在真实银行账户之上。分配工资会在权益内部移动价值,而购买则同时记录现金流动和预算决策。
复制 Equity:Budget 树,并保持计划与资金分离:
option "operating_currency" "USD"
2026-01-01 open Assets:Bank:Checking USD
2026-01-01 open Income:Salary USD
2026-01-01 open Expenses:Groceries USD
2026-01-01 open Equity:Budget:Unallocated USD
2026-01-01 open Equity:Budget:Groceries USD
2026-01-05 * "Acme Corp" "January salary"
Assets:Bank:Checking 4,100.00 USD
Income:Salary -4,100.00 USD
2026-01-05 * "Budget" "Fund groceries"
Equity:Budget:Unallocated -550.00 USD
Equity:Budget:Groceries 550.00 USD
2026-01-08 * "Whole Foods" "Weekly shop"
Assets:Bank:Checking -128.44 USD
Expenses:Groceries 128.44 USD
Equity:Budget:Groceries -128.44 USD
Equity:Budget:Unallocated 128.44 USD购买中的两对分录独立平衡。这种分离让你可以重置或重新分配信封,而不改变已对账的银行余额。对于 Fava 的目标与实际对比显示,请改用更简单的 预算指令。
自由职业者发票和应收账款
在确认收入时记录发票,然后在客户付款时结清应收账款。为每个客户设置单独的应收账款账户,使未付和部分付款的发票作为普通余额清晰可见。
复制应收账款树,并在两个事件上都标注发票编号:
option "operating_currency" "USD"
2026-01-01 open Assets:Bank:Business USD
2026-01-01 open Assets:Receivable:Northwind USD
2026-01-01 open Income:Consulting USD
2026-01-09 * "Northwind Traders" "January retainer"
invoice: "2026-001"
due: 2026-02-08
Assets:Receivable:Northwind 6,000.00 USD
Income:Consulting -6,000.00 USD
2026-02-05 * "Northwind Traders" "Payment — invoice 2026-001"
invoice: "2026-001"
Assets:Bank:Business 6,000.00 USD
Assets:Receivable:Northwind -6,000.00 USD将销售税计入负债而非收入,并在支付估计税款前将其现金转移到储备资产中。此可运行账本展示了两种模式、部分付款、重新计费的成本以及坏账核销。
出租房产和抵押贷款本金
将房产视为资产,抵押贷款视为负债,租客的押金视为你欠回的钱。将每次抵押贷款付款拆分到利息、本金和托管账户中,以便资产负债表和损益表呈现不同的真实情况。
在添加每月活动之前,先复制房产、债务和运营账户组:
option "operating_currency" "USD"
1970-01-01 commodity PROP123MAIN
2024-01-01 open Assets:RealEstate:Property PROP123MAIN
2024-01-01 open Assets:Bank:Checking USD
2024-01-01 open Assets:Bank:EscrowImpound USD
2024-01-01 open Liabilities:Mortgage USD
2024-01-01 open Income:RealEstate:Rent USD
2024-01-01 open Expenses:RealEstate:MortgageInterest USD
2024-03-15 * "Escrow" "Buy rental property"
Assets:RealEstate:Property 1 PROP123MAIN {400,000.00 USD}
Assets:Bank:Checking -80,000.00 USD
Liabilities:Mortgage -320,000.00 USD
2024-04-01 * "Bank" "Mortgage payment"
Expenses:RealEstate:MortgageInterest 1,866.67 USD
Liabilities:Mortgage 262.39 USD
Assets:Bank:EscrowImpound 566.67 USD
Assets:Bank:Checking -2,695.73 USD保持土地、可折旧建筑物价值、资本改善、累计折旧和托管活动的独立性。出租房产指南 解释了这些余额如何为报表提供数据。
加密货币批次和成本基础
为每次购买在花括号中赋予成本,并在出售时指明同一批次。Beancount 随后会将获取日期和基础价值贯穿于钱包、交易所和应税处置中,而不是将投资简化为一个混合余额。
复制商品、交易所账户和明确的已实现收益分录:
option "operating_currency" "USD"
1970-01-01 commodity BTC
2024-01-01 open Assets:Crypto:Coinbase:BTC BTC
2024-01-01 open Assets:Crypto:Coinbase:USD USD
2024-01-01 open Expenses:Crypto:Fees:Trading USD
2024-01-01 open Income:Crypto:CapitalGains:ShortTerm USD
2024-02-15 * "Coinbase" "Buy 0.10 BTC"
Assets:Crypto:Coinbase:BTC 0.10 BTC {43,800.00 USD, 2024-02-15}
Assets:Crypto:Coinbase:USD -4,380.00 USD
2024-08-20 * "Coinbase" "Sell the February lot"
Assets:Crypto:Coinbase:BTC -0.10 BTC {43,800.00 USD, 2024-02-15}
Assets:Crypto:Coinbase:USD 5,900.00 USD
Expenses:Crypto:Fees:Trading 8.85 USD
Assets:Crypto:Coinbase:USD -8.85 USD
Income:Crypto:CapitalGains:ShortTerm -1,520.00 USD在你自己的钱包之间转账会保留批次而不是产生收入。此可运行账本继续涵盖质押、挖矿、去中心化金融和 NFT;库存指南 解释了记账方法和批次减少。