跳到主要内容

90 篇博文 含有标签「Accounting」

查看所有标签

S-Corp 税务申报截止日期(2025 年):Beancount 用户简明指南

· 阅读需 6 分钟
Mike Thrift
Mike Thrift
Marketing Manager

为你的 S-corp 报税涉及几个关键的截止日期,你不能错过。密切关注这些日期可以避免昂贵的罚款,并保持你的财务记录整洁。以下是关于要申报什么、何时到期、逾期会发生什么以及如何在你的 Beancount 账本中保持整洁的会计师友好型简短版本。


重要日期(适用于日历年 S-Corp) 🗓️

2025-07-25-s-corp-tax-filing-deadlines-2025

对于大多数按标准日历年运营的 S-corp,年度纳税申报表 1120-S 表格 有两个主要日期需要记住。

  • 申报表到期日: 申报截止日期为 2025 年 3 月 17 日星期一。官方到期日始终是纳税年度结束后第三个月的第 15 天(3 月 15 日),但由于该日期在 2025 年是星期六,因此 IRS 的“下一个工作日”规则将截止日期推迟到星期一。
  • 如果你需要更多时间: 你可以通过在 3 月 17 日原始截止日期或之前提交 7004 表格 来获得 自动 6 个月的延期。这会将你的申报到期日移至 2025 年 9 月 15 日。请记住,这是 申报 的延期,而不是 缴纳 任何应缴税款的延期。

其他申报者的注意事项: 如果你使用会计年度,则你的申报表应在你的纳税年度结束后 第三个月的第 15 天 之前到期。如果你的 S-corp 已解散,则最终申报表通常应在解散日期后第三个月的第 15 天之前到期。


你必须发送给股东的内容

S-corp 的一项核心职责是报告每个股东在公司收入、扣除额和抵免额中的份额。

你必须在 你的 1120-S 表格到期日的同一天 向每个股东提供 K-1 附表。无论你是按原始截止日期还是延期截止日期提交,这都适用。K-1 提供了股东提交个人纳税申报表所需的信息。


你真正关心的罚款

IRS 对未按时申报的行为处以巨额罚款,因此准时申报是值得的。

  • 逾期提交 1120-S: 罚款为 每位股东每月(或部分月份)245 美元,最长可达 12 个月。如果你的 2024 年申报表(于 2025 年提交)逾期 60 天或以上,最低罚款将增加到应缴税款或 510 美元 中的较小者。
  • 逾期/不正确的 K-1: 未能按时提供正确的 K-1 将被处以 每份附表 330 美元 的罚款。如果未能提供是由于故意无视,则罚款可能会加倍,或为应报告金额的 10%,取较大者。
  • 未缴税款: 即使你使用 7004 表格提交了延期申请,任何应缴税款 也会从原始的 3 月截止日期开始 累积利息。虽然大多数 S-corp 不欠联邦所得税,但在特殊情况下,一些 S-corp 可能面临公司层面的税收。

如果你受到处罚,不要立即支付。查看 IRS 的 行政处罚减免 选项,例如首次减免或表明你延迟申报有合理的原因。


公司层面的预估税(边缘情况)

虽然 S-corp 是穿透实体,但它们有时可能需要对内置收益或超额净被动收入等项目缴纳 实体级税。如果你的 S-corp 预计这些税款将超过 500 美元,则你必须进行 季度预估税款缴纳

对于 2025 日历年,这些分期付款的到期日为:

  • 2025 年 4 月 15 日
  • 2025 年 6 月 16 日(6 月 15 日是星期日)
  • 2025 年 9 月 15 日
  • 2025 年 12 月 15 日

付款应通过电子联邦税务支付系统 (EFTPS) 进行。


Beancount 设置:保持申报和付款清晰明了

使用你的账本来创建清晰的税务合规活动审计跟踪。

初始账户

Assets:Bank:Operating
Assets:PrepaidTax:Federal ; 用于延期/预估付款
Expenses:Tax:Federal:S-Corp ; 用于公司层面的应缴税款
Liabilities:Tax:Federal:Payable
Equity:Distributions
Income:Sales

标记申报和 K-1 交付

使用 note 交易为关键合规操作添加时间戳。

2025-03-10 note "已准备 2024 年 1120-S 表格;K-1 已准备好分发。"
2025-03-17 note "已电子申报 2024 年 1120-S 表格;已提供所有股东 K-1。"

记录延期

如果你申请延期但未付款(常见情况):

2025-03-17 note "已提交 7004 表格,将 2024 年 1120-S 延期至 2025-09-15。"

如果你在延期时支付了预估税款(S-corp 很少见):

2025-03-17 * "2024 年 1120-S 延期付款(预估)"
Assets:Bank:Operating -2000 USD
Assets:PrepaidTax:Federal 2000 USD

记录最终税款支付

如果你在申报时最终需要缴纳公司层面的税款:

2025-09-15 * "结算 2024 年 S-corp 应缴税款"
Assets:PrepaidTax:Federal -2000 USD
Expenses:Tax:Federal:S-Corp 2000 USD

有用的 bean-query 检查

使用简单的查询验证你的操作。

  • 确认你已记录 K-1 交付:

    SELECT date, narration WHERE narration ~ "K-1";
  • 查看今年所有联邦税收现金流动:

    SELECT SUM(position) WHERE account ~ "Tax:Federal|PrepaidTax:Federal" AND year = 2025;

快速核对清单 ✅

  • 2025 年 3 月 17 日 记入你的日历,以便提交 1120-S 表格,或在该日期之前提交 7004 表格 以获得延期。
  • 在你提交申报表(原始或延期)的同一天向所有股东 提供 K-1 附表
  • 如果适用,请安排任何公司层面税款的 季度预估付款
  • 认真对待截止日期以避免罚款,但如果出现不可避免的疏忽,请寻求 罚款减免

本指南提供一般信息,不能替代专业的税务建议。请咨询合格的注册会计师以解决你的具体财务状况。

S-Corp 选举截止日期(2025 年):Beancount 用户简明指南

· 阅读需 7 分钟
Mike Thrift
Mike Thrift
Marketing Manager

正在考虑选择 S-corp 税务身份?很好——千万不要错过截止日期。 对于小企业主来说,S-corp 选举可以成为一个强大的节税工具,但其截止日期是严格且不可协商的。 错过一个截止日期可能会使你的税务情况变得非常复杂。

以下是你需要了解的实用且经过会计师认可的版本,以及如何在 Beancount 账本中清晰地跟踪所有内容。

2025-07-23-s-corp-election-deadline-2025


截止日期,简而言之

最重要的日期是提交 2553 表格,小型企业公司选举。 这份表格告诉美国国税局你希望以 S-corp 的身份纳税。

  • 对于现有的、按日历年运营的企业: 你必须在你希望选举生效的纳税年度的 第 3 个月的第 15 天之前提交 2553 表格。 对于 2025 年的选举(自 2025 年 1 月 1 日起生效),截止日期是 2025 年 3 月 15 日,星期六。 由于这一天是周末,根据美国国税局的周末/节假日规则,实际截止日期将推迟到下一个工作日:2025 年 3 月 17 日,星期一
  • 对于新企业: 如果这是你企业的第一个纳税年度,你有 **“2 个月零 15 天”**的时间,从你的纳税年度开始之日起提交。 确切日期取决于你的纳税年度正式开始的时间。 例如,如果你的企业于 1 月 7 日开始运营,你的截止日期将是 3 月 21 日。

