跳到主要内容

59 篇博文 含有标签「Beancount」

查看所有标签

理解 Beancount 中的摊销

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

摊销是将支付款项分摊到多个时间段的会计处理方式。在 Beancount.io 中,你可以使用 fava.plugins.amortize_over 插件来实现这一点。

2021-01-09-amortize

如果没有摊销,如果你想为你的汽车投保 6 个月,费用为 600 美元。你必须将其记录为特定日期的一次性费用。

2017-06-01 open Assets:Bank:Checking
2017-06-01 open Assets:Prepaid-Expenses
2017-06-01 open Expenses:Insurance:Auto


2017-06-01 * "Pay car insurance"
Assets:Bank:Checking -600.00 USD
Assets:Prepaid-Expenses

然而,通过摊销,你可以将费用分摊到六个月,只需在文件顶部添加 plugin "fava.plugins.amortize_over",并在交易中使用 amortize_months: 6

plugin "fava.plugins.amortize_over"

2020-06-01 open Assets:Bank:Checking
2020-06-01 open Assets:Prepaid-Expenses
2020-06-01 open Expenses:Insurance:Auto

2020-06-01 * "Amortize car insurance over six months"
amortize_months: 6
Assets:Prepaid-Expenses -600.00 USD
Expenses:Insurance:Auto

然后,在日记账中,你将看到该交易被拆分为 6 笔分录。

2020-11-01 * Amortize car insurance over six months (6/6) am
2020-10-01 * Amortize car insurance over six months (5/6) am
2020-09-01 * Amortize car insurance over six months (4/6) am
2020-08-01 * Amortize car insurance over six months (3/6) am
2020-07-01 * Amortize car insurance over six months (2/6) am
2020-06-01 * Amortize car insurance over six months (1/6) am

摊销交易截图

Beancount.io 增强功能:性能与安全升级

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

维护一个安全且高性能的在线服务绝非一劳永逸。它不仅需要投入精力开发新功能,还需要不断更新现有功能。

过时的软件会使我们的客户面临安全漏洞的风险。我们如何降低这种风险?一方面,我们积极与安全研究人员合作,发现并解决意外问题。另一方面,我们会定期合并上游软件的最新版本。

今天,我们很高兴分享我们为改进 Beancount.io 所做的一些增强。

2021-01-07-Fava升级至1.17

  1. 我们升级了服务器,将服务速度提升了高达 30%。服务可用性也得到了显著改善。
  2. 我们将 MIT 许可的开源软件 Fava 升级到 1.17 版本。它修复了各种错误并增加了许多新功能。

感到兴奋吗?立即访问 https://beancount.io/ledger/ 体验吧!

有疑问?我们会在 https://t.me/beancount 为你提供帮助 :)

Beancount 开发者奖励计划介绍

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

Beancount.io 很高兴地宣布,我们社区的开发者奖励计划全新上线!安全漏洞赏金计划是一项向外部个人发出的公开提议,旨在奖励那些报告beancount.io开源 Beancount 移动应用 核心功能安全相关的漏洞的人员。

没有任何技术是完美的,我们相信与全球开发者、工程师和技术人员合作,对于在项目构建过程中识别其弱点至关重要。如果你认为在我们的产品或服务中发现了安全问题,我们鼓励你通知我们。我们欢迎与你合作,迅速解决问题。

活动期间

2020-10-13-security-bug-bounty

太平洋标准时间 2020 年 10 月 15 日 17:00 至 2020 年 11 月 30 日 17:00

范围

以下 Beancount 组件包含在漏洞赏金活动的第一阶段:

  1. beancount.io/ledger:你的个人财务管理器。
  2. 开源 Beancount 移动应用

