累计折旧(适用于 Beancount):实用的纯文本指南
如果你在会计中跟踪固定资产——笔记本电脑、相机、机器,甚至是办公家具——你的账簿需要反映它们价值的下降。这涉及两个关键概念:折旧(费用)和它的累计总额 累计折旧。本指南用通俗的语言解释这两者,并展示如何在 Beancount 中使用可直接复制粘贴的示例进行建模,还包括强大的自动化选项。
什么是累计折旧?
累计折旧 是自资产投入使用之日起已记录的折旧总额。可以把它看作一个累计计数。它不是一种新的费用——只是该资产迄今为止所有折旧费用的总和。
在财务报表中,你会看到累计折旧与资产的原始成本并列。这让阅读账簿的人能够同时看到 历史成本(你为其支付的金额)和 净账面价值(账面上当前的价值)。
一个关键细节是,累计折旧是 抵减资产(contra-asset)账户。听起来可能复杂,但概念很简单:
- 它是一个“资产”账户,位于科目表的
Assets
部分。 - 但它拥有 贷方 余额(在 Beancount 的资产账户中表现为负值),降低 相关固定资产的账面价值。
它在资产负债表上出现在哪里?
累计折旧通常直接位于其对应的固定资产下方。例如:
设备:电脑 | $3,000.00 |
减:累计折旧 | ($1,000.00) |
设备:电脑,净额 | $2,000.00 |
许多财务报表会简化为单行,如 “物业、厂房及设备,净额”。该数字代表所有资产的历史成本总和减去累计折旧总额,即最终的 净账面价值。
如何计算折旧?
折旧的计算方法有多种。你选择的方法决定了每期记录的费用金额,从而影响累计折旧的累计额。常见的两大类方法是:
- 直线法(SL): 最简单、最常用的记账方法。你在资产使用寿命的每个期间内计提相等的费用。例如,一台价值 83.33。
- 税法折旧(如美国的 MACRS): 为了税务目的,政府通常规定加速折旧表。美国的 修改后加速成本回收系统(MACRS) 允许在资产使用早期计提更大的折旧。Beancount 完全可以处理这些表——只需根据官方表(如 IRS Publication 946)计算金额并生成相应的分录。
公式(直线法)
期间折旧 =
累计折旧(截至日期 t) =
残值 是资产使用寿命结束时的估计残余价值。为简化起见,通常假设为零。
Beancount 实践:建模成本与累计折旧
为了在 Beancount 中正确跟踪固定资产并保留其原始成本,你需要为每类资产使用一对资产账户,再加一个费用账户。
Assets:Equipment:Computers:Cost
(保 存历史成本)Assets:Equipment:Computers:AccumDep
(抵减资产,随时间贷记)Expenses:Depreciation:Computers
(记录期间费用)
此结构符合标准会计实践,也是 Beancount 中管理固定资产折旧的推荐方式。
方案 A:手动直线法分录
这是最直接的方式。你可以完全控制每笔分录,便于理解其工作原理。
1. 打开所需账户
2025-01-01 open Assets:Bank:Checking
2025-01-01 open Assets:Equipment:Computers:Cost
2025-01-01 open Assets:Equipment:Computers:AccumDep
2025-01-01 open Expenses:Depreciation:Computers
2. 记录购买(按历史成本)
购买资产时,借记 Cost
账户。
2025-01-20 * "Purchase MacBook Pro"
Assets:Equipment:Computers:Cost 3000.00 USD
Assets:Bank:Checking -3000.00 USD
3. 记录月度折旧
每月记录一次折旧费用。对 3000 ÷ 36 = $83.33。
分录为借记费用账户、贷记抵减资产账户。
2025-02-28 * "Monthly depreciation - MacBook Pro (SL 36mo)"
Expenses:Depreciation:Computers 83.33 USD
Assets:Equipment:Computers:AccumDep -83.33 USD ; 贷记抵减资产
将此分录重复 36 个月。Assets:Equipment:Computers:AccumDep
的余额会随时间变得更负,从而降低资产的净账面价值。
快速检查: 你可以在 Fava 的资产负债表中查看净账面价值,或运行以下查询:
bean-query myledger.bean "SELECT account, SUM(position) WHERE account 'Assets:Equipment:Computers:(Cost|AccumDep)' GROUP BY account"
两个账户的余额之和即为净账面价值。
方案 B:使用 Fava 的 amortize
插件自动化
如果你使用 Fava(Beancount 的流行网页界面),且折旧为固定金额,可通过插件实现自动化。
首先,在 Beancount 文件顶部启用插件:
plugin "fava.plugins.amortize_over"
然后,创建一条定义完整折旧计划的交易。
; 1. 正常记录首次购买
2025-01-20 * "Purchase MacBook Pro"
Assets:Equipment:Computers:Cost 3000.00 USD
Assets:Bank:Checking -3000.00 USD
; 2. 设置折旧计划
2025-01-20 * "Depreciation schedule - MacBook Pro"
amortize_months: 36
Expenses:Depreciation:Computers 3000.00 USD
Assets:Equipment:Computers:AccumDep -3000.00 USD
插件会读取此交易并自动生成 虚拟分录:每月 $83.33,持续 36 个月。虚拟分录不会写入 .bean
文件,但会出现在所有报表中。此方式适用于直线法,但不适用于 MACRS 等不等额的折旧表。
方案 C:使用第三方插件生成实际分录
如果你希望生成真实的、非虚拟的分录,同时保留自动化便利,可使用 beancount-periodic
插件(作者 Dallas Lu)。该插件可根据配置自动创建带日期的分录,兼具手动分录的可审计性与自动化的高效性。
查看结果:成本、累计折旧与净账面价值
无论采用哪种方 法,资产负债表都会显示 Cost
与 AccumDep
两个账户。两者之和即为 净账面价值。这种“原始成本减累计折旧”的展示方式正是会计师和财务分析师所期望的,能够完整透明地呈现资产的使用年限与当前价值。
资产处置(出售、报废或退役)
资产使用寿命结束时,你可能会出售、报废或退役。要将其从账簿中移除,需要:
- 清除历史成本。
- 清除累计折旧。
- 记录收到的现金。
- 记录产生的盈亏(现金收入与净账面价值之差)。
示例:资产出售获利
假设在 2027‑06‑15 出售该 MacBook Pro。
- 原始成本:$3,000
- 出售时累计折旧:-$2,500
- 净账面价值:2,500 = $500
- 出售收入:$800
- 出售盈余:500 = $300
Beancount 记账如下:
2027-06-15 * "Sell MacBook Pro"
Assets:Bank:Checking 800.00 USD ; 收到现金
Assets:Equipment:Computers:AccumDep 2500.00 USD ; 借记抵减资产以冲销
Assets:Equipment:Computers:Cost -3000.00 USD ; 贷记原始成本
Income:Gains:AssetDisposals -300.00 USD ; 贷记盈余
如果仅收到 100),则将差额记入 Expenses:Losses:AssetDisposals
(借方)。
FAQ(快速问答)
-
累计折旧是资产还是负债?
两者都不是。它是 抵减资产,位于资产区但为贷方余额,起到降低资产价值的作用。 -
购买后还能直接记入 Cost 账户吗?
通常不建议。抵减资产的目的是保留历史成本,所有价值下降应记入...:AccumDep
。 -
能在 Beancount 中使用 MACRS(税法)折旧表吗?
可以。先依据 IRS Publication 946 计算每期金额,然后用手动分录或周期插件记录。Fava 的amortize
插件不适用于不等额的 MACRS 表。 -
Section 179 加速费用怎么办?
Section 179 允许在投入使用的当年全额费用化。对应的 Beancount 记账就是在购买时直接借记费用账户,而不是固定资产账户。
常见错误及避免方法
-
直接在 Cost 账户上计提折旧。
- 解决方案: 始终贷记
...:AccumDep
,保留历史成本。
- 解决方案: 始终贷记
-
资产处置时忘记冲销累计折旧。
- 解决方案: 处置分录必须包含 借记
...:AccumDep
,以清除该资产的累计折旧。
- 解决方案: 处置分录必须包含 借记
-
混淆税法折旧与记账折旧。
- 解决方案: 明确区分税务表(用于报税)和记账表(用于财务报表),分别使用对应的分录。
-
误用 Fava
amortize
插件导致虚拟分录未被审计。- 解决方案: 若需审计痕迹,请改用生成真实分录的插件或手动分录。
方案 A 示例代码
2025-01-01 open Assets:Bank:Checking
2025-01-01 open Assets:Equipment:Computers:Cost
2025-01-01 open Assets:Equipment:Computers:AccumDep
2025-01-01 open Expenses:Depreciation:Computers
2025-01-20 * "Purchase MacBook Pro"
Assets:Equipment:Computers:Cost 3000.00 USD
Assets:Bank:Checking -3000.00 USD
2025-02-28 * "Monthly depreciation - MacBook Pro (SL 36mo)"
Expenses:Depreciation:Computers 83.33 USD
Assets:Equipment:Computers:AccumDep -83.33 USD
方案 B 示例代码
plugin "fava.plugins.amortize_over"
2025-01-20 * "Purchase MacBook Pro"
Assets:Equipment:Computers:Cost 3000.00 USD
Assets:Bank:Checking -3000.00 USD
2025-01-20 * "Depreciation schedule - MacBook Pro"
amortize_months: 36
Expenses:Depreciation:Computers 3000.00 USD
Assets:Equipment:Computers:AccumDep -3000.00 USD
方案 C 示例代码
(此处请根据 beancount-periodic
插件的配置自行编写相应的自动化分录。)
资产处置示例代码
2027-06-15 * "Sell MacBook Pro"
Assets:Bank:Checking 800.00 USD
Assets:Equipment:Computers:AccumDep 2500.00 USD
Assets:Equipment:Computers:Cost -3000.00 USD
Income:Gains:AssetDisposals -300.00 USD
参考文献与资源
- Beancount 官方文档
- Fava 插件列表
- IRS Publication 946(美国税法折旧表)
- Section 179 与 MACRS 相关税务指南
通过本指南,你可以在 Beancount 中实现对固定资产的精确折旧管理,并利用自动化工具提升记账效率。祝你财务管理顺利!