跳到主要内容

20 篇博文 含有标签「bookkeeping」

查看所有标签

十个簿记技巧,助你提升 Beancount 工作流程

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

平静、平衡的账本是你业务的良药。以下技巧将最新的小型企业指南浓缩为 Beancount 友好的例行程序。

维护一套原始的账簿不仅仅是为了度过报税季;它更是为了实时了解你企业的财务健康状况。对于像 Beancount 这样的纯文本会计系统的用户来说,良好的习惯是将简单的账本转化为强大的洞察力和增长工具的引擎。以下十个技巧旨在完善你的流程,节省你的时间,并保持你的财务数据干净、可审计且随时可用。

2024-09-12-bookkeeping-basics-for-therapists-with-beancount

1. 区分企业和个人资金

这是商业财务的黄金法则,自有其道理。为你的业务维护一个专用的支票账户和信用卡,是在你的企业和个人生活之间划清界限的最清晰的方式。它极大地简化了税务准备工作,提供了清晰的审计线索,并有助于保护你的个人资产免受企业负债的影响。在 Beancount 中,这意味着你的交易从一开始就进行了清晰的分类——无需再费力回忆咖啡购买是客户会议还是个人支出。

2. 尽早选择现金制或权责发生制,然后坚持下去

你的会计方法决定了你记录收入和支出的时间。美国国税局允许大多数小型企业在现金制或权责发生制之间进行选择。

  • 现金制: 你在资金到账时记录收入,在资金支出时记录支出。它简单易行,非常适合交易直接、即时的小型企业。
  • 权责发生制: 你在赚取收入时(例如,当你提供服务时)记录收入,在发生支出时记录支出,而不管现金何时易手。这提供了更准确的盈利情况,尤其是在你管理具有延迟付款的发票或保险索赔时。

关键是尽早选择一种方法并始终如一地应用它。你甚至可以使用 Beancount 的 options 块在账本中声明你的选择,以正式确定该决定。

3. 定期对账

对账是将你的 Beancount 账本中的交易与你的官方银行和信用卡对账单进行匹配的过程。定期执行此检查(无论是每周还是每月)是一个至关重要的习惯。它使你可以及时发现银行费用、潜在的欺诈行为以及任何数据导入错误,防止它们累积成重大问题。一个简单的命令可以显示你要与对账单核对的余额。

bean-balance books.bean "Assets:Bank" -e 2025-07-31

4. 尽可能自动化导入

你的时间最好花在服务客户上,而不是手动输入交易数据。Beancount 的生态系统在这里大放异彩。使用 bean-extract 等工具创建配置,从你的银行、支付处理器(如 Stripe 或 Square)或 EHR 系统读取 CSV 文件。设置完成后,这些脚本可以自动将原始数据转换为格式化的 Beancount 条目,从而显著减少拼写错误并节省数小时的管理工作。

5. 立即分类,而不是在报税时

拖延分类会导致压力和不准确。当交易进入你的账本时,立即将其分配到正确的账户(例如,Income:Therapy:SelfPayExpenses:Software:EHRExpenses:CEU)。实时执行此操作可确保你正确记住每笔支出的上下文。定义明确的会计科目表使此过程快速且一致,将你的账本变成一份丰富的实时业务运营报告。

6. 保存每张收据和 EOB 的数字副本

纸质收据会褪色和丢失。数字优先的方法更具弹性和效率。将纸质收据扫描或将 PDF 发票和福利说明 (EOB) 保存到你计算机上安全、有序的文件夹中。使用 Beancount,你可以使用元数据直接从账本中链接到这些文件。

2025-07-15 * "CEU webinar"
Expenses:CEU 79.00 USD
Assets:Bank:Practice
document: "docs/ceu/2025-07-15-trauma-webinar.pdf"

这将创建一个无可置疑的、独立的记录,在税务审计时非常宝贵。

7. 监控现金流趋势,而不仅仅是余额

了解你当前的银行余额固然好;了解资金进出你企业的流动情况则更好。使用 Beancount 强大的查询语言来分析你的财务趋势。绘制你的月收入与支出图表,确定你最赚钱的服务,或预测在业务较慢的月份中潜在的现金短缺。这种由顶级簿记指南推荐的主动方法使你可以做出战略决策,而不是对财务意外做出反应。

8. 备份和版本控制你的账本

由于你的 Beancount 账本是一个简单的文本文件,你可以使用 Git(一个强大的免费版本控制系统)来管理它。通过将你的账本保存在私有 Git 存储库中(在 GitHub 或 GitLab 等服务上),你可以免费获得两个关键优势:

  1. 完整的历史记录: 你可以查看对账本所做的所有更改。
  2. 异地备份: 你的数据免受本地硬件故障的影响。

养成在每次对账后“推送”更改的习惯。

9. 每月查看财务报表

不要等到你的会计师告诉你你的业务状况。在每个月末,使用 Beancount 的报告工具生成关键财务报表,例如损益表和资产负债表。将它们与上个月或去年同期进行比较。这种定期审查可以帮助你发现支出漏洞、评估你的定价,并培养必要的财务知识,以便自信地回答贷方或投资者的提问。

bean-report books.bean income_statement -e 2025-07-31

10. 全年预算税款

对于个体经营者来说,纳税日不应该是一个意外。将你未来的税单视为一项经常性支出。在 Beancount 中创建负债账户(例如,Liabilities:Tax:FederalLiabilities:Tax:State),并定期将你收到的每笔付款的一定比例转入这些虚拟账户。当需要进行季度预估税款缴纳时,资金将被预留并等待,使整个过程完全轻松无痛。


快速入门清单

  • 开设单独的业务银行账户。
  • 选择现金制或权责发生制,并将其记录在你的 options 中。
  • 使用 bean-extract 编写你的银行和 EHR CSV 导入脚本。
  • 在每笔交易到达时标记一个类别。
  • 每周对账;之后备份到你的私有 Git 存储库。
  • 运行月度报表和现金流查询。
  • 将税收缓冲资金转移到单独的高收益储蓄账户。

准备好让你的账簿平静下来了吗?

安装 Beancount,提交你的第一个条目,并让这十个习惯提供必要的结构,以保持你的治疗业务财务稳固且富有洞察力。祝你记账愉快!