参与和报告漏洞的步骤

  • 如果涉及个人身份信息 (PII) 和精确的账本数据,请通过 https://github.com/puncsky/beancount-mobile/issues/ 中的 GitHub ISSUE 请求提供漏洞信息:
    • 资产。选择与漏洞相关的仓库,并在其中创建“新问题”(New Issue)。
    • 严重性。根据“符合条件的漏洞”选择漏洞级别。
    • 摘要 — 添加漏洞摘要
    • 描述 — 关于此漏洞的任何额外详细信息
    • 步骤 — 复现步骤
    • 支持材料/参考 — 用于复现的源代码,列出任何额外材料(例如,截图、日志等)
    • 影响 — 发现的漏洞有何影响,攻击者可能实现什么?
    • 你的姓名、国家和 Telegram ID 以便联系。
  • 如果涉及 PII 和精确的账本数据,请联系 Telegram 上的 puncsky 并发送上述信息。
  • Beancount.io 团队将审查所有漏洞,并通过特定漏洞页面上的评论或通过 Telegram 私人消息(如果涉及 PII 和精确的账本数据)尽快向你提供反馈。
  • 奖励将在活动于太平洋标准时间 2020 年 12 月 1 日左右结束后,以实物礼品、礼品卡或等值 USDT 的形式发放。

符合条件的漏洞

要获得赏金,安全漏洞必须是独创且此前未报告的。

只有以下对 Beancount.io 的稳定性或安全性产生重大影响的设计或实现问题才符合奖励条件。常见示例包括

  • 主机未受损情况下的 PII 和账本数据泄露
  • 导致整个网站或移动应用暂停或崩溃的特殊操作
  • 用户在未获得事先授权的情况下影响其他用户

对于不属于上述任何类别的场景,我们仍然感谢那些帮助我们保护基础设施和用户安全的报告,并将逐案奖励这些报告。

超出范围的漏洞

报告漏洞时,请考虑漏洞的攻击场景、可利用性和安全影响。以下问题被视为超出范围,我们不接受任何以下类型的攻击:

  • 拒绝服务攻击
  • 网络钓鱼攻击
  • 社会工程学攻击
  • 反射文件下载
  • 软件版本泄露
  • 需要直接物理访问的问题
  • 需要极不可能的用户交互的问题
  • 影响过时浏览器和插件的缺陷
  • 公开可访问的登录面板
  • CSV 注入
  • 电子邮件枚举 / 账户预言机
  • CSP 弱点
  • 电子邮件欺骗
  • 允许查看用户个人资料照片的技术(这些被视为公开信息)

奖励

暴露 PII 和账本数据的最严重漏洞的奖品是 AirPods Pro(在美国)或等值 USDT。

安全漏洞的奖品是 20 美元亚马逊礼品卡或等值 USDT。

我们是一个预算有限的小团队,只能发放

  • 1 个 AirPods Pro(总共)。
  • 每月 10 份 20 美元奖励,最多 3 个月。如果当月实际案例超出此数量,我们将在下个月发送剩余奖励。(本次活动总计 600 美元)

有疑问?

请在 https://t.me/beancount 提问

Beancount 移动版:我们对开源和隐私的承诺

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

隐私是我们的基因、文化和价值观的核心。我们致力于在所有系统中保护你的数据。

今天,我们很高兴地宣布 Beancount 移动版开源。这意味着代码是公开可用的,可供公众审查。这种透明度不仅确保了应用程序的安全性,也让你对我们如何处理你的数据感到安心。

开源在许多方面为我们的客户提供了更多市场选择和更优解决方案。Beancount.io 是基于优秀的开源项目构建的,我们希望未来能尽可能多地开源我们系统的模块。Beancount 移动版只是这个旅程的开始 :)

2020-10-08-open-sourcing-beancount-mobile

Beancount.io 热爱开源

Beancount 应用更新:提升用户体验

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

我们很高兴地宣布 Beancount 应用 0.4.0 版本发布,带来了新功能和改进,以提升你的财务管理体验。

新功能

📧 邮件报告订阅

通过可定制的邮件报告,随时掌握你的财务状况。选择你希望接收的财务信息以及接收频率。非常适合:

  • 月度预算回顾
  • 每周支出汇总
  • 账户余额更新

📢 公告部分

不错过任何重要更新!我们新的公告部分将向你提供以下信息:

  • 最新功能和改进
  • 提升财务追踪的技巧
  • 社区新闻和活动

Beancount 应用 0.4.0 版本公告

Beancount 0.4.0 版本截图

性能改进

一如既往,我们使应用运行更快、更可靠,确保你在管理财务时获得流畅的体验。

分享你的想法

