跳到主要内容

72 篇博文 含有标签「accounting」

查看所有标签

Beancount.io 简介

· 阅读需 5 分钟
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 的簿记基础:通往清晰账簿的纯文本路径

· 阅读需 8 分钟
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 快乐!