跳转到主要内容
可运行的账本示例

可运行的账本示例

复制五种经过验证的 Beancount 账本模式,涵盖家庭财务、信封预算、自由职业者发票、出租房产和投资成本基础。

从以下五个可运行的 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;库存指南 解释了记账方法和批次减少。