你的反馈是我们开发的动力。喜欢新功能吗?在应用商店给我们评分,帮助塑造 Beancount 的未来!

从 App Store 下载从 Play Store 下载

需要帮助?

加入我们的 Telegram 社区,获取支持、技巧,并参与关于使用 Beancount 进行个人财务管理的讨论。

Beancount 移动应用(iOS 和 Android 版)隆重推出

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

我们很高兴地宣布 Beancount 发展史上的一个重要里程碑:我们专为 iOS 和 Android 平台打造的移动应用已正式上线!此次发布直接回应了社区最频繁的需求之一——在移动设备上高效管理你的账本。

Beancount iOS 应用

主要功能

  • 快速交易录入:随时随地无缝添加新交易
  • 移动财务报告:随时随地查看你的财务洞察
  • 直接账本编辑:通过优化后的网页视图完全访问你的账本文件
  • 跨平台同步:在所有设备上保持你的财务数据一致

2020-08-19-beancount-mobile-app

社区驱动开发

此次发布仅仅是我们移动之旅的开端。我们致力于根据你的需求和反馈来不断完善这些应用。欢迎加入我们在 Telegram 上的活跃社区:https://t.me/beancount,与我们讨论 Beancount,分享你的经验,并帮助塑造未来的功能。

我们的愿景

在 Beancount,我们的使命是赋能每个人实现更好的财务控制和理解。这些移动应用是实现这一目标的重要一步,未来我们还有更多激动人心的功能和工具在规划中。

从 App Store 下载从 Play Store 下载

净利润入门 — 以及如何在 Beancount 中追踪它

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

在所有描述企业的数字中,有一个数字至关重要:净利润。它是衡量盈利能力的最终指标,也就是著名的“底线”。但它究竟意味着什么,以及如何使用像 Beancount 这样的纯文本会计系统精确地追踪它呢?

让我们来分解一下。

2020-03-12-net-income-101-how-to-track-it-in-beancount

净利润的真正含义

从本质上讲,净利润是指在支付了所有运营业务所需的全部费用后剩余的金额。这包括销售成本 (COGS)、所有运营费用、债务利息和税费。

它是公司财务状况最清晰的单一指标。对每个人来说,它都是一个关键数字:

  • 贷款人 通过它来衡量你的还款能力。
  • 投资者 将其视为潜在股息的来源或可用于增长的资本。
  • 创始人 依靠它来了解他们的财务状况并制定战略性再投资计划。

正净利润意味着你盈利。负净利润意味着你亏损。就这么简单。

核心公式(选择你需要的详细程度)

你可以使用不同程度的粒度来计算净利润。选择取决于你需要多详细的分析。

  • 完整公式: 收入 – 销售成本 – 运营费用 – 利息 – 税费 = 净利润
  • 标准公式: 收入 – 销售成本 – 费用 = 净利润
  • 快速估算公式: 总收入 – 总支出 = 净利润

关于成本的快速提示: 销售成本和运营费用之间有什么区别?销售成本 (COGS) 指的是与生产商品或服务直接相关的成本(例如,原材料、直接人工)。运营费用 指的是维持运营所需的其他一切费用,例如工资、租金、软件订阅、保险等。

一个小例子

让我们来看一个具体的例子。假设一家小型咖啡烘焙企业上个月的业绩如下:

项目金额示例分类账户
销售收入$60,000Income:Sales
销售成本(生咖啡豆)$20,000Expenses:COGS
运营费用$18,000Expenses:Ops:*
利息(设备贷款)$1,000Expenses:Interest
税费$1,000Expenses:Taxes

使用完整公式,计算很简单:

净利润=净利润 = 60,000 - 20,00020,000 - 18,000 - 1,0001,000 - 1,000 = 20,00020,000

该企业当月实现了 $20,000 的实际利润。

如何在 Beancount 中记录