提示: 如果你的企业按财政年度而不是日历年度运营,则适用相同的逻辑。 计算你的截止日期,从你的财政年度开始日期算起第 3 个月的第 15 天。


如果你错过了截止日期怎么办?

不要惊慌。 美国国税局理解企业主可能会错过截止日期。 如果你打算选择 S-corp 身份但未能按时提交,你可能有资格获得 迟交选举的救济

美国国税局提供了一个简化的程序,税收程序 2013-30,允许许多小企业申请追溯 S-corp 身份。 如果你可以证明你有合理的理由迟交,并且符合该程序的其他要求,你通常有资格获得救济。


与 S-Corps 相关的其他关键日期

一旦你成为 S-corp,截止日期并不会停止。 以下是你日历上需要标记的另外两个重要日期:

  • 1120-S 申报(S-corp 纳税申报表): 你的年度 S-corp 纳税申报表,1120-S 表格,应在你的纳税年度结束后 第 3 个月的第 15 天之前提交。 对于大多数企业(按日历年申报的企业),这与选举截止日期相同:2025 年 3 月 17 日
  • 需要更多时间? 如果你无法按时提交 1120-S,你可以提交 7004 表格 以获得 自动 6 个月的延期。 这将把提交申报表的截止日期延长至 9 月 15 日。 重要的是,这是 提交 的延期,而不是 缴纳 的延期。 你欠的任何税款仍应在原定的 3 月截止日期前缴纳。

谁应该选择 S-Corp?

S-corp 身份并不适合所有人。 它的主要好处是减少 自雇税。 它是通过允许你将企业的利润分成两类来实现这一点:

  1. 合理的 W-2 工资: 这是你支付给自己的工资,需要缴纳标准的工资税(社会保障和医疗保险)。
  2. 股东分配: 这是你从企业获得的剩余利润,无需 缴纳自雇税。

然而,这种优势伴随着额外的复杂性和成本。 S-corps 要求运行 正式的工资单,遵守美国国税局制定的 “合理薪酬” 标准,并处理更多的合规文书工作,例如提交 1120-S 表格和向股东发放 K-1 表格。

在你做出决定之前,请进行计算。 注册会计师可以帮助你模拟收支平衡点,即节税超过额外管理成本的点。


使用 Beancount 简化截止日期

维护良好的账本是你遵守 S-corp 规定的最佳助手。 你可以使用 Beancount 来掌握截止日期,并清楚地区分工资和分配。

最小化科目表(入门)

以下是一个基本的科目表,可帮助你入门:

  • Assets:Bank:Checking
  • Income:Sales
  • Expenses:Payroll:Wages
  • Expenses:Payroll:EmployerTaxes
  • Equity:Distributions用于股东提取
  • Equity:Opening-Balances

典型的过账

你的 Beancount 分录将在工资支出和股权分配之间创建清晰的区分。

; W-2 工资是一项业务支出
2025-02-28 * "发放工资 - 二月"
Assets:Bank:Checking -6200 USD
Expenses:Payroll:Wages 5000 USD
Expenses:Payroll:EmployerTaxes 1200 USD
; entity: S-Corp period: 2025-02

; 股东分配是提取股权,而不是一项支出
2025-03-10 * "股东分配"
Assets:Bank:Checking -3000 USD
Equity:Distributions 3000 USD
; entity: S-Corp period: 2025-Q1

有用的防护措施(查询和标签)

使用 Beancount 的功能来检查你的财务状况,并确保你符合合理的薪酬标准。

  • 使用一些容易记住的标签标记每次所有者提取,例如 distrib: "yes"
  • 定期运行查询,比较已支付的总工资和已提取的总分配。

你可以使用 bean-query 从你的终端运行快速检查:

SELECT account, SUM(position)
WHERE (account ~ 'Expenses:Payroll:Wages' OR account ~ 'Equity:Distributions')
AND year = 2025
GROUP BY account;

这将为你提供该年度工资和分配的清晰摘要,帮助你和你的注册会计师评估你的工资是否“合理”。

选举的书面记录

将你的 S-corp 文件整理好并链接到你的账本。

  • 在你的 Beancount 目录中创建一个 docs/ 文件夹,用于存储你签署的 2553 表格美国国税局的接收函、任何 迟交选举救济 声明以及你的 工资单设置文件(EIN、州 ID)的 PDF 文件。
  • 在你提交选举的当天,在你的账本中记录一笔 note 交易。 这将创建一个永久的、带日期的记录。
2025-01-22 note "已提交 S-corp 选举的美国国税局 2553 表格(自 2025-01-01 起生效)"

需要注意的边缘情况

  • 你的“第一个纳税年度”的开始日期可能不是你的成立日期。 “2 个月零 15 天”截止日期的计时从你的公司 拥有股东、获得资产或开始业务运营 之日起算——以先发生者为准。
  • 对于非日历财政年度,请精确计算。 你的 2553 表格截止日期基于你的财政年度的 开始日期,而你的 1120-S 表格截止日期基于其 结束日期

快速核对清单

准备好了吗? 以下是指导你的最终核对清单。

✅ 根据利润水平、工资单准备情况和特定州的规则,决定 S-corp 结构是否适合你的企业。 ✅ 将 2553 表格 和正确的截止日期添加到日历中(并为自己设置一个提前一周的提醒)。 对于 2025 年,截止日期是 2025 年 3 月 17 日。 ✅ 如果你迟交,请立即评估你是否有资格根据 税收程序 2013-30 获得救济。 ✅ 配置你的工资单系统,并在你的 Beancount 账本中映射新的支出和股权账户。 ✅ 准备在截止日期前提交 1120-S 表格,或提交 7004 表格 申请延期。


本指南提供一般信息,并非税务建议。 每种业务情况都是独特的。 请咨询你的注册会计师,以确定适合你具体情况的最佳行动方案。

Beancount 的技术优势:与 Ledger、hledger 和 GnuCash 的性能、Python API 和数据完整性深度对比

· 阅读需 7 分钟
Mike Thrift
Mike Thrift
Marketing Manager

选择个人会计系统需要在性能、数据架构和可扩展性之间进行权衡。对于工程师和其他技术用户来说,选择通常取决于哪个系统提供最健壮、可预测和可编程的基础。

根据一份详细的比较报告,让我们分析 Beancount 与其流行的开源替代方案 Ledger-CLI、hledger 和 GnuCash 的技术细节。

2025-07-22-beancounts-technical-edge-a-deep-dive-on-performance-python-api-and-data-integrity-vs-ledger-hledger-and-gnucash


速度和性能:量化基准 🚀

对于任何严肃的数据集,性能都是不可协商的。 Beancount 的架构可以处理数十年的交易数据,而不会影响速度。尽管是用 Python(v2)实现的,但其高度优化的解析器效率非常高。

  • Beancount: 实际使用表明,它可以在 大约 2 秒内加载和处理包含 数十万笔交易的账本。内存使用量适中;解析约 10 万笔交易只需使用几十兆字节的 RAM,即可将源文本转换为内存中的对象。
  • 100 万笔交易压力测试: 使用包含 100 万笔交易、1,000 个账户和 100 万个价格条目的合成账本进行的基准测试揭示了显著的架构差异:
    • hledger(Haskell):约 80.2 秒内成功完成完整解析和报告,处理速度约为 12,465 笔交易/秒,同时使用约 2.58 GB 的 RAM。
    • Ledger-CLI(C++): 该进程在 40 分钟后终止,但未完成,这可能是由于已知的回归导致在处理高度复杂的账本时内存和 CPU 使用过多。
    • Beancount: 虽然未包含在该特定 100 万笔交易测试中,但其性能曲线表明它可以有效地处理该任务。此外,即将推出的采用全新 C++ 核心和 Python API 的 Beancount v3 预计将在吞吐量方面带来另一个数量级的提升。
  • GnuCash(C/Scheme): 作为将整个数据集加载到内存中的 GUI 应用程序,其性能会随着大小的增加而明显下降。打开一个约 50 MB 的 XML 文件(代表 10 万多笔交易)需要 77 秒。切换到 SQLite 后端仅略微将其缩短至 约 55 秒

