跳到主要内容

35 篇博文 含有标签「会计」

查看所有标签

在 Beancount 中建模房地产交易

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

房地产交易可能构成一个家庭一生中最大的金融活动。本文解释了如何在 Beancount 中建模房地产。我将房地产视为一项资产,房屋的增值视为未实现收益。此外,抵押贷款被建模为负债,利息被视为费用。

假设 A 先生于 2020 年 1 月 1 日购买了一套位于 123 ABC Street, XYZ City, CA, 12345 的豪宅,价格为 100 万。利率为 3.0%,首付为 20%,贷款金额为 80 万。

项目金额
抵押贷款金额800,000
利率3%
抵押贷款期限30 年
抵押贷款总成本1,478,219.62
每月还款额4,106.17
房屋保险每年 1,300 (总计 39,000)
房产税每年 7,500 (总计 225,000)
贷款还清日期2049 年 12 月
已付总利息414,219.62

2023-06-09-房地产追踪

抵押贷款详情截图

创建账户

首先,我们将房屋视为一项资产。由于房屋被列为资产,它需要被赋予一个单位。在这种情况下,单位数量只有一个,不太可能出现多个,即使是第 N 套房屋,我们也会希望将其记录在单独的资产中。也就是说,一套房屋对应一项资产,并且这项资产有一个特殊的单位,其值只能是 1。

2019-12-31 commodity HOUSE.ABC
name: "123 ABC Street, XYZ City, CA, 12345"

2019-12-31 open Assets:Property:US:CA:123ABC HOUSE.ABC
2019-12-31 open Liabilities:Bank:US:SomeBank:Mortgage:Loan USD

在这里的第一行,我们定义了一个代表房屋的商品单位。在第四行,我们定义了一个资产账户,它持有之前定义为房屋的商品单位。在第五行,我们定义了一个贷款银行的账户。由于它是一项负债,因此属于负债类别。

购买

按照上述账户设置,购买房屋的行为等同于

借款(债务)+ 支出(首付)= 1 套房屋资产

购买房产时最重要的参考可能是买方结算声明,它清楚地列出了资金流向。

2020-01-01 * "Buying the house"
Assets:Property:US:CA:123ABC 1 HOUSE.ABC {1,000,000 USD}
Assets:Bank:US:SomeBankA -100,000 USD
Assets:Bank:US:SomeBankB -101,000 USD
Liabilities:Bank:US:SomeBank:Mortgage:Loan -800,000.00 USD
Expenses:Home:Insurance 1,000 USD
Expenses:Home:Mortgage:Loan:ClosingCost

在这里,我们详细说明了购房交易,其中资金从某些银行流出(用于首付和其他费用),获得贷款(增加负债),并获得一套房屋(增加资产)。

偿还抵押贷款

根据上述购买记录,我们目前欠款 80 万美元。由于利息的存在,并且考虑到美国所有贷款都是本金和利息均等摊销的,因此每月还款额包括一部分利息和一部分本金。在早期阶段,利息占大部分。

要记录贷款还款,你只需查看你的贷款银行对账单。你只需要知道每月偿还了多少本金,其余部分就是利息。利息被计为费用。

2020-02-01 * "Mortgage payment"
Assets:Bank:US:SomeBank:Saving:Joint -3,372.83 USD
Liabilities:Bank:US:SomeBank:Mortgage:Loan 1,376.26 USD
Expenses:Home:Mortgage:Loan:Interest

此分录详细说明了每月抵押贷款还款,该款项从你的联名储蓄账户中扣除。本金的偿还减少了负债,而利息部分则被视为费用。

增值

如果你想记录房产的增值,有些人会创建一个单独的账户,只记录当前房产的增值。考虑到房屋的价值可能会增加或减少,这种增值也可能是负的。这样做的好处是,在你的总资产汇总中,这两个账户都会被包含在内,一个用于记录交易时的房屋价值,另一个用于记录房屋当前的增值,从而反映房屋的实时价格。

我没有采用这种方法,主要原因如下:

  1. 房屋的当前价值只能是一个估算值,仅供参考,没有实际价值。通常,我只能在 Redfin 或 Zillow 等网站上获得房产估值,我个人认为其参考价值不高。我也没有考虑将这些增值实时纳入总资产。
  2. 我个人认为,在抵押贷款还清之前,如果房屋的现金流为负,某种程度上,该房产仍然是一项负债。因此,过早地将其纳入资产会给你一种资产丰富和增值的错觉,我个人希望避免这种错觉。