Beancount 的结构非常适合这种情况。通过合理地组织你的账户,计算净利润就变成了良好簿记的自动副产品。

  • 将所有收入 标记在一个父级 Income 账户下,例如 Income:SalesIncome:Services
  • 拆分你的费用 以区分直接成本和间接成本。使用 Expenses:COGS 记录直接成本,并使用子账户(例如 Expenses:Ops:SalariesExpenses:Ops:Software)记录其他所有费用。
  • 将利息和税费过帐到它们自己的账户Expenses:InterestExpenses:Taxes)。这使得未来的分析,尤其是税务筹备,变得更加简单。
  • 定期平衡你的账簿。 基本会计等式 资产 = 负债 + 所有者权益 必须始终成立。

在一个周期结束时(例如,一个月),你可以使用 balance 断言来确认你的账户状态。这些条目不会移动资金;它们声明余额 应该 是多少,如果余额不正确,bean-check 将会报告错误。

; 2025-07-31 咖啡烘焙企业 — 7 月结账
2025-07-31 balance Assets:Bank:Operating 42000.00 USD
2025-07-31 balance Expenses:COGS 20000.00 USD
2025-07-31 balance Expenses:Ops 18000.00 USD
2025-07-31 balance Expenses:Interest 1000.00 USD
2025-07-31 balance Expenses:Taxes 1000.00 USD
2025-07-31 balance Income:Sales -60000.00 USD

一行净利润查询

这就是神奇之处。通过结构良好的分类账,你可以使用单个命令计算任何期间的净利润。

bean-query books.beancount \
"SELECT period, sum(number) WHERE account =~ '^(Income|Expenses)' \
AND year = 2025 GROUP BY month"

此查询将 2025 年 IncomeExpenses 账户中的所有值加总,并按月分组。在 Beancount 中,收入用负数表示,费用用正数表示,因此结果将是净利润的 负数

更好的是,你甚至不需要手动运行此查询。Fava(Beancount 的 Web 界面)会在其 报告 → 损益表 视图中自动为你绘制此图表。

可以自动化的快速洞察

由于你的分类账只是一个文本文件,因此你可以围绕它构建强大的自动化工作流程。

  • 每月电子邮件摘要: 设置一个 cron 作业来运行 bean-report books.beancount income_statement > net-income.txt,然后在每个月的第一天将生成的文本文件通过电子邮件发送给你自己。
  • 盈利能力警报: 使用 Git pre-commit 钩子运行查询来检查当月迄今的盈利能力。你可以将其编程为在净利润为负时拒绝提交,从而强制你确认亏损月份。
  • 情景建模: 想要对你的业务进行压力测试?只需将 books.beancount 复制到 scenarios/recession.bean,将你的 Income 条目减少 20%,然后重新运行你的净利润查询即可立即查看影响。

关键要点

  • 净利润是你的真正底线。目标是保持正净利润并了解其随时间的变化趋势。
  • Beancount 使底层数学变得清晰、可搜索和版本可控。没有隐藏的公式。
  • 通过规范的账户结构和单个查询,你将始终知道你的业务是否真正盈利。

Beancount.io 简介

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

现代簿记为何重要

你还在用电子表格管理投资吗?虽然电子表格功能多样,但随着投资组合的增长,它们可能会变得笨重且容易出错。Beancount.io 应运而生——一个专为管理股票和加密货币投资组合而设计,既复杂又用户友好的投资追踪平台。Beancount.io 专为工程师和财务极简主义者打造,将强大的功能与直观的界面相结合,以简化你的投资追踪体验。

2019-09-07-introduction-to-beancount

Expenses

Income Statement

Balance Sheet

复式记账:准确性的基石

Beancount.io 建立在复式记账的原则之上——这是一种全球金融机构都在使用的久经考验的方法。该系统通过一个简单而强大的概念确保数学准确性:每笔财务交易都必须完美平衡。

在复式记账中,每笔交易至少需要两个分录——一个借方 (+) 和一个贷方 (-)——涉及不同的账户。这种内置的验证系统使得记录不平衡的交易几乎不可能,从而确保你的财务记录保持准确和可靠。

1970-01-01 open Income:BeancountCorp
1970-01-01 open Assets:Cash
1970-01-01 open Expenses:Food
1970-01-01 open Assets:Receivables:Alice
1970-01-01 open Assets:Receivables:Bob
1970-01-01 open Assets:Receivables:Charlie
1970-01-01 open Liabilities:CreditCard