结论: Beancount 提供了可预测扩展的卓越性能,这是长期数据管理的关键特性。它避免了 Ledger 中出现的性能瓶颈和 GnuCash 的 UI 绑定延迟。


数据架构:纯文本与不透明数据库 📄

系统存储数据的方式决定了其透明度、可移植性和持久性。Beancount 使用简洁易懂的纯文本格式,这对技术用户来说更胜一筹。

  • 紧凑高效: 一个包含 10 万笔交易的 Beancount 文件只有 约 8.8 MB。这比同等的 Ledger 文件(约 10 MB)更紧凑,部分原因是 Beancount 的语法允许推断交易中的最终余额,从而减少冗余。
  • 结构强制执行: Beancount 要求使用显式的 YYYY-MM-DD open Account 指令。这种规范的方法可以防止账户名称拼写错误导致静默创建新的错误账户——这是 Ledger 和 hledger 等系统中常见的陷阱,这些系统会动态创建账户。这种结构使数据更可靠,便于程序化操作。
  • 版本控制就绪: 纯文本账本非常适合使用 Git 进行版本控制。你可以获得所做的每个财务更改的完整、可审计的历史记录。
  • 与 GnuCash 的对比: GnuCash 默认使用 gzip 压缩的 XML 文件,其中数据冗长,并且每个实体都用带有 GUID 的标签进行包装。虽然它提供 SQLite、MySQL 和 PostgreSQL 后端,但这将数据从简单的直接文本操作和版本控制中抽象出来。编辑原始 XML 是可行的,但比编辑 Beancount 文件要麻烦得多。

结论: Beancount 的数据格式不仅仅是文本;它是一种定义良好的语言,可最大限度地提高清晰度,强制执行正确性,并与 gitgrep 等开发者工具无缝集成。


杀手级特性:真正的 Python API 和插件架构 🐍

这是 Beancount 的决定性技术优势。它不是一个单一的应用程序,而是一个 具有稳定、一流 Python API 的库。这种设计决策释放了无限的自动化和集成可能性。

  • 直接程序化访问: 你可以直接在 Python 中读取、查询和操作账本数据。这就是开发者迁移的原因。正如一位用户指出的那样,Beancount 消除了尝试对 Ledger 记录不足的内部绑定进行脚本编写带来的挫败感。
  • 插件管道: Beancount 的加载器允许你将自定义 Python 函数直接插入处理管道。这使得在加载数据流时可以对其进行任意转换和验证——例如,编写一个插件来强制要求来自特定供应商的每笔支出都必须具有特定标签。
  • 强大的导入器框架: 超越笨拙的 CSV 导入向导。使用 Beancount,你可以编写 Python 脚本来从任何来源(OFX、QFX、CSV)解析财务报表。像 smart_importer 这样的社区工具甚至利用机器学习模型来自动预测和分配过账账户,将数小时的手动分类变成只需几秒钟、一个命令的过程。
  • 其他工具的比较:
    • Ledger/hledger: 可扩展性主要体现在外部。你可以将数据传入/传出可执行文件。虽然它们可以输出 JSON/CSV,但如果不修改 C++/Haskell 源代码,你就无法将逻辑注入其核心处理循环。
    • GnuCash: 可扩展性是通过 Guile (Scheme) 的陡峭学习曲线来处理自定义报告,或者通过与 GnuCash 引擎交互的 Python 绑定(使用 SWIG 和 PieCash 等库)来处理。它很强大,但不如 Beancount 的原生库方法直接和“Pythonic”。

结论: Beancount 是为程序员设计的。其库优先的设计和与 Python 的深度集成使其成为四个系统中最灵活、自动化程度最高的系统。


理念:财务的严格编译器 🤓

Beancount 的学习曲线是其核心理念的直接结果:你的财务数据是一种正式的语言,它必须是正确的。

Beancount 的解析器就像一个 严格的编译器。它执行强大的语法和逻辑验证。如果交易不平衡或账户尚未打开,它将拒绝处理文件,并返回带有行号的描述性错误。这是一个特性,而不是错误。它保证如果你的文件“编译”成功,则底层数据在结构上是合理的。

这种确定性方法确保了数据完整性,这对于在其之上构建可靠的自动化系统至关重要。你可以放心地编写使用 Beancount 输出的脚本,因为你知道数据已经过严格验证。

Beancount 适合谁?

根据此技术分析,Beancount 是以下用户的最佳选择:

  • 开发人员和工程师, 他们希望将财务视为版本控制的、可编程的数据集。
  • 数据爱好者, 他们希望编写自定义查询,使用 Fava 等工具构建独特的可视化效果,或将财务数据馈送到其他分析模型中。
  • 任何重视可证明的正确性和自动化胜过 GUI 的便利性或结构化程度较低的格式的宽松性的人。

如果你需要原始 C++ 性能来生成标准报告,Ledger 是一个竞争者。对于函数式编程范例中的出色可扩展性,hledger 令人印象深刻。对于设置最少的全功能 GUI,GnuCash 表现出色。

但是,如果你想构建一个真正健壮、自动化且高度定制的财务管理系统,Beancount 提供了卓越的技术基础。

为小型企业税务预留多少资金

· 阅读需 6 分钟
Mengjia Kong
Mengjia Kong
IRS Enrolled Agent

经营小型企业已经需要不断地处理现金流、供应商和客户——税务上的意外不应该成为另一个需要操心的问题。好消息是:通过一个简单的框架和一些 Beancount 技巧,你可以将“我希望税单不要太高”转化为可预测的每月转账。

1. 了解你的实际支出

2025-07-20-为小型企业税务预留多少资金

在你预留资金之前,你需要知道这些资金的用途。对于大多数美国小型企业(尤其是独资企业和合伙企业),总税务负担是几项不同义务的组合。

  • 联邦所得税: 这是一种累进税,这意味着税率随着你的收入增加而增加。 2025 年,单身收入超过 626,350 美元和已婚共同申报 (MFJ) 收入超过 751,600 美元的税率高达 37%。
  • 自雇 (SE) 税: 这是 W-2 雇员缴纳的 FICA 税(社会保障和医疗保险)的企业家版本。 净收入的第一部分的税率为 15.3%。 12.4% 的社会保障部分在你的利润达到年度工资基数后停止,预计 2025 年该基数为 176,100 美元。 剩余的 2.9% 的医疗保险部分将继续适用于所有利润。
  • 州和地方所得税: 这因地区而异,从怀俄明州和德克萨斯州等州的 0% 到加利福尼亚州最高等级的 13% 以上不等。
  • 季度少缴罚款: 美国国税局希望全年都能收到税款,而不是一次性收到。 为避免罚款,你通常必须预付至少当年税务负担的 90% 或前一年税单的 100%(如果你的调整后总收入 (AGI) 超过 150,000 美元,则此门槛将提高到 110%)。

