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

売掛金の理解(Beancount ガイド)

· 約9分
Mike Thrift
Mike Thrift
Marketing Manager

顧客に請求書を発行するビジネスを運営しているなら、誰がいくら支払うべきかを確実に把握できる仕組みが必要です。ここで登場するのが売掛金(AR)です。単なるレポート上の数字ではなく、キャッシュフローの命脈です。

本ガイドでは、売掛金とは何か、なぜ重要なのか、そしてプレーンテキスト会計システムである Beancount を使って正確かつ明快に管理する方法を解説します。

2025-08-12-understanding-accounts-receivable


TL;DR

売掛金(AR) は、すでに商品やサービスを提供したにもかかわらず、顧客がまだ支払っていない金額です。これは貸借対照表上の 流動資産 であり、発生主義会計の中心であり、ビジネスのキャッシュフローを左右する重要指標です。Beancount では顧客サブアカウントを使い、^links で請求書と支払いを紐付け、シンプルなクエリで管理できます。回収速度を測る指標として AR 回転率売上債権回転日数(DSO) を算出し、リスク管理には 貸倒引当金 を利用します。


売掛金とは?

定義
売掛金は、商品やサービスを提供したが顧客からまだ支払われていない金額の残高を表します。発生主義会計 では、現金の受領時ではなく、収益が発生した時点で認識します。その結果、売掛金は企業の貸借対照表上の 流動資産 として計上されます。

重要性
売掛金を効果的に管理することは、健全な流動性を保つ上で不可欠です。請求書の回収が早いほど、キャッシュコンバージョンサイクル(在庫やその他リソースへの投資が現金に変わるまでの期間)が短くなります。AR 回転率や DSO といった指標をモニタリングすれば、回収効率を可視化し、改善策を講じることができます。

売掛金と買掛金の一行比較

  • AR = あなたに対して 支払われるべき 金額(資産)。
  • AP = あなたが 支払うべき 金額(負債)。

ダブルエントリー会計における売掛金の流れ

概念的には、売掛金のライフサイクルは次のステップで構成されます。

  1. 請求書発行(クレジット販売):請求書を送付すると、資産(具体的には売掛金)が増加し、同時に Income(収益)を認識します。
  2. 現金回収:顧客が支払うと、Assets:Bank が増加し、Assets:AR が減少します。総資産への影響はゼロですが、現金ポジションが改善します。
  3. 割引またはクレジット:早期支払い割引やクレジットメモを発行した場合、顧客の売掛金残高を減らし、割引費用または収益の減少(contra‑revenue)で相殺します。
  4. 貸倒:すべての請求書が回収できるわけではありません。そこで 貸倒引当金(売掛金の価値を減少させる contra‑asset)と対応する 貸倒費用 を計上します。その後、特定の回収不能請求書を引当金から償却します。

Beancount での AR モデリング

Beancount はプレーンテキストのダブルエントリー会計システムで、売掛金の追跡に最適です。# で始まる タグ^ で始まる リンク、そして SQL ライクなクエリ言語 bean‑query により、AR プロセス全体を透明・監査可能・スクリプト化できます。

推奨アカウント構造

整然とした勘定科目表が基盤です。以下は一例です。

Assets:AR
Assets:AR:Clients:<Name>
Assets:AR:Allowance ; 貸倒引当金(contra‑asset)

Income:Sales
Income:Contra:SalesDiscounts ; 費用科目の代わりに使用できる

Expenses:SalesDiscounts
Expenses:BadDebt

1. クレジット販売(請求書発行)の記録

顧客に請求書を送付したら、以下のように記帳します。

2025-07-01 * "Acme Co." "Invoice 2025-045 · Web design" ^INV-2025-045 #ar #client:acme
invoice: "2025-045"
due: "2025-07-31"
document: "/invoices/2025/INV-2025-045.pdf"
Assets:AR:Clients:Acme-Co 1200.00 USD
Income:Sales -1200.00 USD
  • ^INV-2025-045 リンク は、将来の支払いとこの請求書を結びつける一意の識別子です。
  • document: メタデータ により、Fava(Beancount のウェブインターフェース)で PDF へ直接リンクできます。

2. 全額支払いの記録

Acme Co. が全額支払ったら、売掛金残高を消去します。

2025-07-25 * "Acme Co." "Payment for INV-2025-045" ^INV-2025-045 #ar
Assets:Bank:Checking 1200.00 USD
Assets:AR:Clients:Acme-Co -1200.00 USD

同じ ^INV-2025-045 リンクを使うことで、請求書と支払いを明確に結びつけた監査証跡が残ります。

3. 部分支払いの処理

部分支払いの場合も手順は同じです。リンクがすべてを結びつけます。

2025-07-20 * "Acme Co." "Partial payment INV-2025-045" ^INV-2025-045 #ar
Assets:Bank:Checking 400.00 USD
Assets:AR:Clients:Acme-Co -400.00 USD

^INV-2025-045 に対するクエリを実行すれば、元の 1200 USD の請求書と 400 USD の支払いが表示され、残高は 800 USD となります。

4. 早期支払い割引の処理

例として、1000 USD の請求書に対し 2% の早期支払い割引を提供した場合です。

2025-07-10 * "Acme Co." "2% early-payment discount on INV-2025-046" ^INV-2025-046 #ar
Assets:Bank:Checking 980.00 USD
Expenses:SalesDiscounts 20.00 USD
Assets:AR:Clients:Acme-Co -1000.00 USD