2019-05-31 * "BeancountCorp" "Salary of May 15th to May 31st"
Income:BeancountCorp -888 USD
Assets:Cash 888 USD

2019-07-12 * "Popeyes chicken sandwiches" "dinner with Alice, Bob, and Charlie"
Expenses:Food 20 USD
Assets:Receivables:Alice 20 USD
Assets:Receivables:Bob 20 USD
Assets:Receivables:Charlie 20 USD
Liabilities:CreditCard -80 USD

如你在上面两个示例中所见,每笔交易都必须满足会计等式。

资产 = 负债 + 权益(即净资产)

我们使用 Martin Blais 的 Beancount 语法和 Jakob Schnitzer 的 Fava 网络项目来构建本网站。如果任何交易的分录总和不为零,它将向你发出警报。

Error Alert

现在你了解了我们如何强制执行账本的正确性。但你可能会问,这些“账户”是什么?

理解账户:水桶类比

将你的财务账户想象成一个相互连接的水桶系统,金钱像水一样在其中流动。这个类比使得复式记账变得直观:当你将资金从一个账户转移到另一个账户时,就像将水从一个水桶倒入另一个水桶一样——系统中水的总量(金钱)保持不变。

Beancount.io 引入了五种账户。

  1. 收入 — 其金额始终为负或在借方。这是因为你正在赚钱,然后资金从“收入”账户借记并贷记到你的“资产”账户。
  2. 支出 — 其金额始终为正或在贷方。这是因为你正在花钱,资金从“资产”或“负债”流向“支出”账户。
  3. 负债 — 其金额为正或为零。你的信用卡负债就是一个很好的例子,它会周期性地增减。
  4. 资产 — 其金额为正或为零。你的现金或房屋总是具有一定的价值。
  5. 权益 — 你的净资产。系统将自动为你计算。权益 = 资产 - 负债,它反映了你的财富状况。

现在你可以使用上述关键词打开你的自定义账户:

1970-01-01 open Assets:Cash
1970-01-01 open Assets:Stock:Robinhood
1970-01-01 open Assets:Crypto:Coinbase
1970-01-01 open Expenses:Transportation:Taxi
1970-01-01 open Equity:OpeningBalance

使用商品进行高级投资追踪

Beancount.io 擅长追踪多样化的投资,从股票到加密货币。让我们探讨它如何处理复杂的投资场景。例如,以下是你在 2014 年以每枚 100 美元的价格购买 10 枚比特币的记录方式:

2014-08-08 * "Buy 10 Bitcoin"
Assets:Trade:Cash -1000.00 USD
Assets:Trade:Positions 10 BTC {100.00 USD}

三年后,你以每枚 10,000 美元的价格出售它们(原始成本为每枚 100 美元,用 {100.00 USD} 标注),价格用 @ 10,000.00 USD 标注。

2017-12-12 * "Sell 2 Bitcoin"
Assets:Trade:Positions -2 BTC {100.00 USD} @ 10,000.00 USD
Assets:Trade:Cash 20,000.00 USD
Income:Trade:PnL -19,800.00 USD

或者相同的交易使用 @@ 20,000.00 USD,表示总价为 20,000 美元

2017-12-12 * "Sell 2 Bitcoin"
Assets:Trade:Positions -2 BTC {100.00 USD} @@ 20,000.00 USD
Assets:Trade:Cash 20,000.00 USD
Income:Trade:PnL -19,800.00 USD

交易所有分录的总和,包括 -2 BTC {100.00 USD},仍然和往常一样为零。

成本标签 {100.00 USD} 很重要,因为你可能以不同的成本购买了相同的商品。

100 BTC {10.00 USD, 2012-08-08}
10 BTC {100.00 USD, 2014-08-08}

如果你想简化流程,可以在开始时将账户设置为 FIFO 或 LIFO。FIFO 代表先进先出,而 LIFO 代表后进先出。在美国,美国国税局 (IRS) 使用 FIFO 来计算你的损益和相应税款。

1970-01-01 open Assets:Trade:Positions "FIFO"

然后当你以 -2 BTC {} 这样的简写形式出售时,Beancount 将自动应用 FIFO 策略并出售最旧的商品。

开始使用 Beancount.io