使用 Beancount 的治疗师记账基础

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

治疗是关于倾听;记账是关于倾听你的金钱。 当诊疗记录堆积如山,报销滞后时,一套透明的账簿就成了混乱中的平静。

经营私人诊所意味着要身兼两职:临床医生和企业主。虽然你的专业知识在于提供护理,但诊所的财务健康状况取决于清晰、一致的记账。对于治疗师来说,这项任务本身就具有一系列独特的挑战。

2024-08-24-bookkeeping-basics-for-therapists-with-beancount

为什么治疗记账感觉不同

治疗诊所的财务节奏很少遵循简单、可预测的模式。这种复杂性源于几个关键领域,这些领域使得标准记账软件常常感觉不合适。

  • 不规则的现金流。 你的收入来源很少是线性的。客户的共付额今天可能会到你的账户,但相应的保险报销可能需要数周甚至数月才能到账。再加上浮动付款计划,你管理的现金到账时间截然不同。这使得理解你 赚取 金钱的时间(权责发生制会计)与你 收到 金钱的时间(现金收付制会计)之间的区别至关重要。
  • 各种费用混杂。 运营现代诊所的费用迅速增加。从电子健康记录 (EHR) 订阅和支付处理费到责任保险和专业发展,如果不仔细跟踪,许多小额成本会悄悄吞噬你的利润率。
  • 免征销售税,但自雇税繁重。 虽然大多数心理健康服务免征销售税,但你并没有摆脱国税局的束缚。作为一名自雇专业人士,你有责任支付季度预估税,其中包括所得税和自雇税 (SECA),以支付社会保障和医疗保险。
  • HIPAA 敏感性。 你的财务数据与受保护的健康信息 (PHI) 交织在一起。使用第三方云软件进行记账可能会扩大你诊所的“攻击面”,从而为数据泄露创造另一个潜在的载体。像 Beancount 这样的纯文本会计系统将你的所有数据保存在你自己的计算机上,在你的控制之下,从而降低了这种风险。

Beancount 七步蓝图

Beancount 是一个功能强大的开源会计系统,它使用纯文本文件。它是免费的、私密的,并且足够灵活,可以处理治疗诊所独特的财务状况。以下是入门方法。

• 将个人和诊所资金分开

这是商业财务中不可协商的第一步。开设一个专门的企业支票账户和一张企业信用卡。从现在开始,每笔客户付款都进入此账户,每笔企业支出——从执照费到办公用品——都从此资金中支付。在 Beancount 中,你可以轻松指定这些,创建一个清晰的界限:每笔交易要么与个人相关,要么与诊所相关,消除了猜测。例如,你的新账户将变为 Assets:Bank:Practice

• 建立一个对治疗师友好的会计科目表

“会计科目表”只是你用来组织财务交易的所有类别的列表。将其视为你的资金归档系统。你将从五个主要账户类型开始:资产、负债、权益、收入和支出。然后,你可以创建专门针对你的治疗诊所的子账户。

2025-07-23 open Income:Therapy:SelfPay       USD
2025-07-23 open Income:Therapy:Insurance USD
2025-07-23 open Assets:AccountsReceivable USD
2025-07-23 open Expenses:CEU USD
2025-07-23 open Expenses:Software:EHR USD
2025-07-23 open Expenses:Licensing USD

这种结构使你可以准确地看到你的资金来自哪里(自费与保险)以及去向哪里(继续教育、软件等)。这反映了为心理健康专业人士发布的最佳实践图表。

• 选择现金制或权责发生制(并坚持下去)

你需要决定 何时 确认你的收入和支出。

  • 现金制: 你在收到现金时记录收入,在支付费用时记录支出。
  • 权责发生制: 你在 赚取 收入时(例如,完成一次诊疗后)和 发生 支出时记录它们,而不管金钱何时易手。

例如,如果客户预付 $1000 用于五次诊疗套餐,现金制会在付款当天记录全部 $1000 的收入。权责发生制会在每次完成诊疗后记录 $200 的收入,让你更准确地了解你的月收入。

经验法则: 个体诊所,很少有保险索赔 → 现金制更简单,而且通常足够。 集体诊所,大量报销 → 权责发生制可以更清晰地了解盈利能力。

• 跟踪应收账款和报销

Beancount 的最大优势之一是它能够跟踪你应得的款项。当你提交保险索赔时,你还没有收到付款,但你已经赚取了收入。你可以将其记录在你的 Assets:AccountsReceivable 账户中。当付款到账时(通常低于账单金额),你可以“结算”应收账款并计入保险核销。

2025-07-10 * "CPT 90837 诊疗 – 等待 BlueCross"
Assets:AccountsReceivable 150.00 USD
Income:Therapy:Insurance

2025-07-25 * "BlueCross 付款 CPT 90837"
Assets:Bank:Practice 135.00 USD
Expenses:InsuranceWriteOff 15.00 USD
Assets:AccountsReceivable -150.00 USD

这个两步流程可确保你永远不会丢失未完成的索赔,并拥有准确的保险调整记录。

• 及时对可扣除费用进行分类

密切关注你的支出是最大限度地减少税单的关键。美国国税局允许你扣除对你的职业“普通且必要”的支出。对于治疗师来说,这包括继续教育 (CEU) 课程、州规定的督导、执照续签费、责任保险和 EHR 订阅。通过在发生这些支出时对其进行分类,你将拥有一个准确的、年初至今的总数,可用于你的季度预估税和年终申报。

• 每周对账

对账是将你的 Beancount 账本中的交易与你的银行和信用卡对账单进行匹配的过程。它确认你的记录准确无误且完整。每周快速检查可以防止小错误变成大麻烦。使用 Beancount,你只需在终端中输入几个简单的命令即可。

# 检查你诊所银行账户的最终余额
bean-balance books.bean "Assets:Bank:Practice"

# 查看你的收入来源摘要
bean-query books.bean "SELECT account, SUM(position) WHERE account ~ 'Income' GROUP BY account"

# 生成年初至今的损益表
bean-report books.bean income_statement --end 2025-07-23

这个简单的循环——分类、对账和报告——是任何私人诊所进行健全财务管理的基础。

• 自动化和备份