快速启发式方法: 大多数居住在平均税率州的美国个体经营者,在缴纳联邦、自雇和州税后,最终需要缴纳 净利润的 25% - 30%

2. 每月可更新的三步估算

你不需要复杂的软件来处理这个问题。一个简单的、可重复的过程就足够了。

  1. 预测年度利润: 查看你的年初至今的业绩,并对全年做出合理的预测。 基本公式对你很有帮助:预计收入 - 预计可扣除费用 = 预计利润
  2. 应用有效税率: 从一个合理的百分比开始。 如果你有去年的纳税申报表,你可以从中计算出你的有效税率。 如果你是新手,30% 的启发式方法是一个安全的起点。
  3. 除以 12(或 52): 将你的年度预估总税额除以你想要使用的支付周期数。 我们建议按月支付。 每月将该金额转入专用的税务储备银行账户。 如果你的现金流波动较大,每周转账可能更容易管理。

3. 在 Beancount 中实施

纯文本会计使此过程透明且可审计。以下是如何在 Beancount 中管理你的税务储蓄的方法。

首先,创建一个例行交易,将你的每月储蓄从你的主要支票账户转移到一个单独的、专用的税务储蓄账户。

; 预留 7 月份的税款
2025-07-31 * "税务储备转账"
Assets:Bank:Checking -3000 USD
Assets:Bank:TaxReserve 3000 USD
Equity:Opening-Balances

当你向政府进行季度预估付款时,你需要记录实际的负债。 付款直接来自你的储备账户。

; 在你提交季度付款时记录负债
2025-09-15 * "第三季度预估税款支付"
Assets:Bank:TaxReserve -9000 USD
Liabilities:Taxes:Federal 6000 USD
Liabilities:Taxes:State 3000 USD

这个简单的系统为你带来了三个强大的优势:

  • 即时可见性: 你的 Assets:Bank:TaxReserve 余额始终显示已“预留”的金额。 你一眼就能看出这笔现金不能用于其他业务支出。
  • 准确的利润: 由于储备金被视为资产账户之间的转移,因此你的损益表不会失真。 你只需在实际申报和缴纳税款时记录税务 负债
  • 审计跟踪: 支付给美国国税局或你所在州财政部的每笔款项都与从你的储备账户中明确标记的资金流动相关联,从而创建了清晰的纸质跟踪记录。

4. 微调你的百分比

最初的 25% - 30% 的估算是一个很好的开始,但你应该根据你的具体业务模式进行调整。

  • 高利润率的顾问/代理机构: 如果你的收入远高于社会保障工资基数(176,100 美元),你的有效税率将会攀升。 30% - 35% 的税率可能更准确。
  • 具有大量扣除额的产品企业: 如果你有大量的销货成本 (COGS)、库存或其他扣除额,你的净利润率会较低。 20% - 25% 的税率可能就足够了。 使用 1040-ES 表格的季度工作表进行确认。
  • S-Corp 所有者: 你的情况有所不同。 你支付给自己的“合理工资”需要缴纳标准的工资预扣税(FICA 和所得税)。 你的分配(超出工资的利润支付)仍然需要季度预估付款,但通常边际税率较低,因为它们不需要缴纳自雇税。
  • 多州卖家: 如果你在多个州拥有“关联”(重要的业务存在),你可能需要在每个州缴纳所得税。 这可能会增加你的负债。 为了清晰起见,在 Beancount 中创建单独的负债账户,例如 Liabilities:Taxes:State:CALiabilities:Taxes:State:NY

5. 自动化、审查、重复

一个系统只有在你使用它时才有效。 让它变得毫不费力。

  • 自动化: 将你的主要运营账户链接到一个名为“TaxReserve”之类的高收益储蓄账户。 安排在你每月结账后立即自动转账。
  • 审查: 每季度重新预测你的年度利润。 如果第二季度的销售额超出预期,请立即增加你的每月储备金额。 不要等到一月份才发现你储蓄不足。
  • 重复: 将关键文件整理在你的 Beancount 目录中。 保存去年的最终纳税申报表 (document: "2024/Taxes/Form1040.pdf") 可让你在与你的注册会计师讨论数字或规划下一年时一键获取上下文信息。

结语

只有当预留流程随机进行时,税单才会让人感觉随机。 通过将基于百分比的储备金直接纳入你的复式记账流程,你就可以用代数代替焦虑——而 Beancount 使数学(和审计跟踪)变得微不足道。 每季度审查你的税率,保持 Assets:Bank:TaxReserve 的资金充足,4 月 15 日将恢复为正常的营业日。


免责声明:本文仅用于教育目的,不构成税务建议。 始终与你所在司法管辖区和实体类型的合格专业人士确认数字。

在缓慢增长的经济中蓬勃发展 — 使用 Beancount

· 阅读需 6 分钟
Mike Thrift
Mike Thrift
Marketing Manager

经济的预兆已经显现,但并不乐观。截至 2025 年 7 月,最新数据表明经济已明显降温。让我们看看数据。

宏观背景(2025 年 7 月)

2025-07-05-thriving-in-a-slow-growth-economy-with-beancount

  • 通货膨胀: 经过多年的波动,美国消费者价格已经稳定,但仍然是一个因素,截至 2025 年 6 月,同比增长 +2.7%(劳工统计局, Trading Economics)。虽然低于疫情后的高点,但这一比率仍然侵蚀了购买力,并给利润率带来了压力。
  • 增长: 长期扩张正式结束。2025 年第一季度,实际 GDP 折合成年率下降了 -0.3% 至 -0.5%,表明经济出现萎缩(经济分析局, Trading Economics)。

疲软的经济并非危机,而是一个警钟。它要求你更清晰地了解你的现金流,对成本采取严格控制,并对机会有清晰的认识。这就是纯文本会计,特别是使用 Beancount 的战略优势所在。它使你可以完全控制你的财务数据,而无需像商业软件那样受 SaaS 锁定或不断上涨的订阅费用。


五个高杠杆杠杆(以及 Beancount 如何使它们变得简单)

在经济缓慢增长的环境中,小的、明智的行动会产生巨大的影响。以下是你可以使用 Beancount 账本立即实施的五种策略。

| 策略 | 如何在 Beancount 中执行 | | :--------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------- | | 保持账簿最新 | 自动化录入。 每晚运行 bean-extract,或安排一个 GitHub Action 来获取银行流水并将新交易提交到你的账本。实时数据意味着不会出现意外。 | | 监控现金流 | 每周查询。 使用简单的查询跟踪你的每月净流量。将其保存为 Fava(Beancount 的 Web 界面)中的收藏,以便一键访问:SELECT year, month, SUM(convert(position, 'USD')) WHERE account ~ 'Income | Expenses' GROUP BY year, month | | 收入多元化 | 隔离实验。 通过创建一个专门的收入账户(例如 Income:Consulting:SideHustle)并使用 #pilot-project 标记所有相关交易来测试新产品或服务。这使得计算投资回报率变得轻而易举。 | | 快速削减开支 | 找出大额支出。 需要削减开支吗?此查询立即显示你的前 10 个支出类别,直接指出你可以节省最多的地方:bean-query main.bean "SELECT account, SUM(number) WHERE account =~ '^Expenses' GROUP BY account ORDER BY SUM DESC LIMIT 10" | | 明智地再投资 | 预留利润。 在每个月末,计算你的净利润,并以编程方式将一部分利润转移到专用账户。这不仅仅是储蓄;而是明确地将资金分配给未来的增长或机会。 |