我用来记录房产增值的方法,稍后也将讨论如何建模 RSU。这种方法是使用一个虚拟货币单位。假设你的基础货币是美元,我们可以使用 USD.UNVEST(似乎没有必要为此创建一个新的商品)来表示该资产以特殊货币计算。该资产的增长或减少将不会以美元记录。通过这种方式,我可以实现我的最初目标,即记录房屋的增值,并且这种增值不会包含在最终的资产负债表(Balance Sheet)中。

2020-01-01 price HOUSE.ABC                          1,000,000 USD
2025-01-01 price HOUSE.ABC 1,400,000 USD.UNVEST

你只需要定期将你的房产定价为 USD.UNVEST。

因此,在 Fava 的商品页面上,你可以追踪房屋参考价格的趋势。但在资产负债表页面上,房屋的价格仍然是交易时的房屋价格。也就是说,你的总资产仍然是你当时的首付款,加上你不断偿还的本金。这项资产的最终变动只应发生在你购买房屋时。

房产价格图表截图

出售

由于尚未出售任何房产,且中间的各种杂费不明确,这是一个假设情景。

假设,在 2025 年 1 月 1 日,房产已增值至 1,400,000 美元,一些参考数据如下:

项目金额
余额709,656.20
代理费 (6%)72,000
其他过户费10,000

A 先生决定出售该房产,最终房屋售价为 1,300,000 美元。

2025-01-01 * "Selling the house"
Assets:Property:US:CA:123ABC -1 HOUSE.ABC {1,300,000 USD}
Liabilities:Bank:US:SomeBank:Mortgage:Loan 709,656.20 USD
Expenses:Home:Agent:Fee 72,000 USD
Expenses:Home:ClosingCost 10,000 USD
Expenses:Home:Tax 90,000 USD
Assets:Bank:US:SomeBankA

这里假设 5 年中有 2 年是自住的,因此 50 万的增值无需纳税。我在这里随机计算了一个数字。最终,进入 A 先生账户的资金是 418,343.8 美元,其中 20 万是当时的首付款,大约 10 万是已支付的利息。因此,最终 A 先生的账面利润约为 10 万。值得注意的是,我的计算不尽公平,毕竟 A 先生在这 5 年中节省了租金,而且房屋可能还有其他开销,例如维护、装修等。

为了在资产负债表中反映这一点,你可以添加此定价。

2025-01-01 price HOUSE.ABC                          1,300,000 USD

理解 Beancount 中的应收账款和应付账款

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

大家好!在今天的博客文章中,我们将深入探讨 Beancount 的世界,这是一款因其简洁和强大而备受推崇的复式记账工具。更具体地说,我们将讨论两个关键概念:应收账款和应付账款。

理解这些术语对于有效使用 Beancount(或任何复式记账系统)至关重要。但如果你是初学者,请不要担心——我们将一步一步地为你详细解释!

应收账款和应付账款:基础知识

应收账款和应付账款

在会计中,“应收账款”和“应付账款”是用于追踪欠款的术语。“应收账款”指他人欠你的钱,而“应付账款”指你欠他人的钱。

让我们举个例子:

  1. 应收账款 (A/R):假设你拥有一家书店,一位顾客赊账购买了一本书。他们欠你购买这本书的钱就是一笔应收账款。

  2. 应付账款 (A/P):另一方面,想象一下你从出版商那里订购了一套新书,但没有预先支付。你欠出版商的钱就是一笔应付账款。

在 Beancount 中,这些通常通过相应的账户进行追踪。这里的主要好处是,它能让你在任何时间点清晰准确地了解自己的财务状况。

在 Beancount 中设置应收账款和应付账款

你的 Beancount 文件结构可以根据你的需要简单或复杂。对于应收账款和应付账款,你可能希望在你的资产 (Assets) 和负债 (Liabilities) 部分下创建单独的账户。

这是一个简单的例子:

1970-01-01 open Assets:AccountsReceivable
1970-01-01 open Liabilities:AccountsPayable

追踪交易

收款方

设置好账户后,你可以追踪涉及应收账款和应付账款的交易。让我们看一个例子:

2023-05-29 * "Sold books to customer on credit"
Assets:AccountsReceivable 100 USD
Income:BookSales -100 USD

在这里,你将 100 美元添加到你的应收账款中,因为客户欠你这笔钱。同时,你将收入减少相同的金额以保持平衡(因为你尚未实际收到这笔钱)。

当客户最终付款时,你将这样记录:

2023-06-01 * "Received payment from customer"
Assets:Bank:Savings 100 USD
Assets:AccountsReceivable -100 USD

付款方

同样的原则也适用于应付账款,但符号相反:

2023-05-30 * "Bought books from publisher on credit"
Liabilities:AccountsPayable 200 USD
Expenses:BookPurchases -200 USD

当你还清债务时:

2023-06-02 * "Paid off debt to publisher"
Liabilities:AccountsPayable -200 USD
Assets:Bank:Checking 200 USD

总结

应收账款和应付账款是任何会计系统的核心。通过准确追踪这些,你可以全面了解自己的财务状况。

这只是一个起点,Beancount 的功能远不止于此。我希望这篇博客文章能帮助你澄清这些重要概念。一如既往,祝你记账愉快!

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

· 阅读需 4 分钟
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 速查表

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

账户名称示例

Assets:US:BofA:Checking

cheatsheet-en

账户类型

Assets          +
Liabilities -
Income -
Expenses +
Equity -

商品/货币

CNY, EUR, CAD, AUD
GOOG, AAPL, RBF1005
HOME_MAYST, AIRMILES
HOURS

指令

通用语法

YYYY-MM-DD <Directive> <Parameters...>

开立与关闭账户

2001-05-29 open Expenses:Restaurant
2001-05-29 open Assets:Checking USD,EUR ; 货币限制

2015-04-23 close Assets:Checking

声明商品/货币 (可选)

1998-07-22 commodity AAPL
name: "苹果电脑公司"

价格

2015-04-30 price AAPL   125.15 CNY
2015-05-30 price AAPL 130.28 CNY

备注

2013-03-20 note Assets:Checking "致电询问回扣事宜"

文档

2013-03-20 document Assets:Checking "path/to/statement.pdf"

交易

2015-05-30 * "关于此交易的描述"
Liabilities:CreditCard -101.23 CNY
Expenses:Restaurant 101.23 CNY

2015-05-30 ! "有线电视公司" "电话账单" #tag ˆlink
id: "TW378743437" ; 元数据
Expenses:Home:Phone 87.45 CNY
Assets:Checking ; 你可以省略其中一个金额

分录

  ...    123.45 USD                             简单