Beancount.io 是一个现代化的云端财务管理平台,它将你的文本交易记录转换为全面的财务报表,包括利润表、资产负债表和试算平衡表。通过将纯文本文件的可靠性与强大的可视化工具相结合,Beancount.io 帮助你精确控制财务生活,同时获得有关投资绩效的宝贵见解。

立即开始你的 Beancount.io 财务之旅——促销期间免费!

使用 Beancount 的簿记基础:通往清晰账簿的纯文本路径

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

如果你不知道钱的去向,就无法掌控业务。 准确的账簿可以将猜测转化为洞察力。(Investopedia

每个企业主、自由职业者或初创公司创始人都最终会面临同样的现实:财务混乱是增长的杀手。如果没有清晰的现金流图景,你就像是在盲目飞行。但是,如果你能以与代码相同的精度和控制力来管理你的财务状况呢? Beancount 正是这样一个强大的开源会计系统,它在纯文本文件上运行。

2019-03-24-bookkeeping-basics

本指南将引导你了解簿记的基础知识,并向你展示如何使用 Beancount 构建健壮、轻量级且透明的财务工作流程。

什么是簿记?

从本质上讲,簿记是对企业进行的每笔财务交易进行系统和持续的记录。它是跟踪收入、支出、资产(你拥有的)和负债(你欠的)的日常规范。

在 Beancount 的世界中,这些记录并非锁定在专有软件中。它们存在于简单易懂的纯文本文件中。这种方法允许你使用 Git 等工具对你的财务历史进行版本控制,就像你对软件项目一样。每个条目都受复式平衡规则的约束,这是一个优雅的系统,可自动检查你的工作并确保你的账簿始终正确。(beancount

为什么它很重要?

细致的簿记不仅仅是行政上的整洁;它是一种战略优势。

  • 税务信心: 当税季来临时,清晰的记录是你最好的朋友。美国国税局 (IRS) 要求提供清晰的收入和扣除额证明文件。维护良好的分类账意味着你可以自信地提交文件,并大大缩短任何潜在的审计时间。(IRS
  • 更明智的决策: 你的定价是否足够高?特定的服务合同是否真的有利可图?订阅成本是否呈螺旋式上升失控?损益表和资产负债表等财务报表揭示了定价漏洞、失控的成本和现金流缺口,为管理者和投资者提供了做出明智选择所需的数据。(Investopedia
  • 更容易获得资金: 贷款人和投资者不会根据直觉做出决定。在汇款之前,他们会要求提供财务报表。良好的账簿使你能够在几秒钟内生成资产负债表或损益表,展现专业性和财务健康状况。(Investopedia
  • 欺诈和错误警报: 定期将你的账簿与银行对账单进行核对是你抵御错误的第一道防线。这个简单的习惯可以帮助你快速发现重复收费、银行错误或欺诈活动,防止它们成为重大问题。(IRS

七步纯文本蓝图

准备好开始了吗?以下是如何从头开始构建 Beancount 驱动的簿记系统。

1. 将企业账户和个人账户分开

这是不可协商的第一步。开设一个专用的企业支票账户,如果需要,还可以开设一张企业信用卡。混合资金会给会计工作带来噩梦,并可能模糊你和你的企业之间的责任界限。清晰的区分对于准确扣除和法律保护至关重要。(小型企业管理局

在 Beancount 中,你可以使用 open 指令声明这些账户的存在:

; 你的账户的期初余额
2025-07-22 open Assets:Bank:Business USD
2025-07-22 open Assets:Bank:Personal USD

2. 选择一个簿记系统

Beancount 使用 复式记账法,这是几个世纪以来会计的黄金标准。其原理很简单:每笔交易都会影响至少两个账户。对于从一个账户借记的每一笔款项,必须有相应的贷记到另一个账户。该系统的魔力在于,所有账户的总和必须始终为零。Beancount 会自动强制执行此规则,这意味着拼写错误或逻辑错误会立即发出标记。你实际上不可能有不平衡的账簿。(beancount

3. 确定会计方法

你主要有两个选择:

  • 现金收付制: 你在收到款项时记录收入,在付款时记录支出。它更简单,并直接反映你的现金流。
  • 权责发生制: 你在 赚取 收入时(例如,发出发票时)记录收入,在 发生 支出时(例如,收到账单时)记录支出。这种方法可以更真实地反映公司的财务健康状况和业绩,尤其对于成长型公司而言。(Investopedia

以下是 Beancount 中权责发生制交易的示例。你在发出发票时记账收入,将价值移入 Assets:AccountsReceivable。当客户付款时,你将现金从 AccountsReceivable 移至你的银行账户。

; 权责发生制示例:发出发票,稍后付款
2025-07-22 * "设计发票 #101"
Assets:AccountsReceivable 3000.00 USD
Income:Design

2025-08-15 * "客户支付发票 #101"
Assets:Bank:Business 3000.00 USD
Assets:AccountsReceivable

4. 组装你的工具栈

Beancount 的美妙之处在于其极简主义的模块化特性。你的核心工具栈包括:

  • 编辑器 + Git: 你最喜欢的用于记录交易的文本编辑器和用于版本控制的 Git,为你提供每次更改的完整、可审核的历史记录。
  • bean-report / bean-balance / Fava: bean-report 等命令行工具和令人惊叹的 Web 界面 Fava 为你提供即时财务报表、仪表板和强大的过滤功能。
  • 导入器: 一个丰富的社区构建的导入器生态系统可以通过 CSV、Plaid 或 Stripe 和 PayPal 等服务的 API 连接到你的银行 Feed,从而自动化大部分数据输入。

5. 对每笔交易进行分类

组织良好的“会计科目表”是洞察力报告的支柱。使用分层账户来定义对你的业务有意义的类别,以实现粒度。然后,在记录交易时,对它们进行细致的分类。

2025-07-30 * "AWS 月账单"
Expenses:Hosting:AWS 124.50 USD
Assets:Bank:Business
tag: "ops"

在此示例中,费用清楚地归档在 Expenses:Hosting:AWS 下。tag: "ops" 的使用还允许进行交叉报告,例如查看所有运营费用,无论其主要类别如何。(IRS

6. 安全地存储源文档

美国国税局 (IRS) 乐于接受收据和发票的数字副本。将纸质收据扫描或将电子邮件发票转发到云存储(如 Google Drive 或 Dropbox)中的专用文件夹。然后,使用元数据直接链接到 Beancount 条目中的文件。这将创建一个密闭的、自包含的记录。

; 收据图像链接为元数据
2025-07-18 * "团队午餐"
Expenses:Meals 85.10 USD
Assets:Bank:Business
receipt: "receipts/2025-07-18-team-lunch.jpg"

7. 养成簿记的习惯

一致性是关键。拖延会使簿记变成一项压力大、耗时的琐事。留出 recurring 的时间段(每周或每月的“Bean-day”)来导入交易、核对账户并查看你的财务报告。这个简单的例行程序将簿记从季度性的混乱工作转变为快速、赋能的业务健康检查。(IRS

自行操作与专业帮助

  • 自行操作: 对于交易量可预测的自由职业者或小型企业,使用 Beancount 的自行操作方法非常有效。最好与注册会计师进行一次简短的一次性咨询,以验证你的会计科目表并确保你走在正确的轨道上。
  • 专业审查: 随着你的业务规模扩大、交易变得更加复杂或合规风险上升,聘请专业簿记员或会计师进行定期审查是非常宝贵的。你可以继续使用 Beancount 作为你的主要真相来源,只需导出他们需要的报告即可。

快速入门清单

  • 开设单独的企业银行账户。
  • 克隆 Beancount 入门存储库并在 accounts.bean 中定义你的账户。
  • 选择现金制或权责发生制并坚持下去。
  • 设置导入器以从你的银行 (CSV)、Stripe、PayPal 等自动化数据输入。
  • 为每笔交易标记并编写清晰的描述。
  • 每周或每月将你的分类账与银行对账单进行核对。
  • 使用 Fava 或 bean-report 生成月度收入、余额和现金流报告。
  • 定期备份你的 .bean 文件(Git + 异地存储)。

进一步阅读

准备好开始了吗? 安装 Beancount,提交你的第一个条目,并将电子表格的迷雾换成纯文本的清晰度。祝你 Bean-keeping 快乐!