拥抱自动化以节省时间并减少错误。

  • 使用 bean-extract 等提取工具将来自你的银行或 EHR 的 CSV 文件自动转换为 Beancount 交易条目。
  • 将福利说明 (EOB) 或 CEU 证书等重要文档的 PDF 文件存储在专用文件夹中,并使用 document: 元数据将其直接链接到账本中的相关交易。
  • 你的 .bean 账本是一个简单的文本文件,非常适合版本控制。每晚将你的账本推送到私有 Git 存储库(例如 GitHub 或 GitLab)以进行安全的异地备份。

常见陷阱(和快速修复)

即使有良好的系统,一些常见的错误也会让治疗师绊倒。以下是如何发现和修复它们的方法。

陷阱修复
净存款会计(将所有收入/费用汇总)将每张保险支票拆分为 收入核销 行。
忘记爽约费发布一个单独的标记为 noshow 的收入行以保持清晰。
混合 CEU 和差旅费区分 Expenses:CEUExpenses:Travel——两者均可扣除,但跟踪方式不同。
忽略应收账款账龄按日期查询 Assets:AccountsReceivable 以追讨过期的索赔。

快速入门清单

  • 开设一个仅限诊所的银行账户和信用卡。
  • 克隆 Beancount 入门存储库并创建你的特定于治疗的会计科目表。
  • 决定使用现金制或权责发生制,并在你的 Beancount 选项中注明。
  • 为你的银行、EHR 或保险 CSV 下载编写一个简单的导入器配置。
  • 安排一个循环的“Bean-hour”(可能在周五下午)用于你的导入 → 对账 → 报告工作流程。
  • 为你的 .bean 文件设置自动异地备份,并每季度测试一次还原过程。

延伸阅读

准备好消除财务噪音了吗? 安装 Beancount,记录你的第一次诊疗费,让纯文本会计的清晰性为你的诊所提供应有的空间和财务稳定性。祝你记账愉快!

使用 Beancount 轻松掌握亚马逊卖家记账基础

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

当你的利润微乎其微时,精确胜过猜测。

在亚马逊上销售是一个数量和速度的游戏。但在销售和发货的背后,隐藏着一个由费用、退货、库存变动和税务义务组成的复杂网络。标准的记账软件通常难以捕捉到这种细微差别,导致卖家对其真实盈利能力的了解模糊不清。

2024-07-16-bookkeeping-basics-for-amazon-sellers-with-beancount

这就是像 Beancount 这样的纯文本会计系统大放异彩的地方。通过完全控制记录交易的方式,你可以构建一个完全模拟亚马逊市场独特挑战的财务真相来源。本指南提供了一个循序渐进的工作流程,让你在费用、税金和库存难题面前保持领先地位。

为什么亚马逊记账与众不同

如果你尝试将亚马逊付款与你的银行对账单进行核对,你就会知道这并非易事。亚马逊业务的财务现实隐藏在多层抽象之后。

  • 双周一次性付款: 亚马逊不会向你发送每笔销售的收入。相反,它每两周发送一次单笔存款。这笔一次性付款是一个 值,总销售额扣除推荐费、FBA 费用、广告成本、退货和其他预扣款。要了解你的业务,你必须将这个数字分解成其组成部分。 (doola: A Business-in-a-Box™)
  • 库存无处不在: 你的库存不断流动——从你的供应商到准备中心,再到全国各地的各种 FBA 配送中心,最后到客户。准确跟踪你的销售成本 (COGS) 需要知道每笔销售使用了哪一批库存(以什么成本)。 (Bean Ninjas)
  • 市场费用和促销: 你的很大一部分收入立即被费用消耗:推荐费、FBA 拣货和包装费、月度仓储费和广告成本。单独跟踪每个费用类别是计算你的真实毛利率和确定产品实际盈利能力的唯一方法。 (Profitwise Accounting)
  • 销售税拼凑: 虽然亚马逊的市场促进商法处理大多数州的销售税征收和汇款,但这并非一个完整的解决方案。在 FBA 仓库中存储库存可能会产生“关联”(业务存在),可能要求你在这些州注册和申报,即使没有应缴税款。这是一个复杂的合规领域,需要仔细跟踪。 (TaxDo)
  • 更低的 1099-K 门槛: 随着 2024 年 1099-K 表格的申报门槛从 20,000 美元降至 5,000 美元(并设定从 2026 年起降至 600 美元),几乎每个认真经营的卖家都将收到亚马逊的表格,向 IRS 报告其总交易量。你的账簿 必须 能够与这个数字完全一致。 (IRS)

Beancount 七步蓝图

此蓝图利用 Beancount 的精度来直接应对亚马逊的复杂性。

1. 尽早区分渠道

如果你在多个平台上销售,请将每个平台的会计分开。在你法人实体的单个 Beancount 文件中,为每个市场创建专用的分层账户。这种结构简化了分析,并使生成税务报表变得轻而易举。

2025-07-22 open Income:Amazon               USD
2025-07-22 open Expenses:Amazon:FBAFee USD
2025-07-22 open Assets:Amazon:Payouts USD

2. 分解每次付款

这是最关键的习惯。切勿将亚马逊存款记为单行收入。相反,请从卖家中心下载相应期间的“所有交易”结算报告。使用此报告创建一个 Beancount 交易,将付款分解成其组成部分。

你在银行收到的存款是平衡分录。总销售额记入 Income,而所有费用和退款则从其各自的 Expenses 账户中扣除。

; 来自结算报告的双周付款
2025-07-14 * "亚马逊结算 #4361"
Assets:Bank:Operating 8432.17 USD
Income:Amazon:Sales -12274.50 USD
Expenses:Amazon:FBAFee 2454.80 USD
Expenses:Amazon:Adverts 1012.06 USD
Expenses:Amazon:Refunds 375.47 USD
Assets:Amazon:Reserve -100.00 USD

3. 使用批次跟踪库存和 COGS

Beancount 有一个一流的库存跟踪系统,称为“批次”。当你购买库存时,你会记录单位数量及其特定成本。当一个单位售出时,你可以将该确切成本记为费用,从而完美计算销售成本 (COGS)。

; 从供应商处购买 1,000 件
2025-07-01 * "供应商 PO-7421"
Assets:Inventory:WidgetA 1000 WidgetA {@ 4.20 USD}
Assets:Bank:Operating