... 10 GOOG {502.12 USD} 带单位成本
... 10 GOOG {{5021.20 USD}} 带总成本
... 10 GOOG {502.12 # 9.95 USD} 带两种成本
... 1000.00 USD @ 1.10 CAD 带单位价格
... 10 GOOG {502.12 USD} @ 1.10 CAD 带成本与价格
... 10 GOOG {502.12 USD, 2014-05-12} 带日期
! ... 123.45 USD ... 带标记

余额断言与填充

; 仅断言指定货币的金额:
2015-06-01 balance Liabilities:CreditCard -634.30 CNY

; 自动插入交易以满足以下断言:
2015-06-01pad Assets:Checking Equity:Opening-Balances

事件

2015-06-01 event "location" "美国纽约"
2015-06-30 event "address" "梅街123号"

选项

option "title" "我的个人账本"

其他

pushtag #trip-to-peru
...
poptag #trip-to-peru
; 注释以分号开头

通过自定义链接和查询提升你的 Beancount 体验

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

Beancount,这个深受开发者和财务爱好者喜爱的复式记账系统,以其简洁性而强大。但是,对于那些希望在 Beancount 的网页界面 Fava 中获得更多控制和更快导航的用户来说,自定义侧边栏链接和 SQL 查询可以将你的工作流提升到新的水平。

在本指南中,我们将向你展示如何:

  • 在 Fava 的侧边栏添加快速访问链接
  • 使用 SQL 查询进行高级筛选和分析
  • 为月度审查或异常检测自定义你的工作流

为什么要自定义 Fava?

Fava 已经是查看你的 Beancount 账本的精美界面,但随着你的日记账不断增长,对更好快捷方式和更智能查询的需求也随之增加。

这解决了以下痛点:

  • 重复导航时间范围
  • 跨嵌套账户筛选交易
  • 更快地发现负余额或异常

✨ 自定义侧边栏链接

让我们从使用简单的侧边栏快捷方式改进你的日常工作流开始。这些链接会出现在 Fava 的左侧边栏,可以直接带你进入筛选视图,例如本月交易或上月收入。

将以下行添加到你的 Beancount 文件中:

2021-01-01 custom "fava-sidebar-link" "Current Month" "/jump?time=month"
2021-01-01 custom "fava-sidebar-link" "Last Month" "/jump?time=month-1"
2021-01-01 custom "fava-sidebar-link" "Clear All" "/jump?account=&time=&filter="

它们的作用:

  • 本月: 打开筛选到当前月份的交易视图。
  • 上月: 立即跳转到上个月——非常适合月末审查。
  • 清除所有: 重置筛选器,再次显示所有条目。

这些快捷方式消除了手动输入时间,让你的 Fava 体验更加流畅和个性化。

🔍 自定义 SQL 查询

为了获得更深入的洞察,Fava 的 SQL 界面功能强大得令人难以置信。这是一个查询,用于查找符合特定模式的账户中的所有负余额——非常适合标记异常或有问题的交易。

SELECT account, units(sum(position)), sum(position)
WHERE number(units(position)) < 0
AND account ~ '.*:BCM:.*'
AND date >= DATE(2021,12,9)
AND date < DATE(2022,1,9)

解析:

  • account ~ '.*:BCM:.*':筛选名称中包含 :BCM: 的账户。
  • number(units(position)) < 0:标记负余额(例如,预算超支)。
  • 日期筛选器将结果范围缩小到特定的 1 个月窗口。

用例:

  • 发现重复支出或错误过账等错误
  • 审计特定供应商或类别
  • 快速提取可操作的预算洞察

🛠 专业提示:结合链接 + 查询

虽然 Fava 不允许直接链接到自定义查询,但你可以通过以下方式养成每月审查的习惯:

  • 使用“本月”链接开始你的审查
  • 在另一个窗格中打开你保存的查询选项卡
  • 同时审查两者——先筛选,然后深入挖掘

这种组合有助于你在异常恶化之前发现它们确保你的账本保持整洁

总结

Beancount 的设计理念是极简,但像这些小小的增强功能却能带来巨大的效率提升。无论你是在审查预算、调试异常余额,还是仅仅为了节省点击次数,自定义链接和 SQL 查询都能为你提供更大的能力和更少的阻碍。

额外提示: 如果你正在使用 Fava 的自定义报告,你甚至可以构建完全符合你个人财务习惯的仪表板。

准备好掌控一切了吗?

从小处着手:添加“本月”链接。然后构建你自己的查询。未来的你会感谢你的。

想要更多此类技巧?订阅我们的新闻通讯或在 Beancount.io 探索更多 Beancount 秘籍。

Beancount 中未来交易的预测

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

Beancount 有一个插件可以预测未来的周期性交易。如何在 beancount.io 中应用它?将以下内容放入你的账本文件中。

; import the plugin
plugin "fava.plugins.forecast"

; add a monthly HOA fee
2022-05-30 # "HOA fee [MONTHLY]"
Expenses:Hoa 1024.00 USD
Assets:Checking -1024.00 USD

预测插件截图

2022-05-30-预测插件

然后,你将在净利润图表中看到预测结果。

预测插件

上面的标签 [MONTHLY] 意味着它将永久循环。如果你有更多条件需要应用,请尝试 [MONTHLY UNTIL 2022-06-01][MONTHLY REPEAT 5 TIMES][YEARLY REPEAT 5 TIMES][WEEKLY SKIP 1 TIME REPEAT 5 TIMES]

Beancount 中的调整分录:月末财务核对

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

会计工作并不在最后一笔销售款到账时就结束了。为了真实了解你的业务健康状况,你需要进行月末财务核对。在每个期末,你都需要进行调整分录——对日记账进行调整,将收入和支出正确地归入相应的期间,并确保资产负债表的准确性。

在纯文本 Beancount 账本中,这些关键分录是透明的、版本可控的,并且易于审计,将繁琐的任务转化为清晰且可重复的流程。

2022-01-25-adjusting-entries-in-beancount-your-month-end-tune-up


为什么调整分录很重要

进行这些调整是健全会计的基础。它们确保你的财务报表准确可靠。

  • 权责发生制准确性: 调整分录是权责发生制会计的引擎。它们将收入和成本移至实际赚取或发生的期间,而不管现金何时易手。这满足了构成现代会计基础的核心收入确认配比原则AccountingCoach.com)。

  • 可靠的关键绩效指标: 关键绩效指标的质量取决于其背后的数据。只有在正确过账递延、应计和估计后,毛利率、净收入和现金流量预测等指标才能反映真实情况(Corporate Finance Institute)。

  • 清晰的审计线索: 明确的月末调整可以创建清晰的财务推理记录。这有助于审计员(以及你未来的自己)轻松追踪变化的内容和原因,从而建立对你数字的信心(Accountingverse)。


