プレーンテキスト会計は複式簿記から語彙を借り、さらに Beancount 独自の言葉をいくつか加えています。この用語集では、これらのドキュメントやあなた自身の元帳ファイルを読むときに遭遇する用語を定義し、役立つ場合は短い例を添えています。各項目には独自のリンクがあるので、チームメイトに定義を直接示すことができます。
勘定科目 (Account)
勘定科目とは、一つの価値の流れを追跡する名前付きのバケツであり、Assets、Liabilities、Equity、Income、Expenses の 5 つのルートタイプのいずれかの下に、コロン区切りの階層として記述されます。この階層こそがあなたの帳簿の整理構造そのものです — Assets:US:BofA:Checking と Expenses:Food:Restaurant は自動的に分類され集計されます。すべての勘定科目は使用前に宣言されなければなりません。命名規則については Beancount Language Syntax を参照してください。
発生主義 (Accrual basis)
発生主義会計は、現金が実際に動いた時期に関係なく、収入はそれが稼得されたときに、費用はそれが発生したときに記録します。現金主義会計は逆で、お金が実際にやり取りされたときにのみ両方を認識します。発生主義はある期間の業績をより正確に映し出すため、3 月に送った請求書は、たとえ顧客が 5 月に支払っても 3 月に帰属します。
償却 (Amortization)
償却は、1 回の大きな支払いを、それが実際にカバーする期間にわたって配分し、各月がそのコストの公正な分担分を負担するようにします。1 月に支払った年間保険料は、1 月だけでなく 12 か月すべての費用です。Beancount では、分割したポスティングを手書きするか、プラグインで生成します — Amortize を参照してください。
残高照合 (Balance assertion)
残高アサーションは、ある勘定科目の残高が指定日の開始時点でどうなっていなければならないかを述べる balance ディレクティブであり、これにより銀行明細があなたの帳簿に対する自動チェックになります。計算された残高がアサーションの許容範囲を超えて異なる場合、Beancount は期待値と実際の金額を伴って大きなエラーを出します。その許容範囲は、あなたが書いた最後の小数点以下の桁の 1 単位です — 4.27 RGAGX は 4.26 から 4.28 までの任意の値を受け入れます — また通貨の前に ~ を付けると独自の許容範囲を設定できます。明細ごとに勘定科目ごとに 1 つアサーションを散りばめることが、元帳を信頼できる状態に保つ最も安価な方法です。
2026-01-01 balance Assets:US:BofA:Checking 4,321.00 USDBeancount
Beancount はオープンソースの複式簿記システムであり、その元帳は任意のテキストエディタで編集し、コマンドラインツールで検証するプレーンテキストファイルです。厳密で解析可能な構文、クエリ言語、ウェブインターフェースを提供し、データベースや独自のファイル形式を必要としません。元帳がテキストであるため、コードと並んで Git の中に気楽に置けます。Introduction to Beancount から始めてください。
Beancountクエリ言語 (BQL)
Beancount Query Language は、通常 BQL と略され、元帳に質問をするために使う SQL に似た言語です。データベースではなく解析済みのディレクティブに対して実行されるため、SELECT account, sum(position) WHERE year = 2026 はあなたが編集しているのと同じファイルから即座に答えます。完全な文法についてはクエリ言語ガイドをお読みください。
計上方法 (Booking method)
ブッキング方法とは、削減がどの既存ロットを取り崩すかを選ばなければならないときに Beancount が適用する規則です。Beancount 3.2.3 は 7 つの名前を受け入れます: STRICT(デフォルトで、自分でロットを特定する)、STRICT_WITH_SIZE、NONE、FIFO、LIFO、HIFO、AVERAGE。open ディレクティブで勘定科目ごとに設定するか、option "booking_method" でファイル全体に設定します。7 つのうち 6 つが実装されています: AVERAGE は解析されますが、削減をブッキングしなければならない瞬間に AVERAGE method is not supported を発生させます。選ぶ方法は実現したキャピタルゲインを変えるため、あなたの税務管轄が期待するものを選び、安定させておいてください。Inventory Management は同じロットに対して 7 つすべてを実行し、AVERAGE では失敗する元帳を公開しています。
勘定科目一覧 (Chart of accounts)
勘定科目表とは、あなたの元帳が使用する勘定科目の完全なリストと、それらを整理する構造です。Beancount には別個の勘定科目表ファイルはありません — open ディレクティブの集合がまさにあなたの勘定科目表です。早い段階でうまく設計しておけば、後の改名がずっと楽になります。出発点については業界別セットアップを参照してください。
解約指令 (Close directive)
close ディレクティブは、その日以降その勘定科目を使用できなくなる日付を記します。これにより、履歴を削除することなく、銀行口座や完済したローンを引退させることができます。過去のトランザクションは有効で報告可能なまま残り、新しいポスティングだけが拒否されます。使わなくなった勘定科目を閉じることで、元帳が古くなるにつれてレポートが読みやすくなります。
2026-03-31 close Assets:US:OldBank:Checking商品・通貨 (Commodity)
コモディティとは、あなたの元帳が追跡するあらゆる価値の単位です — USD のような通貨、AAPL のような株式のティッカー、BTC のような暗号資産、あるいは VACATION-DAYS のようにあなたが発明したものまで。Beancount はあなたの背後でコモディティ間の変換を決して行わないため、金額は常に、それが表示されているコモディティと対になった数値です。任意の commodity ディレクティブを使うと、名前や資産クラスなどのメタデータを添付できます。
原価基準 (Cost basis)
取得原価とは、保有資産に対して実際に支払った金額であり、支払いに使った通貨で記録され、所有している限りその保有資産とともに持ち運ばれます。Beancount では中括弧で記述します — 10 AAPL {150.00 USD} は 1 株 150 ドルで取得した 10 株を意味します。中括弧を二重にすると、その数値は単価ではなく合計額になるため、10 AAPL {{1,500.00 USD}} は同じロットを記録します。取得原価はポジションとともに移動するため、売却するとキャピタルゲインが算術から自然に導かれます。Inventory Management を参照してください。
指令 (Directive)
ディレクティブとは Beancount ファイル内の 1 つの命令であり、通常は日付を持ち、元帳はディレクティブで構成されています。日付を持つ種類は 12 あります: open、close、balance、price、note、document、pad、event、commodity、custom、query、そしてトランザクション自体です。日付を持たず、ある日ではなくファイルに対して作用するものもいくつかあります — option、include、plugin、そして pushtag/poptag のペアです。Beancount は処理前に日付付きのものを日付順に並べ替えるため、読みやすい順序で保つことができます。日付なしのものは書かれた場所で有効になります。
複式簿記 (Double-entry bookkeeping)
複式簿記とは、あらゆる経済的出来事を少なくとも 2 つの対応する記録として記録する慣行であり、それらのウェイトが常にゼロに合計されるようにします。お金は決して生み出されたり消滅したりせず、勘定科目間を移動するだけであり、だからこそこの技法は単一列のリストでは決して捕まえられない誤りを捕まえます。ウェイトとはポスティング自身の金額、またはそのコストや価格を 1 つの通貨に換算し戻したものであるため、異なるコモディティの 2 本の脚でも相殺されます。Beancount はこの規則を厳格に強制します: ポスティングが釣り合わないトランザクションは警告ではなくエラーです。
2026-03-02 * "Bank" "Buy euros"
Assets:US:BofA:EUR 100.00 EUR @ 1.08 USD
Assets:US:BofA:Checking -108.00 USD封筒予算 (Envelope budgeting)
封筒型予算は、使う前に目的のために資金を確保し、各カテゴリが 1 つのプールされた残高を巡って競合するのではなく独自の上限を持つようにします。その名前は、かつて給料日に人々が現金を入れた紙の封筒に由来します。プレーンテキストの元帳では、専用の勘定科目や予算ディレクティブで封筒をモデル化します — Budgets を参照してください。
Fava
Fava は Beancount のウェブインターフェースです: チャート、貸借対照表、損益計算書、クエリエディタ、入力フォームを、あなたの元帳ファイルから提供します。読み取り中心でローカルに動作するため、記録方法を変えずに帳簿の見え方を変えます。beancount.io は独自のツール群とともにマネージド版をホストしています。UI Features ガイドではそこでできることを説明しています。
在庫 (Inventory)
インベントリとは、ある勘定科目が現在保有するポジションの集合であり、各ポジションは独自のコモディティと、該当する場合は独自の取得原価および取得日を持ちます。同じ株式を 3 回買った証券口座は、1 つの混ざった数値ではなく、1 つのインベントリ内に 3 つの別々のロットを保有します。ロットを区別しておくことが、正確なゲイン計算を可能にします。
仕訳帳 (Journal)
仕訳帳とは、あなたの帳簿で起きたすべての出来事の時系列リストです — あらゆるグループ化や要約の前の、日付順に並んだ生のトランザクションの流れです。「3 月に実際に何をしたか?」に答えたいときにざっと目を通すビューです。Fava の仕訳帳ページは通常、誤って分類されたエントリを見つける最速の場所です。
台帳 (Ledger)
元帳とは、1 つの実体の会計記録の完全な集合であり、Beancount ではあなたのプレーンテキストファイル(およびそれがインクルードするもの)を意味します。この言葉は、帳簿全体の名前としても、ファイル自体の名前としても使われます。テキストであるため、元帳はソースコードのように差分を取り、レビューし、ブランチを切り、マージできます。
ロット (Lot)
ロットとは、コモディティの特定の 1 回の取得であり、その取得原価と取得日によって識別されます。同じ ETF を 1 月に買い、6 月にまた買うと 2 つのロットが生まれ、後で売却するときはどのロットを売るかを選ぶことになります。ロットは、Beancount が実現ゲインを概算ではなく正確に計算できる理由です。
2026-06-15 * "Broker" "Buy VTI"
Assets:US:Broker:VTI 5 VTI {260.00 USD, 2026-06-15}
Assets:US:Broker:Cash -1,300.00 USD摘要 (Narration)
ナレーションとは、トランザクションが何のためのものかを説明する自由記述であり、トランザクション行の 2 番目の引用文字列として書かれます。これは人間のためのものです: 「Monthly rent」、「Groceries and household」。Beancount はこれを解析しませんが、6 か月後にそのエントリがもはや意味をなさなくなったときにあなたが読むものになります。
開設指令 (Open directive)
open ディレクティブは、勘定科目、それが使用可能になる日付、そして任意でそれが保有できるコモディティとそれが使うブッキング方法を宣言します。Beancount はすべての勘定科目がその最初のポスティングの前に開かれることを要求し、これによりタイプミスが黙って真新しい勘定科目を作り出すのを防ぎます。許可されるコモディティを制限すると、さらに別の種類の誤りがエラーになります。
2026-01-01 open Assets:US:Broker:VTI VTI "FIFO"パッド (Pad)
pad ディレクティブは、ある勘定科目の次の残高アサーションを成功させるために必要な金額を Beancount に挿入させ、その差額を 2 番目の勘定科目にブッキングします。これはちょうど 1 つの仕事のために存在します: 何年もの履歴を再構築することなく、人生の途中から元帳を開始することです。その初期設定を超えてパディングすることは通常、実際の誤りが覆い隠されていることを意味します。
支払先 (Payee)
支払先とは、あなたが取引した相手であり、トランザクション行の最初の引用文字列として書かれます。支払先を一貫させておくこと — 常に "Whole Foods" とし、時々 "WholeFoods" とは決してしない — が、支払先ベースのレポートと自動インポーターを機能させる鍵です。Beancount は支払先を任意として扱います。トランザクションはナレーションだけを持つこともできます。
プレーンテキスト会計 (Plain-text accounting)
プレーンテキスト会計とは、人間が読めるテキストファイルに帳簿を置き、バージョン管理下で管理し、オープンソースのコマンドラインツールで処理する慣行です。ポイントアンドクリックのインターフェースを、耐久性、監査可能性、自動化と引き換えにします: あなたのデータはあらゆるベンダーより長生きし、あらゆる変更がレビュー可能な差分となり、あらゆるスクリプトがそれを読むことができます。Beancount、Ledger、hledger は最もよく知られた 3 つの実装です。
プラグイン (Plugin)
プラグインとは、あなたのファイルを処理する際に Beancount が読み込む Python モジュールであり、レポートが構築される前にディレクティブを追加、変換、検証できるようにします。プラグインは、コア言語を変えることなく、予測、償却スケジュール、カスタムチェックが実装される方法です。元帳の先頭に単独の plugin 行で有効にし、決して option では有効にしません — option "plugin" "…" は Option 'plugin' may not be set で拒否されます。Forecast Plugin ガイドが実例を順を追って説明します。
転記 (Posting)
ポスティングとは、トランザクションの 1 本の脚です: 1 つの勘定科目、1 つの金額、そして任意でコストまたは価格。トランザクション全体でゼロに合計しなければならないのは、生の金額ではなくそのウェイトです: 素の金額はそれ自身をウェイトし、10 FUND @ 38.46 USD は 384.60 USD をウェイトし、10 FUND {384.61 USD} は 3,846.10 USD をウェイトします。単一中括弧は 1 単位のコストを保持するからです。最大で 1 つのポスティングだけが金額を空白にでき、その場合 Beancount が釣り合わせる数値を計算します。完全なウェイト規則については Precision & Tolerances を参照してください。
価格指令 (Price directive)
price ディレクティブは、ある日付の 2 つのコモディティ間の為替レートを記録し、これにより Beancount はレポートで保有資産を市場価値に換算します。price ディレクティブは純粋な参照データです: お金を動かさず、どのトランザクションにも属しません。ポスティング内に書かれる @ 価格と混同しないでください。それは算術です — 10 FUND @ 38.46 USD に 384.60 USD のウェイトを与え、それによってトランザクションが釣り合うかどうかを決めます。price ディレクティブがなければ、ポートフォリオは依然として取得原価で釣り合いますが、市場価値で評価することはできません。
2026-06-30 price VTI 271.40 USDLive Prices は、ホストされた元帳内の対応資産についてマネージド価格ディレクティブを提供します。同じ日付とペアについては、逆のペアも含めて、あなた自身の価格が優先されます。後の日付のマネージド価格は、後の評価に依然として適用される可能性があります。
照合 (Reconciliation)
照合とは、あなたの帳簿が銀行や証券の明細といった外部の記録と一致することを証明する行為です。プレーンテキスト会計では、それは大部分が機械的です: 各明細日付に対して残高アサーションを追加し、数値が一致するかどうかをツールに告げさせます。毎月きれいに照合される元帳は、恐れることなく税金を申告できる元帳です。
タグとリンク (Tags and links)
タグとリンクは、勘定科目階層の外でトランザクションをグループ化するために添付する 2 つのラベルです: # を付けたタグは #trip-japan のようなテーマを示し、^ を付けたリンクは ^invoice-2026-014 のような関連するエントリを結びつけます。タグは「このカテゴリのすべてを見せて」に答え、リンクは「この 1 つの出来事に属するエントリを見せて」に答えます。両方とも Fava でフィルタ可能で、BQL でクエリ可能です — Filtering and Searching を参照してください。
取引 (Transaction)
トランザクションとは、日付のある経済的出来事と、それを記録するポスティングの組であり、あなたが最も頻繁に書くディレクティブです。それはフラグ(確認済みなら *、要レビューなら !)、任意の支払先、ナレーション、そしてウェイトがゼロに合計される 2 つ以上のポスティングを持ちます。Beancount ファイル内の他のすべては、トランザクションを宣言し、チェックし、注釈を付けるために存在します。
2026-02-14 * "Blue Bottle" "Coffee with Dana"
Expenses:Food:Coffee 9.50 USD
Assets:US:BofA:Checking -9.50 USDまだ言葉で詰まっていますか?Help Center はこのサイトのすべてのガイドを索引化しており、Cheatsheet は各ディレクティブの構文を並べて示しています。