総勘定元帳とは何か: 構造、例、およびソフトウェアによるデータモデル
総勘定元帳の概要、勘定科目、取引、仕訳の相互関係、そして現代の会計ソフトウェアが元帳をデータとしてどのようにモデル化しているかについて解説します。
総勘定元帳(general ledger)とは、企業の帳簿に記録されたすべての取引の完全な記録であり、すべての勘定科目と、各勘定科目に計上されたすべての借方および貸方の履歴を網羅しています。貸借対照表(balance sheet)、損益計算書(profit and loss statement)、付加価値税(VAT)申告書など、そのすべてが総勘定元帳から集計されたビューにすぎません。総勘定元帳は数あるレポートの一つではなく、すべてのレポートがそこから算出されるデータセットそのものです。
構造: 勘定科目 → 取引 → 仕訳
総勘定元帳は、次の3つの階層で構成されています。
- 勘定科目(accounts) - 勘定科目体系(chart of accounts)によって定義される分類です。預金、売掛金、資本金、売上高、給与手当などがこれに該当します。各科目にはコード、名称、および区分(資産、負債、純資産、収益、費用)が割り当てられます。
- 取引(transactions) - 3月12日の請求書発行、3月15日の銀行振込といったビジネス上のイベントです。すべての取引には日付と摘要(description)が付与されます。
- 仕訳(entries) - 取引を構成する個々の明細行であり、特定の勘定科目に対する借方または貸方の金額を示します。1つの取引には最低2つの仕訳行が含まれ、借方と貸方の合計額は必ず一致します。これが複式簿記(double-entry bookkeeping)の原則です。
勘定科目の残高とは、その科目に計上されたすべての仕訳の合計額に他なりません。「なぜ売掛金が 9,300 € なのか」という疑問に対し、元帳はその金額を構成する具体的な請求書や入金のリストを提示して答えます。この分解可能性こそが元帳の本質的な特性であり、財務諸表上のすべての数値を個別の仕訳にまで遡って追跡することができます。
紙面における元帳勘定
従来の表現方法はT字勘定(T-account)です。売掛金(2410)の1ヶ月間の推移は次のようになります。
| 日付 | 摘要 | 借方 | 貸方 |
|---|---|---|---|
| 03-01 | 期首残高 | 4,200 | |
| 03-12 | 請求書 S-1041 | 1,210 | |
| 03-15 | 入金(請求書 S-1038) | 2,400 | |
| 03-28 | 請求書 S-1042 | 605 | |
| 期末残高 | 3,615 |
ここにある各行は、ある取引の一方の側面を示しており、もう一方は別の勘定科目のページ(請求書の場合は売上とVAT、入金の場合は預金)に存在します。このように単一の勘定科目の履歴を読み解くことは、「何が起きたのか」を把握するための最も早い方法であり、すべての会計システムが総勘定元帳の明細レポートを備えているのはそのためです。
補助元帳(サブレジャー): 詳細情報の分離
実務上、大量の明細データは補助元帳(subledger)に保持され、それが総勘定元帳に集計されます。売掛金補助元帳は顧客ごとの請求書を追跡し、買掛金補助元帳は仕入先ごとの請求書を追跡し、棚卸資産(inventory)補助元帳は品目ごとの数量と原価を追跡し、給与計算補助元帳は従業員ごとの金額を追跡します。総勘定元帳には統制勘定の合計(1つの売掛金残高、1つの買掛金残高)が保持され、補助元帳に内訳が保持されます。補助元帳の合計と統制勘定の残高が一致しない場合、一方には計上されてもう一方には計上されていない仕訳が存在することを意味しており、その差異の特定は会計期間(accounting period)を締めくくる際の定常業務となります。
ソフトウェアが元帳をモデル化する方法
専門用語を取り除けば、総勘定元帳はシンプルかつ厳格なデータモデルにすぎません。
accountsテーブル - コード、名称、種類、勘定科目体系における階層位置transactionsテーブル - 日付、摘要、ソースドキュメントへのリンクentriesテーブル - 取引ID、勘定科目ID、借方金額、貸方金額
これら以外の要素はすべて派生物です。残高は仕訳の合計であり、試算表(trial balance)はその合計を勘定科目ごとにグループ化したものであり、貸借対照表(balance sheet)は試算表を法定レイアウトにマッピングしたものです。優れた設計のシステムでは、仕訳テーブルを**追記専用(append-only)**として扱います。一度計上された仕訳が編集または削除されることはなく、修正が必要な場合は逆仕訳(reversing entry)を起票して行います。これこそが、元帳を書き換え可能なスプレッドシートではなく監査証跡(audit trail)たらしめる所以であり、帳簿の履歴そのものが帳簿の一部となります。
これはまさにNordletが採用しているモデリング手法です。勘定科目、仕訳取引、および仕訳明細は、ファーストクラスのAPIオブジェクトとして設計されています。POST /v1/ledger/accounts/list は勘定科目体系を返し、POST /v1/ledger/journal/transactions/create は貸借一致した取引を起票します(不一致の取引はデータが書き込まれる前に拒否されます)。また、売上請求書、仕入、給与計算、銀行インポートなどのあらゆるドキュメントは、設定可能なルールを通じて同一の元帳に仕訳を投稿します。参照側の機能としては、各種レポートが用意されています。POST /v1/reports/general-journal は取引を時系列でリスト化し、POST /v1/reports/gl-detail は前述の勘定科目ごとのビューを再構築し、POST /v1/reports/trial-balance はそれらを集計します。計上された仕訳は不変(immutable)であり、ロックされた期間に対して仕訳を起票することはできません。つまり、追記専用の元帳は単なる前提ではなく、システムによって強制されます。
総勘定元帳と仕分帳の違い
同じデータの異なる2つの並び順を指す2つの言葉です。**仕分帳(general journal)**は時系列順であり、すべての取引が発生した順に記録されます。**総勘定元帳(general ledger)**は、それと同じ仕訳を勘定科目ごとに整理したものです。歴史的にこれらは2冊の物理的な帳簿であり、転記とはその間を書き写す作業を意味していました。しかしソフトウェア上では、単一の仕訳テーブルに対する2つの異なるクエリにすぎません。この区別はデータ上ではなく、レポートの名称として今も残っています。
FAQ
総勘定元帳とは要するに何ですか?
企業のすべての勘定科目と、そこに計上されたすべての借方・貸方の履歴を網羅したマスター台帳です。財務諸表は作成されるものではなく、総勘定元帳から計算されるものです。
総勘定元帳と仕分帳の違いは何ですか?
同じ仕訳データを異なる順序で整理したものです。仕分帳は時系列順であり、元帳は勘定科目ごとにグループ化されています。現代のソフトウェアでは、どちらも単一のデータセットに対する異なるビューです。
補助元帳(サブレジャー)とは何ですか?
総勘定元帳の統制勘定に集計される詳細な帳簿です。売掛金残高の裏付けとなる顧客ごとの請求書、買掛金残高の裏付けとなる仕入先ごとの請求書、在庫の裏付けとなる品目ごとの在庫などがこれに該当します。これにより、総勘定元帳は簡潔さを保ちつつ、詳細情報もいつでも確認できるようになります。
総勘定元帳の仕訳は編集できますか?
適切に構築されたシステムではできません。計上された仕訳は追記専用であり、誤りがあった場合は逆仕訳を起票して修正するため、修正の事実自体も記録として残ります。計上された仕訳のサイレント編集を許容するシステムでは、信頼性の高い監査証跡を作成できません。
総勘定元帳の残高はどのように算出されますか?
残高は事前に保存されているわけではなく、その都度計算されます。勘定科目の残高とは、そこに計上されたすべての仕訳の合計額です。そのため、レポートに表示されるすべての数値を、それを生み出した個々の取引まで遡って検証することができます。