六个常见类别(附 Beancount 代码片段)

以下是六种最常见的调整分录类型,以及如何在 Beancount 账本中记录它们的示例。请注意使用 adj:"accrual" 等元数据,以便以后轻松查找和分析这些分录。

1. 应计收入

这是指你已赚取但尚未开具账单或收到付款的收入。

2025-07-31 * "咨询——7 月工时"
Assets:AccountsReceivable 12000.00 USD
Income:Consulting
; adj:"accrual" period:"Jul-25"

2. 应计费用

你已发生但尚未支付的费用,例如将于下个月收到的水电费账单。

2025-07-31 * "律师——7 月预付金"
Expenses:Legal 2500.00 USD
Liabilities:AccruedPayables
; adj:"accrual"

3. 递延(预收)收入

这适用于客户提前付款的情况。你将随着时间的推移确认已赚取的那部分收入。

2025-07-31 * "年度 SaaS 预付款(确认 1/12)"
Liabilities:UnearnedRevenue 833.33 USD
Income:SaaS
; adj:"deferral"

4. 预付(递延)费用

当你预先支付费用时(例如年度保险费),你每月将其一部分计入费用。

2025-07-31 * "保险——预付费用中的 1 个月费用"
Expenses:Insurance 400.00 USD
Assets:PrepaidInsurance
; adj:"deferral"

5. 折旧和摊销

此分录将长期资产(例如计算机或车辆)的成本在其使用寿命内进行分配。

2025-07-31 * "Mac Studio 折旧"
Expenses:Depreciation 1250.00 USD
Assets:Computers:AccumDepr
; asset_id:"MAC-03" adj:"estimate"

6. 坏账准备

你预计无法收回的应收账款的估计值,记为坏账费用。

2025-07-31 * "坏账准备金(应收账款的 2%)"
Expenses:BadDebt 700.00 USD
Assets:AllowanceForBadDebt
; basis:"A/R" rate:0.02 adj:"estimate"

可重复的工作流程

为了保持月末结算的高效性和无差错性,请采用一致的工作流程。

  • 使用单独的文件。 将一个期间的所有调整保存在一个位置,例如 adjustments-2025-07.bean。在你的主账本文件中,使用 include 指令将其最后导入。这可确保在生成最终报告之前应用调整。

  • 标准化你的元数据。 始终使用一致的元数据键和值,例如 adj:"accrual|deferral|estimate"period:"Jul-25"。这使得查询和审查特定类型的调整变得轻而易举。

  • 运行预检。 在将更改提交到 Git 之前,对你的调整文件运行 bean-check 以捕获任何拼写错误或不平衡的过账。

  • 执行单行健全性检查。 此查询确认你该期间的所有调整是否平衡,让你确信没有引入错误。

    bean-query main.bean "SELECT account, SUM(number) WHERE meta('adj') AND meta('period') = 'Jul-25' GROUP BY account"

快速故障排除技巧 🤔

  • 你的 Liabilities:UnearnedRevenue 余额是否不断攀升? 检查你的合同里程碑。与你交付的工作相比,你确认收入的速度可能太慢。

  • 你的 Assets:PrepaidInsurance 余额是否为负? 你可能以比资产计划允许的速度更快的速度将其计入费用。仔细检查你的摊销计划。

  • 你的平均收款期 (DSO) 在应计后是否变得更糟? 你的应计收入可能掩盖了潜在的收款问题。将此 KPI 与应收账款账龄报告配对,以便在成为现金流问题之前发现逾期付款的客户。


结束语

调整分录可能会让人觉得乏味,但是当你比较“调整前”和“调整后”的损益表时,它们的价值就变得清晰可见——差异通常很大。使用 Beancount,这些调整变成了小的、可搜索的补丁,你可以像代码一样对其进行自动化和审查。

养成月末调整的习惯,你的数字将与你的工程一样准确。

祝你平衡愉快!

Beancount.io 革新个人财务管理

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

传统的 Beancount 用户通常使用命令行工具或在私有网络中自建服务器,他们必须通过电脑或移动设备上的通用文本编辑器进行操作。Beancount.io 通过提供开源的 Android 和 iOS 移动应用以及安全的云服务来减少这些麻烦,让你的账本现在只需轻点几下即可通过指纹访问。

Beancount 是一种计算机语言,可以在文本文件中实现复式记账。一旦你在文件中定义了财务交易,它就会生成各种报告。这种语言的设计者 Martin Blais 认为,命令行记账具有许多优点——它快速、便携、开放且可定制。