自动化繁琐的工作,守护你的时间

你最有价值的资产是你的时间,应该花在分析上,而不是数据录入上。Beancount 的纯文本特性使自动化成为一等公民。

  • 辅助脚本: Beancount 生态系统拥有丰富的社区构建工具。价格抓取器可以提取你投资的每日市场价值。PayPal、Stripe 或 Splitwise 等服务的导入器可以在你睡觉时解析报表并将格式化的条目添加到你的账本中。
  • 预提交钩子: 如果你将账本存储在 Git 中(你应该这样做),你可以使用预提交钩子对每次更改运行 bean-check。这个简单的脚本会检查你的文件,在提交到 main 分支之前捕获拼写错误和平衡错误。
  • Git = 审计跟踪: 每次提交都是一个故事。git blame 会显示谁在何时更改了交易。git log 提供了你财务决策的完整、不可变的历史记录。这是最强大的审计跟踪。

建立财务弹性

缓慢的经济会奖励有准备的人。使用 Beancount 建立一个能够抵御不确定性的财务堡垒。

  • 应急缓冲: 将储蓄变成不可协商的。在计算出你的月利润后,创建一个常规交易,将固定比例(例如 10%)的资金转移到专用的应急基金中。

    ; 假设 7 月份的利润为 4,500 美元。10% = 450 美元。
    2025-07-31 * "Monthly Profit Sweep" "将 10% 的利润转移到应急基金"
    Expenses:ProfitSweep 450.00 USD
    Assets:Savings:Emergency

    这不是传统意义上的支出,但以这种方式记账可以将现金“隐藏”在你的运营账户中,从而降低你随意支出的诱惑。

  • 情景建模: 如果收入下降 15% 会发生什么?或者如果你的成本增加 5% 呢?使用纯文本账本,你不需要复杂的软件就能找到答案。只需将你的整个账本文件复制到 scenarios/ 目录,调整数字,然后运行报告即可。

    # 在几秒钟内查看对你盈亏的影响
    bean-report scenarios/pessimistic_q3.bean income_statement

深入了解利基数据

Beancount 的灵活性允许你跟踪任何内容。使用元数据丰富你的交易的业务上下文。

2025-07-15 * "The Meow-Box" "每月猫咪玩具订阅"
Income:Subscriptions -19.99 USD
Assets:Bank:Checking
; market: "Pet-DTC"
; customer-id: "CUST-86753"

将这些数据直接嵌入到你的账本中,你可以提出复杂的问题。一个简单的 bean-query 现在可以显示你的“Pet-DTC”细分市场的总收入、客户流失率或终身价值:

bean-query my-ledger.beancount "SELECT SUM(convert(position, 'USD')) WHERE meta('market') = 'Pet-DTC'"

你的下一步

阅读是一回事;实践是另一回事。以下是本周如何开始:

  1. 导入你的 2024 年积压数据: 将你 2024 年的历史数据导入 Beancount。这将使你的 2025 年报告和同比比较真正具有可比性。
  2. 安排两个常规查询: 保存现金流和前 10 个支出查询。设置日历提醒,以便每个星期五运行和查看它们。使其成为一种习惯。
  3. 分配 10% 的利润: 实施利润转移。从 10% 开始,并承诺每个月将这部分资金转移到单独的再投资或应急账户。每季度重新审视一次该比例。

缓慢的增长会奖励那些清楚地看到自己的数字、果断采取行动并建立稳健系统的人。使用文本账本、一些脚本和上面的策略,你将不仅仅是在经济低迷时期生存下来,你还将利用它作为增强财务实力的机会。

簿记与会计:有何区别,Beancount 如何融入其中?

· 阅读需 4 分钟
Mike Thrift
Mike Thrift
Marketing Manager

无论你是经营企业还是管理个人财务,簿记会计这两个术语常常混淆不清。但了解它们之间的区别——尤其是在使用 Beancount 这样的纯文本工具时——可以帮助你建立更好的系统并做出更明智的财务决策。

在本指南中,我们将探讨簿记和会计各自的角色,以及 Beancount 如何同时支持这两种功能(是的,确实如此)。

2025-06-27-accounting-vs-bookkeeping

📘 簿记:日常记录的艺术

簿记是财务管理的基础层。它关乎记录实际发生的事情——没有假设,没有预测。

簿记包括:

  • 记录收入和支出
  • 跟踪资产和负债
  • 为交易添加标签以便后续使用
  • 维护总账

在 Beancount 中,它看起来像:

2025-06-27 * "Stripe Payout"
Assets:Bank:Checking 1,200.00 USD
Income:Sales

每笔交易都是一个构建块。你尚未进行分析——你只是逐行记录事实。

如果你刚开始使用,Beancount 通过其明确的结构和可读的语法鼓励良好的簿记习惯。你将被(以一种好的方式!)强制跟踪每一分钱并解释每一笔交易。

📊 会计:将数据转化为洞察

会计在你的簿记记录基础上,回答更深层次的问题:

  • 我们盈利吗?
  • 我们还有多少现金储备?
  • 我们应该预付该软件费用还是按月摊销?
  • 我们如何最大限度地减少税收?

在会计中,你:

  • 核对账户并调整分录
  • 生成利润/亏损表等报告
  • 折旧资产
  • 规划税收和未来支出

借助 Beancount,你可以使用 beancount.io 等工具分析你的记录:

  • 浏览资产负债表、损益表和现金流量图
  • 按类别可视化收入
  • 使用元数据(例如,tag:business-trip)注释决策

想跟踪年度 Zoom 订阅吗?

2025-01-15 * "Zoom Annual Plan"
Expenses:Software 149.90 USD
Assets:Bank:Checking
tag:business-tools

你以后可以按月摊销或在预算会议期间进行分析。

👩‍💼 簿记员与会计师:各司其职?

  • 簿记员:注重精确。记录、分类和整理。
  • 会计师:增加解读。提供建议、规划和模拟结果。

Beancount 使你能够身兼二职,或者将其中一层清晰地移交给专业人士。

例如:

  • 作为创始人,你可以使用 Beancount 自己进行簿记。
  • 在报税季,你可以导出报告或原始数据,供你的会计师最终处理。

🛠️ 簿记和会计软件:Beancount 归属何处?

大多数主流工具(例如 QuickBooks、Xero)模糊了簿记和会计之间的界限。Beancount 采取了不同的方法:

  • 你通过纯文本管理一切,如果愿意,可以存储在版本控制中。
  • 没有隐藏交易或幕后操作。
  • 鼓励你理解自己的账目。

Beancount 非常适合那些重视透明度数据完整性以及通过开源工具实现自动化的人。

🧠 为什么这种区别很重要

了解簿记和会计之间的区别有助于你:

  • 保持合规并随时准备审计
  • 了解时间投入的方向(日常跟踪与每月洞察)
  • 与财务专业人士清晰沟通
  • 在不陷入复杂性的情况下扩展你的财务系统

🪄 最终思考:你的账本,你的规则

无论你是独立创作者还是小型企业主,Beancount 都能让你精确管理账目——并最终像首席财务官一样做出战略决策。

请记住:

  • 簿记 = 发生了什么
  • 会计 = 它意味着什么

借助 Beancount,你正在清晰而自信地构建这两个层面。

如果你需要可打印版本或后续教程,请告诉我。

Beancount 会计分录:操作指南、定义与示例