; 稍后,记录单笔销售的成本
2025-07-16 * "FBA 销售 WidgetA | COGS"
Expenses:COGS 1 WidgetA {4.20 USD}
Assets:Inventory:WidgetA

4. 选择权责发生制以提高清晰度

对于任何基于库存的业务,权责发生制都更胜一筹。现金收付制方法会在你购买库存的月份显示巨额支出,并在你销售库存的月份显示人为的高利润,从而扭曲你的业绩。权责发生制会计将销售商品的成本 (COGS) 与同一期间的销售收入正确匹配,从而更清晰地反映你的毛利润。 (Bean Ninjas)

5. 自动导入

手动输入结算报告一开始很有教育意义,但无法扩展。纯文本生态系统擅长自动化:

  • 使用 bean-extract 从 A2X 等服务导出的格式化 CSV 中提取数据。
  • 编写简单的 Python 脚本以直接从亚马逊的 SP-API 中提取数据。
  • 使用现有的导入程序提取银行 CSV 文件,以核对直接向信用卡收取的存款和费用。

6. 每周核对

养成检查数字的习惯。使用 Beancount 强大的命令行工具快速验证余额并查看业绩。

# 检查你当前的库存数量和价值
bean-balance books.bean "Assets:Inventory" "2025-07-21"

# 生成上一期间的损益表
bean-report books.bean income_statement -e 2025-07-21

7. 存档源文档

对于每笔主要交易,链接到源文档。使用 Beancount 的元数据语法 (document:) 附加亚马逊官方结算 PDF、库存采购的供应商发票或发货收据。这将创建一个独立的、可审计的财务记录。

销售税和合规性清单

  • 市场促进商法: 了解虽然亚马逊在大多数州代表你汇出销售税,但在加利福尼亚州、德克萨斯州或宾夕法尼亚州等州存储库存仍然会产生经济联系,可能需要你在当地注册你的企业。 (TaxGPT)
  • 1099-K 核对: 确保你在 Income:Amazon:Sales 中记录的年度总额与 1099-K 表格中报告的总金额精确到美分。任何差异都是审计标志。 (IRS)
  • 直接销售税: 如果你通过促进商未涵盖的其他渠道进行销售,请维护 Liabilities:SalesTaxPayable:State 账户子树以跟踪你直接欠缴的税款。

常见陷阱(和修复方法)

  • 陷阱: 仅记录亚马逊的净存款。
    • 修复: 始终使用完整的结算报告分解付款。
  • 陷阱: 忽略报销的退货或损坏的商品。
    • 修复: 将初始退款费用和随后的亚马逊报销作为单独的贷项记录。
  • 陷阱: 忘记滚动储备金。
    • 修复: 亚马逊通常会从付款中预扣“储备金”余额,尤其是对于新账户。在专用的 Assets:Amazon:Reserve 账户中跟踪你应得的这笔款项。
  • 陷阱: 你的系统和亚马逊的 SKU 别名不匹配。
    • 修复: 在导入脚本中规范所有 SKU 代码,以确保 COGS 查找不会失败。

快速入门待办事项

  • 在卖家中心启用并下载你的第一份结算报告。
  • 克隆 Beancount 入门存储库并构建特定于亚马逊的账户图表。
  • 编写一个小型导入程序脚本,将结算 CSV 转换为 Beancount 交易(.txn 文件)。
  • 安排每周提醒以提取新报告并运行 bean-check 以确保你的文件有效。
  • 每月查看你的损益表,以便就广告支出、定价和库存做出数据驱动的决策。

延伸阅读

多发货,少烦恼——保持你的 Bean 平衡。祝你销售愉快!

使用 Beancount 为 Etsy 卖家进行簿记的基础知识

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

手工缝制的账本胜过杂乱无章的电子表格——尤其是在每一分钱都很重要的时候。

对于 Etsy 上的艺术家、制造商和策展人来说,热情驱动着业务。但随着商店的发展,财务清晰度变得与创意愿景同等重要。兼顾费用、跟踪材料成本和准备税务可能会让人不知所措,让你无法专注于工作。

2024-07-16-bookkeeping-basics-for-etsy-sellers-with-beancount

如果你能以对待产品一样的细致和精准来管理商店的财务状况会怎样?本指南介绍了使用 Beancount 的纯文本会计工作流程,Beancount 是一款为准确性和控制力而设计的开源引擎。这种方法可以帮助你掌握数字,从而专注于你的工艺。

为什么 Etsy 簿记有所不同

Etsy 商店具有独特的财务特征,其复杂性是通用会计软件通常无法捕捉到的。

  • 无处不在的市场费用: 你的最终付款是在 Etsy 收取其份额后剩下的金额。上架费、交易费、支付处理费和广告费都会蚕食每一笔销售额。如果不单独跟踪它们,你就无法知道你的真实利润率。
  • 平台控制的销售税: 对于卖家来说,这是一个巨大的胜利,Etsy 现在会在大多数州自动计算、收取和代缴销售税。但是,如果你在其他渠道销售或在某些州有实体店,由于“关联”规则,你可能仍然有自己的销售税义务。
  • 灵活的付款节奏: 根据你的设置和账户历史记录,Etsy 可以每天、每周、每两周或每月存入你的资金。这种灵活性会使现金流感觉难以预测,尤其是在资金被保留或延迟的情况下。(Etsy 帮助)
  • 更低的 1099-K 门槛: 逃税的日子已经过去了。用于报告你总销售额的 1099-K 表格的 IRS 报告门槛在 2024 年设定为 5,000 美元,并计划到 2026 年降至 600 美元。这意味着几乎每家商店都会收到 IRS 表格,并且你的账簿必须能够与其完全一致。(IRS)

七个快速步骤中的 Beancount 蓝图

此纯文本蓝图将帮助你构建清晰、准确且无压力的簿记系统。

1. 预先分离渠道

如果 Etsy 不是你唯一的销售渠道,请为每个渠道创建单独的收入和支出账户。在你的科目表顶层进行这种简单的分离可以保持你的分析清晰,并使税务时间更加轻松。

2025-07-22 open Income:Etsy               USD
2025-07-22 open Expenses:Etsy:ListingFee USD
2025-07-22 open Assets:Etsy:Payout USD

2. 分解每次付款

