メインコンテンツまでスキップ

「beancount」タグの記事が85件件あります

全てのタグを見る

Beancountで受取勘定をナビゲート

· 約4分
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

未解決取引の扱い:

返金や返済がまだ受領されていない取引には、#UNRESOLVED タグを付与します。このタグにより、未決済の金額を簡単に特定・追跡できます。例として以下をご覧ください。

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

#UNRESOLVED タグが付いた取引だけを抽出すれば、まだ決済されていない金額を迅速に把握できます。

ゼロ残高の維持:

正しい元帳では、Assets:Receivables 勘定下の全取引(#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 の力を借りて、財務管理をよりスムーズに実現しましょう。

DIY vs. ブックキーパー雇用: コスト意識の高い創業者のためのBeancountプレイブック

· 約6分
Mike Thrift
Mike Thrift
Marketing Manager

創業者として、CEO、営業、プロダクトマネージャー、そしてもちろん簿記担当というすべての役割を担っています。しかし、事業が成長するにつれて、取引の照合に費やす時間は、賢いブートストラップから高コストな妨げへと変わってきます。では、帳簿を手放すべきタイミングとは?

答えは「コントロールを手放す」ことではなく、「データに基づいた意思決定」を行うことです。Beancount の元帳を活用して、DIY を続けるかプロに委託するかを判断する方法をご紹介します。

DIY vs. ブックキーパー雇用のイメージ

TL;DR: 時給 85で自分の時間を請求でき、月に4時間だけ簿記に費やす場合、失われる売上は85 で自分の時間を請求でき、月に 4 時間だけ簿記に費やす場合、失われる売上は 340 です。一般的なリモートブックキーパーは月額約 $249 から始まり、ビジネス成長に専念できる時間を確保してくれます。

1. 自分の時間に価格を付ける

この判断で最も重要な指標は「機会費用」です。費用を分類するたびに、営業、プロダクト開発、戦略策定に使えない時間が生まれます。

計算はシンプルです:

  1. 毎月簿記業務(照合、コード付け、エラー修正)に費やす時間を記録する。
  2. その時間に自分の請求単価を掛ける。
  3. 外部ブックキーパーの月額料金(一般的な開始料金は $249/月)と比較する。

自分の時間コストが高ければ、明らかな委任の勝利です。Beancount でも直接追跡できます。

; Track the opportunity cost of your time
2025-07-31 * "July bookkeeping time"
Expenses:Admin:BookkeepingTime 4.00 H ; Your custom unit for hours
Equity:OwnerTime -340.00 USD
; metadata: rate:85

ここで H は「時間」のカスタム単位です。時間を直接記帳し、price ディレクティブやスクリプトでドル価値を割り当てれば、労働コストが財務レポートに明示的に反映されます。

2. DIY の隠れたコストを数える

時間コストだけが要因ではありません。DIY 簿記には、月額リテイナー以上に高額になるリスクがあります。

  • 税務ミス: 散らかった帳簿は税理士にとって悪夢です。CPA は記録を整えるだけで 150150–400/時間 を請求することがあります。
  • 控除漏れ・IRS 罰金: 経費の誤分類や現金取引の未記録など、小さなミスが積み重なると罰金や利息、税額増加につながります。
  • 創業者の燃え尽き: 深夜の照合作業は精神的負担です。営業やプロダクトイノベーションといったハイレバレッジ活動に割くエネルギーが奪われます。

Beancount の緩和策: bean-check が失敗したり、取引にカテゴリタグが付いていない場合にコミットを拒否する Git の pre‑commit フックを導入すれば、疲れていても規律が保たれます。

3. ブックキーパー(または Beancount の Discipline)が節約できる 3 つの方法

プロを雇うにせよ、プロセスを高度化するにせよ、良質な簿記は自己投資以上のリターンをもたらします。

  1. 税務申告がスムーズに: 整理された帳簿は CPA の作業時間を削減し、直接的にコストダウンに繋がります。
  2. リアルタイムの資金把握: 正確な現金ポジションが分かれば、過剰なオーバードラフト手数料や高金利の緊急資金調達を回避できます。
  3. ストレス緩衝: 安定した財務オペレーションは創業者のストレスを軽減し、意思決定の質と企業文化の健全化を促します。

4. まだ雇うべきでないケース

ブックキーパーの採用が常に最適とは限りません。場合によっては DIY が依然として賢い選択です。

  • プレ収益段階、またはキャッシュフローが極端にタイト。 この段階ではすべての資金を営業・顧客獲得に回すべきです。まずは売上を確保しましょう。
  • 財務がシンプル。 銀行口座が 1 つ、Stripe のフィードが 1 つ、月間取引が 60 件未満であれば、Beancount と Fava で週 1 時間未満で管理可能です。

5. ハイブリッドオプション: 「ブックキーパー対応」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 のようなアーカイブをブックキーパーや CPA に提供。彼らは作業を検証し、複雑な調整仕訳(未払費用や減価償却)を追加し、税務パッケージを作成します。

このモデルは、プロが「クリーンでレビュー済み」のデータだけに触れるためコストを抑えつつ、プロレベルの財務諸表の恩恵を受けられます。

6. クイック意思決定マトリクス

状況プロを雇うBeancount (DIY) を続ける
月間取引 >60 件、MRR > $20k
時給 $100+ で簿記に月 3 時間以上費やす
キャッシュが逼迫、MRR < $5k
スプレッドシートと自動化が好き

7. 次のステップ

  1. 時間を記録する。 次回の簿記作業で、費やしたすべての分をトラッキング。
  2. 数値を算出する。 その時間に自分の請求単価を掛け、上記の市場料金と比較。
  3. 道を選ぶ。 ハイブリッドモデルで Beancount ワークフローを最適化するか、プレーンテキスト元帳に慣れたブックキーパーの面接を始めるか。

どちらの選択でも、意図的な簿記は無計画にやるより常に安く済みます。Beancount を不変の真実のソースとして活用すれば、プロの支援が費用対効果を持つタイミングと、そうでないタイミングが明確に分かります。

ビジネスと個人の簿記:Beancountで明確な境界線を引く

· 約7分
Mike Thrift
Mike Thrift
Marketing Manager

繁栄する企業と健全な財布は共通点があります:境界線です。

ビジネスオーナーであれば、個人のフリーランサーから成長中のスタートアップ創業者まで、最も重要な財務規律のひとつはビジネスと個人の財務を厳格に分離することです。資金を混同すると—ビジネス口座で食料品を購入したり、個人の普通預金からビジネスベンダーに支払ったり—混沌とした不透明な財務状況が生まれます。これは税務当局からの監査リスクを招くだけでなく、会社の実際の業績に関する明確な洞察を奪います。

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

幸い、Beancount のようなプレーンテキスト会計システムは、台帳上でこれらの重要な境界線を強制するための完璧なフレームワークを提供します。

分離が重要な理由

財務を分離しないことは単なる悪習慣ではなく、重大なリスクを伴い、貴重なビジネスインテリジェンスを隠蔽します。

  • IRS Clarity: IRS は単に別々の銀行口座を持つことを提案しているだけでなく、強く推奨しています。ビジネスと個人の資金が混在すると、どの費用が正当なビジネス経費であるかを証明するのが困難になります。この曖昧さは質問や複雑さを招き、できるだけ避けるべきです。
  • Audit Risk: 取引を混在させることは監査人にとって大きな赤信号です。帳簿が個人とビジネスの活動で絡み合っていると、正当な控除が認められなくなったり、罰則を受けるリスクがあります。クリーンで分離された台帳はプロフェッショナリズムを示し、監査をスムーズかつストレスフリーにします。
  • Cleaner Insights: ビジネスのキャッシュフローが個人支出で曇っていたら、真の利益率を知ることはできません。単独のビジネス台帳は、会社の財務健全性をフィルタリングせずに提供します。収益、費用、税金負債を個人の「ノイズ」なしで正確に追跡・分析できます。

一目でわかる主な違い

ビジネス簿記と個人簿記の目的、ルール、構造は根本的に異なります。これらの対比を理解することが正確な記録維持の鍵です。

領域ビジネス簿記個人簿記
Purpose税務および成長の意思決定のために、収入、費用、資産、負債を追跡する家計の予算管理と貯蓄目標を管理する
Tax RulesSchedule C、1120‑S、または1065に従う必要があり、厳格な控除基準が適用される基本的な記録保持以外の正式な要件はほとんどない
Accounts資本、未払金、受取金、売上税、給与普通預金、貯蓄、投資、ローン
Owner Pay給与(W‑2)または資本を通じたオーナードロー該当なし — 個人の引き出しは生活費に充てられる

4ステップのBeancount設計図

Beancount は、2つの財務世界の間にしっかりとした壁を築くことをシンプルにします。以下は実践的なワークフローです。

• 1 — 専用口座を開設する

最初の Beancount エントリを書く前に、専用のビジネス普通預金口座とビジネスクレジットカードを開設してください。この物理的な分離がクリーンな簿記の基盤です。設定が完了したら、同じ構造を Beancount 台帳に反映させます。

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

このシンプルな設定により、取引が発生した瞬間からビジネスか個人かを明確に割り当てられます。

• 2 — オーナーの出資と引き出しを記録する

オーナーとして、個人資金とビジネス資金を行き来させます。これは収入でも費用でもなく、資本勘定で追跡します。

  • Contribution(出資): ビジネスを開始したり資金不足を補うために自分の資金をビジネスに投入する時。
  • Draw(引き出し): 個人利用のためにビジネスから資金を引き出す時(多くの個人事業主が自分に「給与」を支払う方法)。
; Capital injection to start the business
2025-07-23 * "Owner contribution"
Assets:Bank:Business 10,000.00 USD
Equity:Owner:Contrib

; Taking money out for personal living expenses
2025-08-05 * "Owner draw for rent"
Equity:Owner:Draw 2,500.00 USD
Assets:Bank:Business

これらを資本取引として記録することで、ビジネス費用が不当に膨らんだり、報告利益が減少したりすることを防げます。

• 3 — 混在した領収書を迅速に処理する

ミスは起こります。ビジネスカードで個人のディナー代を支払ってしまうこともあるでしょう。重要なのは、台帳ですぐに修正することです。取引を削除せず、オーナードローとして再分類します。

2025-08-07 * "Personal groceries on biz card"
Equity:Owner:Draw 72.35 USD
Assets:Bank:Business

このエントリは、ビジネス資金が個人支出に使われたことを正しく反映し、会社から引き出した資金として扱います。これにより、税務上控除できない個人費用を誤って請求することを防げます。

• 4 — スケジュールに沿って調整・レビューする

一貫性は乱雑な帳簿への最善の防御策です。毎週または毎月時間を確保し、ビジネス口座を調整してください。Beancount のツールを使って台帳が銀行明細と合致しているか確認し、会社のパフォーマンスをレビューします。

# Check your business bank balance against your statement
bean-balance books.bean "Assets:Bank:Business"

# Generate an income statement to review profitability
bean-report books.bean income_statement -e 2025-08-31

この定期的なレビュー習慣は IRS の記録保持要件を満たし、ビジネスの財務健全性を常に把握できるようにします。

税務上の考慮点

  • Estimated Taxes: 痛みを伴う税金請求を避けるため、将来の税金を継続的なビジネス費用として扱います。負債勘定(Liabilities:Tax:FederalLiabilities:Tax:State)を作成し、入金ごとに一定割合を移動させます。四半期ごとの支払いが必要になるとき、資金はすでに確保されています。
  • Non‑deductible Personal Costs: IRS のルールを忘れないでください:ビジネス費用は「業務上必要かつ普通」である必要があります。個人の食事、通勤費、業務外のサブスクリプションは該当せず、ビジネスの損益計算書から完全に除外しなければなりません。

クイックスタートチェックリスト

  • ビジネス専用の銀行口座とクレジットカードを開設する。
  • Beancount の勘定科目表を Assets:Bank:BusinessEquity:Owner:ContribEquity:Owner:Draw で構築する。
  • 会計基準(現金主義または発生主義)を決定し、Beancount の options に記載する。
  • ビジネスカードでの誤って個人利用した費用はすぐに Equity:Owner:Draw とタグ付けする。
  • 毎週調整し、.bean ファイルをプライベートGitリモートにバックアップする。
  • 毎月、損益計算書、貸借対照表、キャッシュフロー報告書を確認する。

Bottom line: お金も台帳も分ける。Beancount はビジネスと個人の財務の壁を明示的に、しかもバージョン管理された形で構築します。これにより、ビジネスは監査に備えられ、ラテの習慣はあなただけのものになります。Happy bean-keeping!

Beancountで不動産取引をモデル化する

· 約8分
Mike Thrift
Mike Thrift
Marketing Manager

不動産取引は、家族の生涯における最大の金融活動になることがあります。本稿では、Beancountで不動産をどのようにモデル化するかを解説します。私は不動産を資産として扱い、住宅の評価益を未実現利益とします。さらに、住宅ローンは負債としてモデル化し、利息は費用として扱います。

例として、A氏が2020年1月1日にカリフォルニア州XYZ市123 ABC Street(郵便番号12345)にある高級住宅を100万ドルで購入したとします。金利は3.0%、頭金は20%、ローン金額は80万ドルです。

項目金額
住宅ローン金額800,000
金利3%
住宅ローン期間30 years
住宅ローン総コスト1,478,219.62
月額支払額4,106.17
住宅保険1,300 per year (39,000 total)
固定資産税1,500 per year (7,500 total)
ローン完済2030-12-31
支払総利息678,219.62

2023-06-09-不動産追跡 住宅ローン詳細スクリーンショット

アカウント作成

まず、住宅を資産として扱います。資産として登録するためには単位を設定する必要があります。この場合、単位数量は1のみで、複数所有する可能性は低く、たとえn番目の住宅であっても別個の資産として記録したいと考えます。つまり、1つの住宅は1つの資産に対応し、この資産は特別な単位を持ち、その価値は 1 であるとみなします。

2020-01-01 open Assets:Home
2020-01-01 open Liabilities:Mortgage
2020-01-01 open Equity:Opening-Balances
2020-01-01 open Expenses:Interest
2020-01-01 open Expenses:Insurance
2020-01-01 open Expenses:Tax
2020-01-01 open Income:Gain
2020-01-01 open Assets:Cash
2020-01-01 open Liabilities:Credit-Card

ここでは、最初の行で住宅を表す商品単位を定義しました。4 行目で資産アカウントを定義し、先に定義した住宅の商品単位を保持します。5 行目で貸し手銀行のアカウントを定義しました。これは負債であるため、Liabilities カテゴリに属します。

購入

上記のようにアカウントを設定した上で、住宅の購入は次のように表せます。

borrowing money (debt) + spending money (down payment) = 1 house in asset

住宅購入時に最も重要な参照資料は、買主決済明細書(Buyer's Settlement Statement)であり、資金の流れが明確に示されています。

2020-01-01 open Assets:Home
2020-01-01 open Liabilities:Mortgage
2020-01-01 open Equity:Opening-Balances
2020-01-01 open Expenses:Interest
2020-01-01 open Expenses:Insurance
2020-01-01 open Expenses:Tax
2020-01-01 open Income:Gain
2020-01-01 open Assets:Cash
2020-01-01 open Liabilities:Credit-Card
2020-01-01 * "Buy house" "A氏が住宅を購入"
Assets:Home 1 Home @ 1,000,000 USD
Liabilities:Mortgage -800,000 USD
Assets:Cash:Bank1 -200,000 USD
Expenses:Interest 0 USD
Expenses:Insurance 0 USD
Expenses:Tax 0 USD

ここでは、住宅購入の取引を詳細に記述しています。いくつかの銀行から資金が流出し(頭金やその他費用に使用)、ローンが借り入れられ(負債が増加)、住宅が取得され(資産が増加)します。

住宅ローン返済

上記の購入記録に基づくと、現在800,000 USD の負債があります。金利があるため、米国のローンは元本と利息が均等に償却されることを考慮すると、月々の支払額は利息分と元本分に分かれます。初期段階では利息の割合が大きくなります。

ローン返済を記録するには、ローン銀行の明細を確認するだけです。毎月返済する元本額と残りの利息額を把握すればよく、利息は費用として計上します。

2025-01-01 * "Pay mortgage"
Assets:Cash:Joint -4,106.17 USD
Liabilities:Mortgage 3,106.17 USD
Expenses:Interest 1,000.00 USD

このエントリは、共同貯蓄口座から差し引かれる月々の住宅ローン支払を詳細に示しています。元本の返済は負債を減少させ、利息部分は費用として扱われます。

評価益

不動産の評価益を記録したい場合、別のアカウントを作成し(現在の不動産の評価益のみを記録)、住宅の価値が上昇または下落する可能性があるため、評価益はマイナスになることもあります。この方法の利点は、総資産のサマリーに取引時点の住宅価値と現在の評価益の2つのアカウントが含まれ、住宅のリアルタイム価格を反映できることです。

私はこの方法を採用しませんでした。その主な理由は以下の通りです。

  1. 現在の住宅価値はあくまで推定であり、参考程度にしかならず実務的価値が低い。通常は Redfin や Zillow といったウェブサイトで評価額を取得しますが、参考価値は高くないと考えています。また、リアルタイムで総資産に評価益を組み込むことは検討していません。

  2. 個人的には、住宅ローンが完済されるまでキャッシュフローがマイナスであれば、ある程度は資産ではなく負債とみなすべきだと考えます。そのため、資産に早期に組み込むと資産が実際以上に膨らんだように見え、評価益が錯覚を生むため、これを避けたいです。

私が不動産の評価益を記録する方法は、後述する RSU のモデル化でも使用します。この方法は仮想通貨単位を利用することです。基軸通貨が USD であると仮定し、USD.UNVEST(新たに Commodity を作成する必要はないようです)を用いて、この資産が特別な通貨で計算されることを示します。この資産の増減は USD で記録されません。これにより、住宅の評価益を記録しつつ、最終的な貸借対照表(Balance Sheet)には含めないという元々の目的を達成できます。

2025-01-01 price Assets:Home 1,400,000 USD.UNVEST

定期的に不動産の価格を USD.UNVEST で設定すればよいだけです。

したがって、Fava の Commodity ページでは住宅の基準価格の推移を追跡できますが、Balance Sheet ページでは住宅の価格は取引時点の価格のままです。つまり、総資産は当時の頭金と、返済し続けている元本の合計です。この資産の最終的な変化は住宅を購入したときにのみ起こります。

不動産価格チャートスクリーンショット

売却

まだ不動産が売却されておらず、中間の諸費用も不明なため、これは仮想シナリオです。

例えば、2025年1月1日に不動産の評価額が1,400,000ドルに上昇したとし、参考データは以下の通りです。

項目金額
残高1,300,000
仲介手数料(6%)78,000
その他クロージング費用2,000

A氏は不動産を売却することにし、最終的な売却価格は1,300,000ドルです。

2025-01-01 * "Sell house"
Assets:Home -1.0 Home @ 1,000,000 USD
Liabilities:Mortgage -800,000 USD
Assets:Cash:Bank1 200,000 USD
Expenses:Interest 100,000 USD
Income:Gain 0 USD
Assets:Cash:Bank2 1,300,000 USD

ここでは、5 年間のうち 2 年は自己居住と仮定し、評価益 500,000 ドルは課税対象外としています。数値はランダムに算出しています。最終的に A 氏の口座に入る金額は 418,343.8 ドルで、そのうち 200,000 ドルは当時の頭金、約 100,000 ドルは支払った利息です。したがって、帳簿上の利益は約 100,000 ドルとなります。計算は公平ではなく、実際には A 氏は 5 年間の家賃を節約しており、住宅の維持費やリフォーム費用など他の支出もあることに留意してください。

これを貸借対照表に反映させるには、以下のように価格を設定します。

2025-01-01 price Assets:Home 1,400,000 USD.UNVEST

Beancount における売掛金と買掛金の理解

· 約4分
Mike Thrift
Mike Thrift
Marketing Manager

皆さん、こんにちは!本日のブログでは、シンプルさとパワフルさで多くの人に愛されている複式簿記ツール Beancount の世界に迫ります。特に、重要な概念である 売掛金買掛金 の2つについて解説します。

これらの用語を正しく理解することは、Beancount(あるいは任意の複式簿記システム)を効果的に使う上で不可欠です。初心者の方でも安心してください。一つずつ丁寧に説明していきます。

売掛金と買掛金:基本

2023-05-30-receiveable-and-payable

会計において 「売掛金」「買掛金」 は、金銭の債権・債務を管理するための用語です。

  • 売掛金 は、他者が自分に対して支払うべき金額(受取債権)を指します。
  • 買掛金 は、自分が他者に対して支払うべき金額(支払債務)を指します。

例を見てみましょう。

  1. 売掛金(Accounts Receivable, A/R):書店を経営していて、顧客がクレジットで本を購入したとします。その本代金は顧客から受け取るべき「売掛金」になります。
  2. 買掛金(Accounts Payable, 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 USD をクレジットで購入したため、売掛金 が 100 USD 増加し、同時に 売上 が -100 USD(収益の減少)として記録されます。実際に現金が入ってきていないので、バランスが保たれます。

顧客が支払ったときは次のように記録します。

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

ここでは、銀行口座 に 100 USD が増え、売掛金 が同額減少します。

買掛金側(支払側)

買掛金も同様の原理ですが、符号が逆になります。

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

出版社からクレジットで本を仕入れたため、買掛金 が 200 USD 増加し、同時に 経費 が -200 USD として記録されます。

支払いが完了したら次のように記録します。

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

まとめ

売掛金と買掛金は、あらゆる会計システムの核となる要素です。正確に追跡することで、財務状態を包括的に把握できます。

ここで紹介したのは出発点に過ぎません。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 ••1234 から CONTABO.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 の取引総額を示しています。

すべての取引において、複式簿記の原則が維持されており、Assets = Liabilities + Equity の等式が常に成立することが保証されています。

最後に

この 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 ; Currency constraints

2015-04-23 close Assets:Checking

商品の宣言(オプション)

1998-07-22 commodity AAPL
name: "Apple Computer Inc."

価格

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

メモ

2013-03-20 note Assets:Checking "Called to ask about rebate"

ドキュメント

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

取引

2015-05-30 * "Some narration about this transaction"
Liabilities:CreditCard -101.23 CNY
Expenses:Restaurant 101.23 CNY

2015-05-30 ! "Cable Co" "Phone Bill" #tag ˆlink
id: "TW378743437" ; Meta-data
Expenses:Home:Phone 87.45 CNY
Assets:Checking ; You may leave one amount out

ポスティング

  ...    123.45 USD                             Simple
... 10 GOOG {502.12 USD} With per-unit cost
... 10 GOOG {{5021.20 USD}} With total cost
... 10 GOOG {502.12 # 9.95 USD} With both costs
... 1000.00 USD @ 1.10 CAD With per-unit price
... 10 GOOG {502.12 USD} @ 1.10 CAD With cost & price
... 10 GOOG {502.12 USD, 2014-05-12} With date
! ... 123.45 USD ... With flag

残高アサーションとパディング

; Asserts the amount for only the given currency:
2015-06-01 balance Liabilities:CreditCard -634.30 CNY

; Automatic insertion of transaction to fulfill the following assertion:
2015-06-01pad Assets:Checking Equity:Opening-Balances

イベント

2015-06-01 event "location" "New York, USA"
2015-06-30 event "address" "123 May Street"

オプション

option "title" "My Personal Ledger"

その他

pushtag #trip-to-peru
...
poptag #trip-to-peru
; Comments begin with a semi-colon

Beancountで実現するプレーンテキスト会計の魔法

· 約6分
Mike Thrift
Mike Thrift
Marketing Manager

Discover the Magic of Plain Text Accounting with Beancount

Beancountで実現するプレーンテキスト会計の魔法を発見しよう

Beancount.io バナー

はじめに

2023-04-18-introduction-to-beancount

会計がもはや困難な作業でなくなる世界へようこそ。今回は、強力で柔軟、かつ直感的なプレーンテキスト会計ツール Beancount をご紹介します。Beancount は、財務を透明でシンプルに管理できるアプローチを提供し、あなたが資金をコントロールできるよう支援します。

本ガイドでは、Beancount の基本を解説し、コアコンセプトを説明し、シンプルでありながら強力な機能をご案内します。この記事を読み終える頃には、Beancount の全体像が把握でき、財務生活を整理・分析する準備が整っているはずです。

Beancount とは?

Beancount は、Martin Blais が作成したオープンソースのプレーンテキスト会計システムです。John Wiegley の Ledger システムに触発され、個人や小規模事業の財務をプレーンテキストファイルで管理できる堅牢で信頼性の高い手法を提供します。Beancount を使えば、収入・支出・投資などを簡単に追跡できます。

なぜ Beancount なのか?

プレーンテキスト会計は、従来のスプレッドシートや専用ソフトに比べて以下のような利点があります。

  • 透明性:Beancount のファイルは人間が読める形式なので、財務データの理解や監査が容易です。
  • 柔軟性:好きなテキストエディタやバージョン管理システムを使って、ニーズに合わせて自由にカスタマイズできます。
  • ポータビリティ:デバイスを問わずアクセス可能で、システム間の移行や他者との共有も簡単です。
  • 将来性:プレーンテキストは普遍的に互換性があるため、技術が変化してもデータは残ります。

Beancount のコアコンセプト

Beancount を効果的に使うには、以下の概念を理解することが重要です。

  • 取引 (Transactions):収入、支出、口座間の振替など、財務イベントはすべて取引として記録されます。
  • 勘定科目 (Accounts):取引は資産、負債、収益、費用などの勘定科目に紐づきます。
  • 複式簿記 (Double‑entry bookkeeping):Beancount は複式簿記を強制し、すべての取引が借方と貸方でバランスします。
  • ディレクティブ (Directives):取引の定義や勘定科目のオープンなど、さまざまな財務イベントを指示するための構文です。

Beancount の始め方

以下の手順で Beancount を使い始めましょう。

  • Beancount をインストール:お使いの OS 向けインストール手順に従ってインストールします。
  • Beancount ファイルを作成:拡張子 .beancount のテキストファイルを作ります(例:my_finances.beancount)。
  • 勘定科目を定義open ディレクティブで取引に使用する勘定科目を作成します。
  • 取引を記録txn ディレクティブで財務取引を記録します。

あるいは https://beancount.io にサインアップしてください。以下はプレーンテキスト会計の例です。

例 1:基本的な取引

2023-04-01 open Assets:Checking
2023-04-01 open Expenses:Groceries

2023-04-10 txn "Grocery Store" "Buying groceries"
Assets:Checking -50.00 USD
Expenses:Groceries 50.00 USD

この例では、Assets:CheckingExpenses:Groceries の 2 つの勘定科目をオープンしています。2023 年 4 月 10 日に、食料品購入(50)を取引として記録し、Assets:Checking50)を取引として記録し、`Assets:Checking` が 50 減少(借方)し、Expenses:Groceries が $50 増加(貸方)します。

例 2:収入と支出の取引

2023-04-01 open Assets:Checking
2023-04-01 open Income:Salary
2023-04-01 open Expenses:Rent

2023-04-05 txn "Employer" "Salary payment"
Assets:Checking 2000.00 USD
Income:Salary -2000.00 USD

2023-04-06 txn "Landlord" "Monthly rent payment"
Assets:Checking -1000.00 USD
Expenses:Rent 1000.00 USD

この例では、Assets:CheckingIncome:SalaryExpenses:Rent の 3 つの勘定科目をオープンしています。4 月 5 日に給与 2,000を記録し、Assets:Checking2,000 を記録し、`Assets:Checking` が 2,000 増加(貸方)し、Income:Salary2,000減少(借方)します。46日に家賃2,000 減少(借方)します。4 月 6 日に家賃 1,000 を支払い、Assets:Checking1,000減少(借方)し、Expenses:Rent1,000 減少(借方)し、`Expenses:Rent` が 1,000 増加(貸方)します。

例 3:口座間の振替

2023-04-01 open Assets:Checking
2023-04-01 open Assets:Savings

2023-04-15 txn "Bank" "Transfer from Checking to Savings"
Assets:Checking -500.00 USD
Assets:Savings 500.00 USD

この例では、Assets:CheckingAssets:Savings の 2 つの勘定科目をオープンしています。4 月 15 日に、チェック口座から貯蓄口座へ 500を振替える取引を記録し、Assets:Checking500 を振替える取引を記録し、`Assets:Checking` が 500 減少(借方)し、Assets:Savings が $500 増加(貸方)します。

これらの例は、Beancount の複式簿記システムの基本概念を示しています。取引を正しく記録することで、財務活動の正確な記録を保ち、レポートを生成して財務状況を把握できます。

レポートの生成とデータ分析

Beancount には、バランスシートや損益計算書などの財務レポートを生成する強力なツールが同梱されています。また、Web ベースの UI である Fava を使えば、財務データを視覚化・操作できます。https://beancount.io は MIT ライセンスの下、Fava をベースに構築されています。

結論

Beancount でプレーンテキスト会計の力とシンプルさを体感してください。コアコンセプトを理解し、本ガイドの手順に従えば、個人や小規模事業の財務管理を容易かつ正確に行えるようになります。Beancount に慣れたら、さらに高度な機能やカスタマイズを探求し、独自のニーズに合わせたシステムを構築できます。

支出の追跡、将来の計画、財務習慣の洞察など、何を目指すにせよ、Beancount は柔軟性と透明性を提供し、目標達成をサポートします。その使いやすさから、Beancount は財務管理の在り方を変革し、あなたが財務の未来をコントロールできるようになるでしょう。

さあ、プレーンテキスト会計の旅に出発しましょう。煩雑なスプレッドシートや複雑なソフトウェアにさようならを告げ、Beancount の世界へようこそ。楽しい会計ライフを!

カスタムリンクとクエリでBeancount体験を向上させる

· 約4分
Mike Thrift
Mike Thrift
Marketing Manager

Beancount は、開発者やファイナンス好きに愛される二重仕訳会計システムで、シンプルさが魅力です。しかし、Fava(Beancount のウェブインターフェース)で、より細かい制御や高速なナビゲーションを求めるユーザーには、カスタムサイドバーリンクと SQL クエリがワークフローを次のレベルへ引き上げます。

このガイドでは、以下を実現する方法を紹介します。

  • Fava のサイドバーにクイックアクセスリンクを追加する
  • 高度なフィルタリングと分析のために SQL クエリを使用する
  • 月次レビューや異常検知のためにワークフローをカスタマイズする

なぜ Fava をカスタマイズするのか?

Fava はすでに美しい Ledger 表示インターフェースですが、ジャーナルが大きくなるにつれて、ショートカットやスマートクエリの必要性も高まります。

解決できる課題

  • 時間範囲を何度も手動で指定する手間
  • ネストされた勘定科目を横断する取引のフィルタリング
  • マイナス残高や異常を迅速に検出したい

✨ カスタムサイドバーリンク

まずは、シンプルなサイドバーショートカットで日々の作業を改善しましょう。これらのリンクは 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="

動作概要

  • Current Month:現在の月にフィルタされた取引ビューを開く
  • Last Month:前月に即座にジャンプ(月末レビューに最適)
  • Clear All:フィルタをリセットし、全エントリを再表示

これらのショートカットにより、手動で時間を入力する手間が省け、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 ではカスタムクエリへの直接リンクは作れませんが、以下の手順で月次レビュー習慣を構築できます。

  1. 「Current Month」リンクでレビューを開始
  2. 別ペインで保存済みクエリタブを開く
  3. まずフィルタを適用し、次にクエリで詳細分析

この組み合わせにより 異常を早期に捕捉 し、Ledger のクリーンさを維持 できます。

最後に

Beancount はミニマル設計ですが、こうした小さな拡張で効率は飛躍的に向上します。予算の見直し、奇妙な残高のデバッグ、クリック数の削減など、カスタムリンクと SQL クエリは「パワー」を増し「摩擦」を減らします。

ボーナス:もし Fava のカスタムレポート を利用しているなら、個人のファイナンス習慣に合わせたダッシュボードも構築可能です。

さあ、コントロールを手に入れましょう!

まずは小さく始めてみてください。 「Current Month」リンクを追加し、次に自分だけのクエリを作成。将来の自分が感謝するはずです。

もっとこうしたヒントが欲しいですか? ニュースレターに登録するか、Beancount.io で他のレシピを探索してください。

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] を試してください。