我们强烈认同这一观点,并分享 Beancount 语言所带来的赋能感。我们希望做得更多——将这项技术介绍给更多人。这意味着我们必须提高可用性,使其更容易被更广泛的用户群体所使用。

2022-01-08-instant-access-to-your-beancount-cloud-ledger-anytime-anywhere

并非每个人都是命令行爱好者,这就是我们构建 Beancount.io 的原因——一个面向所有人的个人财务管理器。它的工作方式如下:

对于繁重的工作,Beancount 用户仍然可以使用他们的电脑,通过浏览器访问 https://beancount.io 或与 Dropbox 同步来编辑或查看账本。这既保留了命令行工具的灵活性,又没有失去云端解决方案的跨设备访问能力。

对于日常轻量级操作,例如即时添加条目,Beancount 用户可以使用移动应用连接到安全云。

负责此产品的后端工程师 Mike Thrift 说:

我过去每天都会设置提醒,让自己打开笔记本电脑并将记录输入到我的 Beancount 文件中。现在,有了 Beancount.io,我可以在需要时更轻松地修改我的账本,即使我在户外商店购物时也能做到。

Facebook 软件工程师 Zhi Li 告诉我们:

我已经将我所有的 Beancount 文件迁移到 Beancount.io,现在它非常适合我的日常使用。我购买了自动数据备份等专业版功能,但我认为你们还可以做更多事情来改进服务。

你现在可以在 https://beancount.io/sign-up/ 注册,或下载 iOSAndroid 应用。我们简化了注册流程,尽可能少地收集你的信息来启动服务。然后你将获得一个预设的空账本,你可以立即添加条目。

常见问题

Beancount.io 会将我的账本数据出售给任何第三方吗?

  • 不会。我们致力于确保你的数据安全和隐私,我们绝不会出售你的账本数据。

我的数据安全吗?

  • 是的。我们使用 AES256 保护你的电子邮件和账本,使用 BCrypt 保护你的密码,并使用 SSL 保护你的网络请求。

我的账本数据是端到端加密的吗?

  • 不是。由于技术限制,在生产服务器中索引账本文件时,我们仍然必须将你的数据解密到内存中。因此,我们限制我们任何团队成员的直接访问。不幸的是,由于成本高昂,我们无法在 Intel 的 SGX 或任何安全保险库中实现这一点。

这是一项未来几年我可以信赖的可靠服务吗?

  • 是的。我们最初于 2019 年 7 月 4 日推出了 Beancount.io,并且我们已经安全可靠地运营该服务两年多了。因此,我们没有理由不继续在未来提供服务。

我可以请求新功能并赞助项目吗?

Beancount 引入多文件支持

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

自二月份以来,我们的许多客户一直在询问如何向一个账本添加多个文件。他们需要文件结构来归档或分类交易。因此,经过几个月的工作,我们很高兴地宣布此功能已免费发布。

以下是使用方法:

文件 > 创建新文件

2021-09-24-multi-file-one-ledger

前往左侧导航栏中的文件编辑器选项卡。然后,点击“文件”下拉菜单并选择“创建新文件”。

文件 > 创建新文件

命名新文件

为你的文件指定一个有效的文件名并保存。所有文件名必须以“.bean”结尾。

命名新文件

包含文件

这是一个关键步骤,你必须在 main.bean 中包含新创建的文件。

例如,如果你添加了 stock.bean,则在 main.bean 中指定 include "stock.bean"

包含文件

刷新并导航到文件

刷新页面,你将看到文件出现在“文件”下拉菜单中。

刷新并导航到文件

重命名或删除文件

导航到文件后,你可以在“编辑”下拉菜单中重命名或删除它。

重命名或删除文件

遇到问题?

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

Fava 升级至 1.19 版本:主要变更与改进

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

我们已将 MIT 许可的开源软件 Fava 升级至 1.19 版本。以下是自上次更新以来的变更内容:

  • v1.19 (2021-05-18)
    • conversioninterval 选项迁移至 default-page 选项
    • 添加选项 invert-income-liabilities-equity
    • 升级至 CodeMirror 6
    • 新增保加利亚语翻译
    • 其他小改进和错误修复
  • v1.18 (2021-01-16)
    • 一些小改进和各种错误修复。

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

2021-07-16-upgrade-fava-to-1-19

有疑问?我们会在 https://t.me/beancount 等你 :)