切勿将 Etsy 存款记录为单行收入。相反,请从你的商店管理器下载每月的付款账户 CSV。使用此报告创建一个 Beancount 交易,将每次存款“分解”为其总销售额和各个费用组成部分。

; 来自 Etsy 付款账户 CSV 的每周付款
2025-07-15 * "Etsy 存款 #2025-28"
Assets:Bank:Operating 1842.77 USD
Income:Etsy:Sales -2100.00 USD
Expenses:Etsy:TransactionFee 136.50 USD ; 6.5 %
Expenses:Etsy:PaymentProcessing 66.00 USD ; 3 % + 每笔订单 $0.25
Expenses:Etsy:ListingFee 14.00 USD ; $0.20 x 70 次续订
Assets:Etsy:Reserve -75.73 USD

3. 使用批次跟踪库存和销货成本

对于实物商品的卖家,Beancount 的“批次”功能是跟踪销货成本 (COGS) 的游戏规则改变者。当你购买原材料时,你将它们记录为特定成本的库存。当你销售成品时,你可以将所用材料的确切成本记为支出。

; 批量购买库存材料
2025-07-01 * "批量购买纱线 | 供应商 XYZ"
Assets:Inventory:ScarfBlue 500 ScarfBlue {@ 3.45 USD}
Assets:Bank:Operating

; 记录商品售出时的销货成本
2025-07-20 * "售出蓝色围巾 | 订单 #1234"
Expenses:COGS 1 ScarfBlue {3.45 USD}
Assets:Inventory:ScarfBlue

4. 尽早选择你的会计方法

你有两个主要选择:

  • 现金收付制: 简单易行。你在收到款项时记录收入,在付款时记录支出。这适用于小型、爱好规模的商店。
  • 权责发生制: 提供更真实的盈利情况。你在进行销售时(而不是在收到付款时)记录收入,并在发生费用时记录费用。这更适合批量购买用品或销售定制商品的商店。

5. 自动导入

通过自动化数据输入来节省时间。纯文本生态系统提供多种选择:

  • 使用带有自定义规则的 bean-extract 来解析 Etsy CSV 文件。
  • 配置银行 CSV 导入器以捕获通过信用卡支付的广告费用或运费标签。
  • 对于高级用户,编写 Python 脚本以直接从 Etsy API 获取报告。

6. 每周对账

每周留出几分钟时间来检查你的数字。使用 Beancount 的命令行工具快速验证你的余额,并在月底前发现任何问题,例如释放储备金、退款或费用调整。

# 检查你的 Etsy 持有账户的余额
bean-balance books.bean "Assets:Etsy:Payout" "2025-07-21"

# 生成上一期间的损益表
bean-report books.bean income_statement -e 2025-07-21

7. 附加源文档

通过直接在你的交易元数据中链接到源文档来创建完全独立且可审计的记录。这非常适合供应商收据、运费标签 PDF 或采购订单。

2025-07-12 * "Etsy 订单 #4321 的运费标签"
Expenses:ShippingLabel 4.25 USD
Assets:Bank:Operating
document: "docs/labels/2025-07-12-order4321.pdf"

了解你的 Etsy 费用(美国)

要获得你的利润的真实情况,请在各自的费用账户中跟踪每种费用类型:

  • 上架费: 每件商品 0.20 美元,每 4 个月或售出后自动续订。(Etsy)
  • 交易费: 订单总金额(包括商品价格、运费和礼品包装)的 6.5%。(Etsy)
  • 支付处理费: 因国家/地区而异,但对于美国,通常是通过 Etsy Payments 处理的每笔订单 3% + 0.25 美元。(Etsy 帮助)
  • 订阅(Etsy Plus): 可选的每月 10 美元,用于其他工具。

销售税和合规性提示

  • 虽然 Etsy 会为大多数美国州代缴销售税,但请注意,在其他平台上销售或拥有实体工作室可能会产生额外的税务义务(“关联”)。仔细跟踪你的销售额门槛。
  • 一旦 1099-K 门槛适用于你的商店,请确保你在 Beancount 中的 Income:Etsy:Sales 总额与表格上的总金额精确到美分。(IRS)

常见陷阱(和修复方法)

  • 陷阱: 净存款会计。
    • 修复: 始终使用付款 CSV 将存款分解为总销售额、费用和储备金。
  • 陷阱: 过时的库存成本。
    • 修复: 在购买供应品和材料时立即将其记录为库存。不要等到成品售出后再记录。
  • 陷阱: 退款盲点。
    • 修复: 发出退款时,记录费用并冲销原始销货成本条目,将成本移回你的库存账户。
  • 陷阱: 忽略储备金持有。
    • 修复: 开设一个 Assets:Etsy:Reserve 账户来跟踪 Etsy 持有的资金。这可以使你的现金流量表保持诚实。

快速入门清单

  • 在你的商店管理器中,设置月报表并下载你的第一个 CSV。
  • 克隆 Beancount 入门存储库并草拟你商店的科目表。
  • 决定使用现金制还是权责发生制会计,并坚持下去。
  • 编写一个基本的导入器脚本或规则文件,并安排每周同步。
  • 每周一核对你的付款、库存水平和银行余额。
  • 每月生成一份损益表,并查看你的毛利率趋势。
  • 使用 Git 和异地存储解决方案备份你的 .bean 文件。

准备好将簿记融入你的创意工作流程了吗? 安装 Beancount,提交你的第一个条目,让纯文本的清晰度为你在工作台上腾出更多时间。祝你记账愉快!

在 Beancount 中管理应收账款

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

在个人理财管理的迷宫中,Beancount 作为纯文本记账的清晰度和精确度灯塔而出现。尤其在管理应收账款——即预期从他人处收到的款项——方面,Beancount 提供了一种结构化的方法,以使你的财务记录保持完美有序。本博客将引导你了解使用 Beancount 追踪应收账款、处理退款以及管理未解决交易的复杂性。无论你是退货、借出资金还是等待退款,本文都是你实现财务清晰的路线图。

理解 Beancount 中的应收账款:

2024-02-17-navigating-receivables-beancount-guide

应收账款代表他人欠你的款项。这可能来自多种情况,例如购物退货后等待退款,或者你借钱给某人。例如,假设你已将一条手表带退回给像 Amazon.com 这样的在线商店,并正在等待退款。在 Beancount 中,此交易记录为资金从你的信用卡负债转移到你的资产,作为应收账款:

2023-10-31 * "Amazon.com" "[Return] Watch Strap"
Liabilities:CreditCard:Chase -12.00 USD
Assets:Receivables

管理退款:

一旦退款处理完毕且你收到款项,就会记录另一笔交易以抵消应收账款中的余额。这确保你的账户反映资金已回到你手中:

2023-11-01 * "Amazon.com" "[Refund] Watch Strap"
Liabilities:CreditCard:Chase 12.00 USD
Assets:Receivables

完整的交易周期:

涉及应收账款的完整进出交易是结合上述两笔交易并展示如下,演示了退款后的平衡账户:

2023-10-31 * "Amazon.com" "[Return] Watch Strap"
Liabilities:CreditCard:Chase -12.00 USD
Assets:Receivables

2023-11-01 * "Amazon.com" "[Refund] Watch Strap"
Liabilities:CreditCard:Chase 12.00 USD
Assets:Receivables

处理未解决的交易:

对于尚未收到退款或还款的交易,Beancount 使用 #UNRESOLVED 标签。此标签有助于识别和追踪仍待处理的金额。例如:

2023-10-31 * "John Doe" "Lending Money" #UNRESOLVED
Liabilities:CreditCard:Chase -100.00 USD
Assets:Receivables

通过关注标记为 #UNRESOLVED 的交易,你可以快速确定哪些金额尚未结清。

保持零余额:

在一个正确的分类账中,资产:应收账款账户下所有交易的总和(不包括带有 #UNRESOLVED 标签的交易)理想情况下应归零。这确保所有预期资金都已入账,维护了你财务记录的完整性。

例如,一个有效的分类账可能如下所示,其中一笔未解决的交易清晰标记,等待结清:

2023-10-31 * "Amazon.com" "[Return] Watch Strap"
Liabilities:CreditCard:Chase -12.00 USD
Assets:Receivables

2023-11-01 * "Amazon.com" "[Refund] Watch Strap"
Liabilities:CreditCard:Chase 12.00 USD
Assets:Receivables

2023-10-31 * "John Doe" "Lending Money" #UNRESOLVED
Liabilities:CreditCard:Chase -100.00 USD
Assets:Receivables

无效的分类账是指某笔交易导致应收账款账户未能归零,因此需要 #UNRESOLVED 标签进行修正。

结论

在 Beancount 中管理应收账款不必令人生畏。通过清晰地了解如何记录交易、管理退款以及关注未解决的交易,你可以维护准确可靠的财务记录。采用 Beancount 结构化的应收账款管理方法,不仅简化了你的财务追踪,还带来了安心,因为你知道每一分钱都已入账。那么,何不利用 Beancount 的强大功能,让你的财务管理变得顺畅无阻呢?

自己动手 VS 聘请簿记员:面向成本意识创始人的 Beancount 攻略

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

作为创始人,你身兼数职——首席执行官、销售员、产品经理,当然还有簿记员。但随着业务的增长,花在核对交易上的时间开始感觉不像精明的节约,而更像是一种代价高昂的分心。那么,何时才是移交账簿的合适时机?

答案不在于放弃控制权;而在于做出数据驱动的决策。以下是如何使用你的 Beancount 账本来决定是继续自己动手还是聘请专业人士。

2023-09-03-diy-vs-hiring-a-bookkeeper-a-beancount-playbook-for-cost-conscious-founders

简而言之: 如果你以每小时 85 美元的价格计算你的时间,并且每月只花四个小时进行簿记,那么这项工作将使你损失 340 美元的收入。一个典型的远程簿记员起价约为每月 249 美元——此外,他们还可以让你腾出时间来真正发展业务。

1. 为你自己的时间定价

这个决定中最重要的指标是你自己的机会成本。你花在分类支出上的每一小时都是你没有花在销售、产品开发或战略上的时间。

计算方法很简单:

  1. 跟踪你每月花在簿记任务上的小时数(核对、编码、修复错误)。
  2. 将这些小时数乘以你的有效计费费率。
  3. 将该数字与外部簿记员的月费进行比较(典型的起价约为每月 249 美元)。

如果你的时间成本更高,那么你就有一个明显的委托优势。你甚至可以直接在 Beancount 中跟踪这一点。

; 跟踪你时间的机会成本
2025-07-31 * "七月簿记时间"
Expenses:Admin:BookkeepingTime 4.00 H ; 你自定义的小时单位
Equity:OwnerTime -340.00 USD
; metadata: rate:85

这里,H 是“小时”的自定义货币。你可以直接记录时间,并使用脚本或 price 指令来分配其美元价值,使你自己劳动力的成本成为财务报告的明确组成部分。

2. 计算自己动手的隐性成本

你的时间成本不是唯一的因素。自己动手簿记 carries risks that can be far more expensive than a monthly retainer.

  • 税务失误: 混乱的账簿对于税务筹划人员来说是一场噩梦。注册会计师可能每小时收费150-400 美元,仅仅是为了清理你的记录,然后才能开始报税。
  • 错失扣除额和 IRS 罚款: 小的、无意的错误——例如错误分类支出或忘记记录现金交易——会随着时间的推移而累积,导致罚款、利息和更高的税单。
  • 创始人倦怠: 深夜核对的 mental drag 是真实存在的。它会消耗应该专注于高 leverage 活动(如销售和产品创新)的精力和能量。

Beancount 缓解措施: 你可以通过添加 Git pre-commit 钩子来减少错误,如果 bean-check 失败或交易缺少类别标签,该钩子将拒绝提交更改。即使你感到疲倦,这也能强制执行纪律。

3. 簿记员(或 Beancount 纪律)省钱的三种方式

无论你是聘请专业人士还是仅仅提升你自己的流程,良好的簿记都会带来回报。

  1. 更清晰的税务申报: 有条理、准确的账簿意味着注册会计师花在清理上的时间更少,这直接转化为更低的账单。
  2. 实时现金洞察: 了解你的确切现金状况可以帮助你避免代价高昂的透支费用和对最后时刻高息融资的需求。
  3. 压力缓冲: 稳定、可预测的财务运营可以减少创始人的压力,从而带来更好的决策和更健康的企业文化。

4. 何时你不应该急于聘请

聘请簿记员并不总是正确的做法。在某些情况下,自己动手仍然是更明智的财务选择。

  • 你处于尚未创收或现金流极低的阶段。 在这个阶段,每一美元都应该用于销售和客户获取。首先专注于获得收入。
  • 你的财务状况很简单。 如果你只有一个银行账户、一个 Stripe 提要和每月少于 60 笔交易,你可能可以在一周内用不到一个小时的时间在 Beancount 和 Fava 中管理所有内容。

5. 混合选项:你的“簿记员就绪”Beancount 账本

最佳解决方案通常是混合解决方案。使用 Beancount 自己完成繁重的工作,但保持账簿干净,以便专业人士可以介入处理高价值的任务。

  • 自动化摄取: 设置 bean-extract 每晚运行,自动提取新交易。
  • 标准化你的会计科目表: 使用常规账户名称(Expenses:SoftwareAssets:Bank:Checking),以便任何专业人士都能立即理解你的账本。
  • 附加源文档: 对于超过 75 美元的每笔支出,使用 link: 元数据附加收据或发票的 PDF。
  • 遵循月度结算清单:
    1. 核对所有银行和信用卡账户。
    2. 运行 bean-check 以确保没有错误。
    3. 使用 bean-report balance_sheetbean-report income_statement 导出 PDF 报表。
  • 执行季度移交: 将 Git 标签或简单的存档(books-Q3-2025.tar.gz)交给你的簿记员或注册会计师。他们可以验证你的工作,添加复杂的调整分录(如应计项目和折旧),并准备税务包。

这种模式可以保持低成本,因为专业人士只接触干净的、经过审查的数据,而你仍然可以获得专业级财务报表的益处。

6. 快速决策矩阵

情况聘请专业人士坚持使用 Beancount(自己动手)
每月 >60 笔交易,每月经常性收入 >2 万美元
你每小时收费 100 美元以上,但每月在账簿上花费 3 小时以上
资金紧张,每月经常性收入 <5 千美元
你真心喜欢电子表格和自动化

7. 后续步骤

  1. 记录你的时间。 在你的下一个簿记环节中,跟踪你在上面花费的每一分钟。
  2. 计算数字。 将该时间乘以你的计费费率,并将其与上述市场费率进行比较。
  3. 选择你的路径。 使用混合模式加强你的 Beancount 工作流程,或开始面试能够轻松处理纯文本账本的簿记员。

无论哪种方式,有意的簿记总是比即兴发挥更便宜。以 Beancount 作为你不可改变的真相来源,你将确切地知道专业帮助何时会带来回报——以及何时不会。

企业与个人簿记:使用 Beancount 划清界限

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

一家蓬勃发展的公司和一个健康的钱包都有一个共同点:界限分明。

对于任何企业主,从自由职业者到成长型初创公司创始人,最关键的财务纪律之一就是严格区分企业和个人财务。混合资金——用你的企业账户购买杂货或用你的个人支票支付企业供应商——会造成混乱、不透明的财务状况。这不仅会招致税务机关的审查,还会让你无法清楚地了解公司的实际业绩。

2023-08-12-business-vs-personal-bookkeeping-with-beancount

幸运的是,像 Beancount 这样的纯文本会计系统提供了一个完美的框架,可以在你的账本中强制执行这些必要的界限。

为什么区分很重要

不区分你的财务状况不仅仅是一个坏习惯;它会带来重大风险,并掩盖有价值的商业情报。

  • IRS 的清晰度: IRS 不仅仅是建议你分开银行账户;他们强烈敦促你这样做。当企业和个人资金混在一起时,很难证明哪些支出是合法的企业扣除额。这种模糊性会导致你最好避免的问题和复杂性。
  • 审计风险: 混合交易是审计员的主要危险信号。如果你的账簿是一团糟的个人和企业活动的混合体,你就有可能被取消有效的扣除额,甚至面临处罚。一个干净、独立的账本展示了专业性,并使任何潜在的审计更加顺利,压力更小。
  • 更清晰的洞察力: 如果你的企业的现金流被个人支出所掩盖,你怎么能知道你真正的利润率呢?一个独立的企业账本可以让你清晰地了解公司的财务状况。你可以准确地跟踪收入、分析支出和计算税务负债,而不会受到个人财务生活的“干扰”。

主要区别一览

企业和个人簿记的目的、规则和结构根本不同。理解这些对比是维护准确记录的关键。

方面企业账簿个人账簿
目的跟踪收入、支出、资产和负债,用于税务和增长决策管理家庭预算和储蓄目标
税务规则必须遵循附表 C、1120‑S 或 1065;严格的扣除标准除基本记录保存外,几乎没有正式要求
账户权益、应付账款、应收账款、销售税、工资支票、储蓄、投资、贷款
所有者薪酬工资 (W‑2) 或通过权益提取的业主提款不适用——个人提款用于生活费用

Beancount 四步蓝图

Beancount 可以轻松地在你的两个财务世界之间建立一道坚固的墙。以下是一个正确的实用工作流程。

• 1 — 开设专用账户

在你写下第一个 Beancount 条目前,开设一个专用的企业支票账户和企业信用卡。这种物理上的分离是干净簿记的基础。完成后,在你的 Beancount 账本中反映这种结构。

2025-07-23 open Assets:Bank:Business   USD
2025-07-23 open Assets:Bank:Personal USD

这个简单的设置确保了从交易发生的那一刻起,每笔交易都可以清楚地分配给你的企业或个人财务。

• 2 — 记录所有者出资和提款

作为所有者,你将在你的个人资金和企业之间转移资金。这些不是收入或支出。相反,它们是通过权益账户跟踪的。

  • 出资: 当你将自己的资金 投入 企业以启动或弥补亏空时。
  • 提款: 当你从企业中 取出 资金用于个人用途时(这是许多个体经营者“支付”自己的方式)。
; 启动企业的注资
2025-07-23 * "所有者出资"
Assets:Bank:Business 10,000.00 USD
Equity:Owner:Contrib

; 取出现金用于个人生活费用
2025-08-05 * "业主提取租金"
Equity:Owner:Draw 2,500.00 USD
Assets:Bank:Business

通过将这些记录为权益交易,你可以确保它们不会错误地夸大你的企业支出或减少你报告的利润。

• 3 — 快速处理混合收据

错误是难免的。你可能会不小心用你的企业卡支付了个人晚餐。关键是在你的账本中立即更正它。不要删除交易;将其重新分类为所有者提款。

2025-08-07 * "用企业卡购买的个人杂货"
Equity:Owner:Draw 72.35 USD
Assets:Bank:Business

此条目正确反映了企业资金用于个人支出,将其视为你从公司取出的资金。这可以防止你意外地在税款中申报不可扣除的个人支出。

• 4 — 按计划对账和审查

一致性是你对抗混乱账簿的最佳防御措施。每周或每月留出时间来核对你的企业账户。使用 Beancount 的工具来确保你的账本与你的银行对账单相符,并审查你公司的业绩。

# 检查你的企业银行余额与你的对账单是否相符
bean-balance books.bean "Assets:Bank:Business"

# 生成损益表以审查盈利能力
bean-report books.bean income_statement -e 2025-08-31

这种定期审查的习惯满足了 IRS 的记录保存要求,并让你随时了解企业的财务状况。

税务注意事项

  • 预估税: 为了避免巨额税单,将你未来的税款视为一项持续的企业支出。创建负债账户(Liabilities:Tax:FederalLiabilities:Tax:State),并定期将每笔存款的一定比例转移到这些账户中。当季度付款到期时,现金已经到位。
  • 不可扣除的个人费用: 记住 IRS 的规则:企业支出必须对你的工作“普通且必要”。你的个人餐费、通勤费用和非企业订阅不符合条件,必须完全排除在企业的损益表之外。

快速入门清单

  • 开设仅限企业的银行和信用卡账户。
  • 使用 Assets:Bank:BusinessEquity:Owner:ContribEquity:Owner:Draw 构建 Beancount 科目表。
  • 决定你的会计基础(现金制或权责发生制),并在你的 Beancount options 中注明。
  • 立即将企业卡上的任何意外个人费用标记为 Equity:Owner:Draw
  • 每周对账;将你的 .bean 文件备份到私有的 Git 远程服务器。
  • 每月审查你的损益表、资产负债表和现金流量表。

底线: 分开资金,分开账本。Beancount 使你的企业和个人财务之间的界限明确——并且版本控制——因此你的企业始终处于审计就绪状态,而你的拿铁习惯除了你之外谁也不知道。祝你记账愉快!

解构 Beancount 账本:企业会计案例研究

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

在今天的博客文章中,我们将深入剖析一个专为企业设计的 Beancount 账本,帮助你理解这种纯文本复式记账系统的复杂细节。

解构 Beancount 账本:企业会计案例研究

我们先从代码开始:

2023-05-22-business-template

1970-01-01 open Assets:Bank:Mercury
1970-01-01 open Assets:Crypto

1970-01-01 open Equity:Bank:Chase

1970-01-01 open Income:Stripe
1970-01-01 open Income:Crypto:ETH

1970-01-01 open Expenses:COGS
1970-01-01 open Expenses:COGS:Contabo
1970-01-01 open Expenses:COGS:AmazonWebServices

1970-01-01 open Expenses:BusinessExpenses
1970-01-01 open Expenses:BusinessExpenses:ChatGPT

2023-05-14 * "CONTABO.COM" "Mercury Checking ••1234"
Expenses:COGS:Contabo 17.49 USD
Assets:Bank:Mercury -17.49 USD

2023-05-11 * "Amazon Web Services" "Mercury Checking ••1234"
Expenses:COGS:AmazonWebServices 14490.33 USD
Assets:Bank:Mercury -14490.33 USD

2023-03-01 * "STRIPE" "Mercury Checking ••1234"
Income:Stripe -21230.75 USD
Assets:Bank:Mercury 21230.75 USD

2023-05-18 * "customer_182734" "0x5190E84918FD67706A9DFDb337d5744dF4EE5f3f"
Assets:Crypto -19 ETH {1,856.20 USD}
Income:Crypto:ETH 19 ETH @@ 35267.8 USD

理解代码

  1. 开立账户:代码首先在 1970-01-01 开立了一系列账户。其中包括资产账户(Assets:Bank:MercuryAssets:Crypto)、权益账户(Equity:Bank:Chase)、收入账户(Income:StripeIncome:Crypto:ETH)以及费用账户(Expenses:COGSExpenses:COGS:AmazonWebServicesExpenses:BusinessExpensesExpenses:BusinessExpenses:ChatGPT)。

  2. 交易记录:接着,代码记录了 2023-03-01 至 2023-05-18 期间的一系列交易。

    • 2023-05-14 的交易表示从 Mercury Checking ••1234CONTABO.COM 支付了 17.49 美元。这笔交易被记录为一项费用(Expenses:COGS:Contabo),并相应地从 Assets:Bank:Mercury 账户中扣除。

    • 同样,2023-05-11 的交易表示从同一银行账户向 Amazon Web Services 支付了 14490.33 美元。这笔交易记录在 Expenses:COGS:AmazonWebServices 下。

    • 2023-03-01 的交易显示来自 STRIPE 的收入存入 Mercury Checking ••1234,总计 21230.75 美元。这笔交易被记录为收入(Income:Stripe),并增加到银行账户(Assets:Bank:Mercury)中。

    • 2023-05-18 的最后一笔交易代表一笔涉及客户 19 ETH 的加密货币交易。这笔交易记录在 Assets:CryptoIncome:Crypto:ETH 下。{1,856.20 USD} 显示了交易时 ETH 的价格,而 @@ 35267.8 USD 则指明了这笔 19 ETH 交易的总价值。

在所有交易中,都遵循了复式记账原则,确保 资产 = 负债 + 权益 的等式始终成立。

总结

这个 Beancount 账本提供了一个直接而强大的财务交易追踪系统。正如最后一笔交易所示,Beancount 足够灵活,可以核算加密货币等非传统资产,这证明了它在我们日益数字化的金融环境中的实用性。

我们希望这次剖析能帮助你更好地理解 Beancount 的结构和功能,无论你是经验丰富的会计师还是尝试管理个人财务的初学者。敬请关注我们的下一篇博客文章,届时我们将深入探讨 Beancount 的高级操作。

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 快乐!