· 阅读需 5 分钟
Mike Thrift
Mike Thrift
Marketing Manager

你的企业进行的每一笔财务交易都需要被记录——在纯文本记账的世界里,这始于会计分录。如果你正在使用 Beancount,理解会计分录是建立准确、可审计和清晰的财务记录的关键。

本指南将带你了解:

2025-06-27-journal-entries

  • 什么是会计分录
  • 为什么会计分录很重要
  • 如何使用 Beancount 语法编写它们
  • 如何有效使用它们
  • 真实世界交易的示例(客户付款、采购、贷款等)

🧾 Beancount 中的会计分录是什么?

在 Beancount 中,会计分录是以人类可读的纯文本格式编写的带日期交易。每个分录都遵循复式记账原则——你记录资金的来源(贷方)和去向(借方),确保你的账簿始终保持平衡。

示例:

2024-06-01 * "Client payment for invoice #123"
Assets:Bank:Checking 600.00 USD
Income:Sales
  • * 表示已清算交易。
  • 描述显示了分录的上下文。
  • Assets:Bank:Checking 被借记。
  • Income:Sales 被贷记(金额隐含)。

每个分录都存在于 .beancount 文件中——这只是一个你可以进行版本控制、备份,甚至在 Vim 或 VSCode 中编辑的文本文件。

📒 为什么会计分录很重要

会计分录是你账本的原子单位。

它们:

  • 录入到你的总账账户余额
  • 驱动所有报告:利润表、资产负债表、现金流量表
  • 让你逐行追溯每一笔资金的来源

使用正确的工具,你将看到这些交易在用户界面中呈现——分类、可搜索和可筛选。但这一切都始于简单的纯文本分录。

📚 复式记账在 Beancount 中如何运作

Beancount 强制执行复式记账。每笔交易都必须平衡:借方总额 = 贷方总额。

快速规则:

  • 借记资产和费用(你获得现金或产生费用)
  • 贷记收入和负债(你赚取资金或承担债务)

示例 – 办公用品采购:

2024-06-02 * "Bought printer ink"
Expenses:OfficeSupplies 100.00 USD
Assets:Bank:Checking

🧠 可视化分录

保存后,在 https://beancount.io/ledger/0/income_statement/ 的左侧导航栏中,你将看到...

  • 日记账视图:查看带有搜索、标签和筛选功能的交易
  • 账户筛选下拉菜单:查看运行余额和每个账户的分录
  • 利润表:你的 Income:*Expenses:* 账户的总和
  • 资产负债表:你的资产减去负债

Fava 帮助将你的原始 Beancount 分录转化为可操作的报告——无需任何数据库设置。

💡 常见会计分录示例

✅ 你收到客户付款

2024-06-05 * "Payment for invoice #456"
Assets:Bank:Checking 1,200.00 USD
Income:Consulting

可选:如果你使用应收账款:

2024-05-20 * "Invoice #456 sent"
Assets:AccountsReceivable 1,200.00 USD
Income:Consulting

2024-06-05 * "Payment for invoice #456"
Assets:Bank:Checking 1,200.00 USD
Assets:AccountsReceivable -1,200.00 USD

🖨️ 你购买办公用品

2024-06-07 * "Staples run"
Expenses:OfficeSupplies 85.00 USD
Assets:Bank:Checking

🏦 你支付贷款

假设你支付了 1,000 美元,其中 200 美元是利息,800 美元是本金:

2024-06-10 * "Loan repayment"
Liabilities:Loan -800.00 USD
Expenses:LoanInterest 200.00 USD
Assets:Bank:Checking -1,000.00 USD

🔒 年末结账分录

为了“结账”,你通常会将所有 Income(收入)和 Expenses(费用)账户转入 Equity(所有者权益)。

2024-12-31 close Income:*
2024-12-31 close Expenses:*

或者,手动操作:

2024-12-31 * "Close books"
Equity:RetainedEarnings 45,000.00 USD
Income:Consulting -45,000.00 USD

🛠️ 调整分录

如果你正在进行权责发生制会计,你会希望添加调整分录——用于预付费用、应计收入等。

示例:每月 100 美元的软件订阅费,按年支付

2024-01-01 * "Annual software payment"
Assets:Prepaid 1,200.00 USD
Assets:Bank:Checking -1,200.00 USD

2024-01-31 * "Monthly amortization"
Expenses:Software 100.00 USD
Assets:Prepaid -100.00 USD

使用脚本或现有的 Beancount 工具进行自动化。

🧰 Beancount:轻量、可审计、强大

Beancount 不仅仅是一个会计工具——它是一种理念:透明、纯文本的财务真相。 它是一个现代化的账本系统,具有以下特点:

  • 易于版本控制(Git!)
  • 完全可移植(无专有数据库)
  • 非常适合开发者、自由职业者和小型企业

准备好开始了吗?

使用以下内容开始你的 Beancount 文件:

option "title" "My Business Ledger"
option "operating_currency" "USD"

2024-01-01 open Assets:Bank:Checking USD
2024-01-01 open Income:Sales USD
2024-01-01 open Expenses:OfficeSupplies USD
2024-01-01 open Equity:OpeningBalances USD

2024-01-01 * "Initial balance"
Assets:Bank:Checking 10,000.00 USD
Equity:OpeningBalances

然后使用你偏好的可视化工具加载文件,见证奇迹。

想要更轻松地开始?尝试模板、导入器或像 bean-extract 这样的社区工具。

有了 Beancount,你的账本最终将属于你自己——简单、可脚本化、且经得起审计。

如果你需要可下载的 PDF 版本或针对小型企业的示例变体,请告诉我。

Beancount 助力小型企业主

· 阅读需 5 分钟
Mike Thrift
Mike Thrift
Marketing Manager

你真正能理解并掌握的记账基础知识

管理自己的账目不一定意味着电子表格、压力或昂贵的软件。Beancount 为你提供了一种极简、可审计且强大的记账方式,只需使用纯文本和复式记账系统即可。

2025-06-25-beancount-for-small-businesses

本指南是你使用 Beancount 整理小型企业账目的完整入门,其中包含真实示例和分步指导。

🧾 什么是 Beancount?

Beancount 是一个开源的纯文本会计系统,围绕着复式记账构建。你将交易写入 .beancount 文件,并使用 bean-doctorbean-reportFava 等工具来分析和可视化你的账目。

这是一个基本交易示例:

2025-06-01 * "Client Payment: Invoice #123"
Assets:Bank:Business:Checking 1,200.00 USD
Income:Consulting -1,200.00 USD

它可读、可脚本化、可版本控制——非常适合追求透明度和控制权的业务所有者。

📌 为什么记账很重要(以及为什么选择 Beancount)

  • 你报税需要它
  • 你需要它来获得清晰度
  • 你需要它来获得资金
  • 你需要它来及早发现错误

而使用 Beancount,你只需一个文本编辑器和一些工具即可完成所有这些工作

🪜 使用 Beancount 开始自己记账的 8 个步骤

1. 分离企业与个人财务

开设一个单独的企业支票账户和信用卡。在 Beancount 中反映出来:

2025-06-01 open Assets:Bank:Business:Checking USD
2025-06-01 open Liabilities:CreditCard:Business USD

这能让你的账目保持清晰,并在法律上保护你(特别是如果你是有限责任公司或公司)。

2. 使用复式记账

每个财务事件都会影响两个账户。Beancount 通过设计强制实现这种平衡:

2025-06-05 * "Web hosting payment"
Expenses:Hosting 15.00 USD
Assets:Bank:Business:Checking -15.00 USD

这保证了你账本的数学完整性。

3. 选择现金制或权责发生制

  • 现金制: 仅在收到/支付现金时记录收入/支出。
  • 权责发生制: 跟踪应付/应收账款等义务。

现金制示例:

2025-06-10 * "Client payment received"
Assets:Bank:Business:Checking 800.00 USD
Income:Sales -800.00 USD

权责发生制示例(发票已开,然后收到付款):

2025-06-01 * "Invoice #2001 issued"
Assets:AccountsReceivable 800.00 USD
Income:Sales -800.00 USD

2025-06-15 * "Payment received for Invoice #2001"
Assets:Bank:Business:Checking 800.00 USD
Assets:AccountsReceivable -800.00 USD

4. 设置你的会计科目表

清晰定义你的类别。一个极简示例:

2025-01-01 open Income:Sales USD
2025-01-01 open Expenses:Software USD
2025-01-01 open Expenses:Meals USD
2025-01-01 open Equity:Owner USD

根据你的业务定制这些科目。保持一致性和描述性。

5. 分类交易(带元数据)

使用元数据来跟踪上下文。这有助于抵扣、审计和清晰度。

2025-06-18 * "Team lunch after Q2 milestone"
Expenses:Meals 90.00 USD
Assets:Bank:Business:Checking -90.00 USD
; business_purpose: Q2 celebration
; attendees: Alice, Bob, Tian

添加标签或收据链接:

  ; receipt: ./receipts/2025-06-18-lunch.jpg

6. 存储支持文件

使用 Dropbox、Google Drive 或 receipts/ 文件夹。然后像这样在 Beancount 中链接它们:

2025-06-02 * "Domain Renewal - GoDaddy"
Expenses:Hosting 20.00 USD
Assets:Bank:Business:Checking -20.00 USD
; receipt: ./receipts/domain-godaddy.pdf

审计师和税务专业人士会喜欢你这样做。

7. 为抵扣做准备

清晰标记可抵扣费用:

2025-06-03 * "Adobe Creative Cloud Subscription"
Expenses:Software 60.00 USD
Assets:Bank:Business:Checking -60.00 USD
; deductible: true
; usage: 100% business