ここでは 1000 USD の売掛金を全額消し、980 USD の現金受領と 20 USD の割引費用を計上しています。注:多くの帳簿では割引を contra‑revenue として扱いますが、規模が小さい帳簿では費用科目で処理する方がシンプルです。手法は一貫して使用してください。

5. 請求書への消費税(売上税)付加

消費税を徴収する場合、請求時に負債として記録します。

2025-07-01 * "Acme Co." "INV-2025-047 · Hardware + tax" ^INV-2025-047 #ar
invoice: "2025-047"
due: "2025-07-31"
Assets:AR:Clients:Acme-Co 1100.00 USD
Income:Sales -1000.00 USD
Liabilities:Tax:Sales -100.00 USD

1100 USD を請求し、1000 USD を収益、100 USD を税務当局への負債として認識しています。

6. 貸倒処理(引当金法)

GAAP では、引当金法が推奨されます。これは費用と収益を適切にマッチさせる手法です。

ステップ 1:引当金の設定(例:期末)
過去データに基づき、一定割合を貸倒引当金として見積もります。

2025-12-31 * "Allowance for doubtful accounts (2% of AR)"
Expenses:BadDebt 300.00 USD
Assets:AR:Allowance -300.00 USD

これにより、総売掛金の帳簿価額が 300 USD 分だけ減額されます。

ステップ 2:個別の回収不能請求書を償却
回収不能が確定したら、引当金と相殺します。

2026-03-05 * "Write-off INV-2025-049 for Insolvent Client" ^INV-2025-049 #ar
Assets:AR:Allowance 1200.00 USD
Assets:AR:Clients:Insolvent-Client -1200.00 USD

この取引は費用に影響しません。費用は引当金設定時にすでに計上済みです。


最小限のレポートとクエリ

Fava や bean‑query を使えば、売掛金のスナップショットをすぐに取得できます。

顧客別未回収残高

SELECT account, SUM(position)
WHERE account '^Assets:AR'
GROUP BY account
ORDER BY account;

特定期間の AR アクティビティジャーナル

JOURNAL
WHERE account '^Assets:AR'
AND date >= 2025-07-01 AND date < 2025-08-01;

コア AR 指標(簡易計算式)

bean‑query で必要な数値(期間売上、期首・期末 AR 残高)を抽出し、スプレッドシートやスクリプトで計算すると、帳簿はシンプルに保てます。

AR 回転率

期間中に平均売掛金を何回回収したかを示します。数値が大きいほど好ましい

AR Turnover=Net Credit SalesAverage ARAR\ Turnover = \frac{Net\ Credit\ Sales}{Average\ AR}

DSO(売上債権回転日数)

売上が現金化するまでの平均日数です。数値が小さいほど好ましい

DSO=(Accounts ReceivableTotal Credit Sales)×Number of DaysDSO = \left(\frac{Accounts\ Receivable}{Total\ Credit\ Sales}\right) \times Number\ of\ Days

これらの指標で、請求書から現金への変換効率を把握できます。


シンプルな Beancount スターターファイル(コピー&ペースト)

; --- Accounts ---------------------------------------------------------------
1970-01-01 open Assets:Bank:Checking USD
1970-01-01 open Assets:AR
1970-01-01 open Assets:AR:Clients:Acme-Co
1970-01-01 open Assets:AR:Allowance
1970-01-01 open Income:Sales
1970-01-01 open Expenses:SalesDiscounts
1970-01-01 open Expenses:BadDebt
1970-01-01 open Liabilities:Tax:Sales USD
; ---------------------------------------------------------------------------

2025-07-01 * "Acme Co." "Invoice 2025-045 · Web design" ^INV-2025-045 #ar #client:acme
invoice: "2025-045"
due: "2025-07-31"
document: "/invoices/2025/INV-2025-045.pdf"
Assets:AR:Clients:Acme-Co 1200.00 USD
Income:Sales -1200.00 USD

2025-07-25 * "Acme Co." "Payment for INV-2025-045" ^INV-2025-045 #ar
Assets:Bank:Checking 1200.00 USD
Assets:AR:Clients:Acme-Co -1200.00 USD

運用上のベストプラクティス

  • 一貫したリンク付け:請求書と支払いは必ず ^ リンクで結びつけ、Fava で簡単に追跡できるようにします。
  • メタデータ活用document:invoice:due: などのメタ情報は、レポート作成や期日管理に非常に有用です。
  • 定期的なレビュー:月次または四半期ごとに bean‑query で AR 残高を抽出し、回転率・DSO を計算してキャッシュフローリスクを早期に検出します。
  • 引当金の適切な設定:過去の回収実績に基づき、合理的な貸倒引当金を設定し、予期せぬ貸倒損失を平準化します。
  • 自動化:スクリプトや CI パイプラインに bean‑query を組み込み、定期レポートを自動生成すると、手作業ミスを防げます。

まとめ

売掛金はキャッシュフローの血管です。Beancount のシンプルなテキストベースの構造を活用すれば、リンクとタグだけで請求書・支払い・割引・貸倒を一元管理できます。指標(AR 回転率、DSO、貸倒引当金)を定期的にモニタリングし、ビジネスの資金繰りを安定させましょう。


参考情報