使用自定义元数据或标签(如 #deductible)来跟踪潜在的冲销。

8. 养成习惯

创建工作流程。例如:

# Weekly bookkeeping routine
git pull origin main
bean-extract transactions.csv >> ledger.beancount
bean-doctor ledger.beancount
bean-check ledger.beancount
fava ledger.beancount

或者只需承诺一个“Beancount 星期五”,每周对账所有内容。

💼 自己动手还是寻求帮助?

你可以使用 Beancount 自己完成所有工作。但即使是高级用户也应该:

  • 在设置期间咨询注册会计师 (CPA)
  • 如果需要,在报税时聘请会计师
  • 使用 Fava 生成月度报告

你将获得会计系统的所有强大功能,而无需供应商锁定或订阅费用

🛠️ Beancount 用户推荐工具

  • Fava – Beancount 文件的精美网页仪表板
  • bean-doctor – 对你的账本进行健康检查
  • bean-query – 运行类似 SQL 的报告
  • beancount-import / beanie – 自动银行导入
  • 版本控制 – 使用 Git 跟踪账本更改

✅ 最终示例:完整交易流程

2025-06-20 * "Consulting payment from Acme Inc."
Assets:Bank:Business:Checking 3,000.00 USD
Income:Consulting -3,000.00 USD
; invoice: 2025-06-acme
; project: "Backend API redesign"

2025-06-21 * "Notion Pro Plan"
Expenses:Software 10.00 USD
Assets:Bank:Business:Checking -10.00 USD
; purpose: project documentation
; receipt: ./receipts/notion-june.pdf

🎯 总结

Beancount 非常适合希望以下的小型企业主:

  • 保持低成本
  • 完全掌控自己的财务
  • 避免传统软件的臃肿
  • 拥抱透明度和纯文本的简洁性

你想要一个可下载的 .bean 业务入门模板吗?请告诉我你的业务类型,我将为你量身定制一个。

绿色账本:使用 Beancount 追踪 ESG

· 阅读需 7 分钟
Mike Thrift
Mike Thrift
Marketing Manager

在当今世界,环境、社会和公司治理 (ESG) 指标不再仅仅是流行语;它们是衡量公司健康状况和未来生存能力的重要指标。但如何将这些关键的可持续发展洞察与传统的财务会计整合起来呢?答案是 Beancount,一个开源的、纯文本复式记账系统,它提供了一个出人意料的强大且灵活的解决方案来弥合这一差距。

想象一下,将你零散的可持续发展报告转化为一个流线型、自动化的系统,该系统可以追踪从碳排放到供应商多样性的一切,所有这些都在你现有的财务工作流程中进行。Beancount 通过将 ESG 数据视为与财务交易“一等公民”来使这成为可能。

2025-06-22-esg-tracking

建模ESG数据:Beancount之道

Beancount固有的灵活性是其在ESG方面的强大优势。你无需使用孤立的电子表格,而是可以通过以下几种关键技术,将可持续发展指标直接嵌入到你的财务结构中:

  • 专用账户和商品: 将你的环境足迹视为另一种货币。你可以创建诸如 Metrics:Emissions:CO2e 的账户来追踪碳排放。这些排放甚至可以被视为一种商品(例如,二氧化碳当量单位,tCO2e),允许你在交易中记录具体数量。例如,一次航班购买除了记录货币成本外,还可以贷记 Emissions:CO2e 账户 +0.3 tCO2e
  • 自定义元数据标签: Beancount的键值元数据非常适合添加上下文信息。你可以使用 CO2e: 0.3 tScope: 3 等标签标记交易,以表示其碳影响或温室气体议定书(GHG Protocol)范围。这将财务支出与其环境后果直接关联起来,提供更丰富、更全面的图景。
  • 结构化分类标签: 遵循**温室气体议定书(GHGP)**等标准至关重要。你可以使用一致的标签或账户命名约定,例如 Metrics:Emissions:Scope1Metrics:Emissions:Scope2Metrics:Emissions:Scope3,以便轻松分类和报告直接排放、能源相关排放和价值链排放。

这种适应性强的方法意味着,随着ESG标准的演变,你可以调整你的账本结构,而无需进行彻底的改造。


Beancount 与专业 ESG 工具:战略选择

尽管 Persefoni 或 SAP Green Ledger 等专用 ESG 平台提供高度自动化、量身定制的解决方案,但 Beancount 仍是一个引人注目的替代方案,尤其适合那些追求透明度和控制权的用户。

特性Beancount(纯文本)专业 SaaS(例如:Persefoni, Plan A)企业 ERP 集成(例如:SAP Green Ledger)
数据建模用户自定义账户和元数据;灵活但需要手动构建。预定义模式;活动输入引导和自动排放转换。排放量直接映射到 ERP 交易和主数据。
排放因子用户提供或通过自定义脚本集成;需要手动更新。内置、定期更新的排放因子库;自动计算。与企业数据和标准因子集成,确保审计级别的准确性。
数据集成通过自定义 Python 脚本/API 实现开放架构;需要开发以实现自动化导入。许多预构建连接器可连接外部数据源(公用事业、ERP、差旅系统)。与 ERP 内部的核心业务流程和数据流进行原生集成。
报告与审计自定义查询和 Fava 报告;高度可定制但需要用户设计。版本控制(Git)提供透明的审计追踪。丰富的仪表板,符合标准(GHG、TCFD、CDP)的预构建报告。平台内审计日志和期间锁定。ERP 内部集成报告;专为“合理保证”可审计数据而设计。
成本与可访问性免费开源;需要 Beancount/脚本知识。商业 SaaS,有订阅费用;技术开销较少。企业级软件,可能涉及高昂的许可和实施成本;需要特定的 ERP 专业知识。

Beancount 是一个 DIY 强手: 它为你提供无与伦比的灵活性和透明度,非常适合个人或技术娴熟的小型组织。你完全拥有自己的数据,避免供应商锁定。

专业工具提供一站式解决方案: 它们擅长自动化数据收集、内置排放因子数据库和现成的合规报告,通常成本更高且灵活性较低。

混合方法也同样可行:使用 Beancount 进行详细的内部追踪和核对,然后将汇总数据导出到外部平台,用于高层利益相关者报告。


实际应用:Beancount 在 ESG 实践中的作用

Beancount 的多功能性使其适用于以下几个关键的 ESG 用例:

  • 追踪范围 3 排放: 范围 3 排放(来自你的价值链)是最具挑战性的追踪对象,但可以通过将供应商排放数据与采购交易关联起来进行整合。Beancount 为这些复杂数据提供清晰的审计追踪,从而实现更好的分析并精确定位数据源。
  • 可持续性审计与鉴证: 像财务数据一样,ESG 数据需要可验证。Beancount 允许你将每条 ESG 条目关联到原始凭证(例如,水电费账单、第三方验证声明),从而提供细致的审计追踪,以实现透明度和鉴证。
  • 欧盟 CSRD/ESRS 合规报告: 对于面临 CSRD 等严格监管的公司,Beancount 可以作为量化披露的中央存储库。虽然它不会自动将报告格式化为 XBRL,但它提供了生成符合合规要求数据所需的粒度化、可审计数据。
  • 碳足迹分析与管理会计: 将碳视为管理会计的另一个维度。通过将排放量分配到利润中心或产品代码,你可以计算诸如“每美元收入的排放量”等指标,并识别碳热点,从而推动更明智的可持续发展决策。

你的 Beancount ESG 账本最佳实践

为了最大限度地发挥 Beancount 在 ESG 方面的作用,请考虑以下最佳实践:

  1. 为 ESG 设计清晰的会计科目表: 像管理你的财务账户一样,深思熟虑地构建你的 ESG 账户(例如,Metrics:Emissions:Scope1:Fuel)。
  2. 一致地使用元数据: 利用标签(例如,Scope: 3FactorSource: EPA2024)以确保上下文的一致性并便于查询。
  3. 平衡粒度与可管理性: 关注重要指标,避免账本被不必要的细节淹没。
  4. 谨慎自动化: 使用 Python 脚本进行数据导入和验证,但要确保强大的错误检查和清晰的自动化流程文档。
  5. 利用版本控制: 使用 Git 跟踪账本的每一次更改,提供 ESG 数据的透明且可审计的历史记录。
  6. 连接文档和证据: 将源文件(例如,水电费账单的 PDF 文件)链接到账本条目,以便在审计期间轻松验证。
  7. 利用 Fava 获取洞察: 配置 Fava 以显示自定义的 ESG 图表和报告,使你的可持续发展数据具有可操作性,并对非技术利益相关者可访问。
  8. 及时了解标准: ESG 报告是动态的;随着新法规和框架的出现,请准备好调整你的 Beancount 结构。

绿色未来,纯文本

尽管 Beancount 目前缺乏原生的 ESG 智能或即插即用报告功能,但其开源特性为增强功能提供了巨大的机会。社区驱动的碳核算插件、标准化的 ESG 账本模板以及与排放因子 API 的更好集成,都将显著提升其能力。

随着企业界越来越接受“绿色账本”,Beancount 已准备就绪,成为一个灵活、透明且可审计的解决方案。通过以与财务数据相同的严谨性整合 ESG 数据,Beancount 赋能组织不仅满足合规要求,而且推动有意义的可持续发展举措。

你准备好将你的 ESG 数据带入纯文本革命了吗?

Beancount v3:有哪些新变化?

· 阅读需 4 分钟
Mike Thrift
Mike Thrift
Marketing Manager

Beancount 版本 3 于 2024 年年中发布,标志着这款流行的纯文本会计工具在架构上的重大演进。尽管它保持了用户账本文件的向后兼容性,但其底层结构和配套工具都经历了实质性变化。以下是 Beancount v3 的新特性一览。

更模块化、更精简的架构

Beancount v3:有哪些新变化?

Beancount v3 最显著的变化是转向了更模块化的生态系统。以前与核心捆绑在一起的几个关键功能已被拆分到独立的、独立的项目中。这使得 Beancount 的核心更加精简,并允许对各个组件进行更集中的开发。

现在作为独立包的关键组件包括:

  • beanquery:用于账本文件的强大类 SQL 查询工具现在已成为一个独立的包。
  • beangulp:这是数据导入框架的新家,取代了之前的 beancount.ingest 模块。
  • beanprice:一个专门用于获取商品和股票价格的工具。

这种分离意味着用户除了安装 beancount 本身之外,还需要安装这些独立的包,以保留他们在版本 2 中习惯的全部功能。

命令行工具和工作流程的变化

为了反映新的模块化架构,命令行工具发生了一些显著变化:

  • bean-report 已移除:此工具已被移除。现在鼓励用户使用 bean-query(来自 beanquery 包)来满足其报告需求。
  • 新的导入器工作流程bean-extractbean-identify 命令已从核心中移除。beangulp 的新方法是基于脚本的。用户现在将创建自己的 Python 脚本来处理从银行对账单等外部来源导入数据。

语法和功能增强

虽然核心会计原则保持不变,但 Beancount v3 在其语法中引入了一些受欢迎的灵活性:

  • 更灵活的货币代码:以前对货币名称长度和字符的限制已放宽。现在支持单字符货币符号。
  • 扩展的交易标志:用户现在可以使用 A 到 Z 的任何大写字母作为交易的标志,从而实现更精细的分类。

重要的是,这些更改是向后兼容的,因此你现有的 Beancount v2 账本文件无需任何修改即可使用。

C++ 重写与性能

Beancount 的长期目标之一是使用 C++ 重写其性能关键组件。虽然这项工作仍在进行中,但 Beancount v3 的初始版本包含基于 C++ 的核心。这意味着目前 v3 的性能与 v2 相当。C++ 代码仍保留在单独的开发分支中,以供将来集成。

从 v2 迁移到 v3

对于大多数用户而言,从 Beancount v2 迁移到 v3 相对简单:

  1. 账本文件:你的 .beancount 文件无需任何更改。
  2. 安装:你需要使用 pip 安装新的独立包,例如 beanquerybeangulp
  3. 导入器脚本:如果你有自定义导入器,则需要更新它们以使用新的 beangulp API。这主要涉及更改导入器继承的基类并调整一些方法签名。
  4. Fava:Beancount 流行的网页界面 Fava 已更新以兼容 v3。请确保你拥有最新版本的 Fava 以获得无缝体验。

本质上,Beancount v3 是一个基础版本,它简化了项目的架构,使其在长期内更具模块化,更易于维护和扩展。虽然它需要对用户工作流程进行一些调整,尤其是在数据导入方面,但它为这款强大的会计工具的未来发展奠定了基础。