Awesome Beancount
Beancountエコシステムへの厳選されたガイド。Beancountは、複式簿記の厳密さを備えた、シンプルでテキストベースの形式で財務を管理するための強力なオープンソース会計システムです。このページでは、コミュニティが厳選したリストとエコシステムの概要を1つの包括的なリソースにまとめています。
なぜプレーンテキスト会計なのか?
プレーンテキスト会計(PTA)は、シンプルなテキストファイルと強力なコマンドラインツールを使用して財務を管理する手法です。このアプローチにより、データの完全な所有権が得られ、長期的な保存が保証され、自動化や分析における比類のない柔軟性が提供されます。
- 公式PTAハブ: Plain Text Accounting
- やさしい入門書: Accounting for the simple minds with plain text accounting
- WebアプリからCLIへ: Command line accounting: From mint.com to Ledger
Beancountエコシステム
Beancountエコシステ ムは、コアエンジンを中心に構築されたツール、プラグイン、リソースの集まりです。各コンポーネントは、完全な財務管理ワークフローを作成する上で特定の役割を果たします。
1. コアエンジンと公式リソース
これらはBeancountの基盤となる要素であり、作成者および公式コントリビューターによって維持されています。
| リソース | 説明 |
|---|---|
| Beancount (コア) | 元帳ファイルを読み取り、複式簿記のルールを適用し、レポートを生成するエンジン。bean-checkやbean-formatなどの主要なコマンドラインユーティリティを提供します。他のすべてのツールはこの上に構築されています。 |
| ホームページ | beancount.github.io |
| ソースコード | github.com/beancount/beancount |
| ドキュメント | GitHub Pages および Google Docs |
| 外部の貢献 | コミュニティによる寄稿の公式リスト |
| Beanquery | 元帳に対して高度なクエリ(例:SELECT ... FROM ... WHERE ...)を実行し、カスタム分析を生成するための強力なSQLライクなクエリツール(v3)。 |
2. ユーザーインターフェース
これらのツールは、財務データの探索や編集のための視覚的なインターフェースを提供します。
| ツール | 説明 |
|---|---|
| Fava | Beancountのための決定版となるフル機能のWebダッシュボード。インタラクティブなチャート、ドリルダウンテーブル、ブラウザ内編集、および予算管理などの機能を追加するための拡張システムを提供します。 |
| Fava-GTK | Favaをラップし、シームレスなデスクトップ体験を提供するネイティブなGNOMEデスクトップアプリケーション。 |
| Beancount Mobile | 外出先で取引を追加するためのモバイルデータ入力アプリ。 |
| Beancount Telegram Bot | チャット経由で元帳に取引を素早く追加するためのTelegramボット。 |
3. 取引のインポート
インポートとは、金融機関のデータ(銀行のCSVやPDFなど)をBeancountの入力データに変換するプロセスです。
| ツール | 説明 |
|---|---|
| Beangulp (v3) | インポーターを構築するためのモダンでスタンドアロンなフレームワーク。Pythonスクリプト(プラグイン)を介して外部ファイルを処理し、Beancountディレクティブを生成します。 |
| Smart Importer | 機械学習を使用してインポーターを拡張し、カテゴリーを自動的に予測して割り当てるツール。 |
| Beancount Reds Ingestor | CSVおよびOFXファイルを処理するための共通ライブラリを備えたインポーターのコレクション。 |
| double-entry-generator | Alipay(アリペイ)やWeChat Pay(ウィーチャットペイ)などの中国のサービスに焦点を当てた、ルールベースのインポーター。 |
コミュニティ・インポーター(国別)
コミュニティによって維持されている、特定の銀行やサービスに対応した膨大なスクリプトのコレクション。
- 中国
- Alipay / 支付宝: deb-sig/double-entry-generator, wzyboy/importer
- 招商銀行 (CMB): デビットカード, クレジットカード
- WeChat Pay / 微信支付: deb-sig/double-entry-generator
- フランス
- Caisse d'Epargne: beancount-ce
- Boursorama, Amex: Beancount-myTools
- ドイツ
- コメルツ 銀行: beancount-commerzbank
- ドイツ・クレジット・バンク (DKB): beancount-dkb
- ING: beancount-ing
- N26: beancount-n26
- フォルクスバンク & GLS銀行: beancount-importer-volksbank
- インド
- SBI, BOI, Paytm, HSBC, ICICI: beancount-importers-india
- オランダ
- ABNアムロ銀行: beancount-abnamro
- スイス
- 全般: tariochbctools (BCGE, Neon, Raiffeisen, ZKB, Fidelity)
- Finpension: drnuke-bean
- PostFinance: tariochbctools, drnuke-bean
- イギリス
- Monzo, Revolut, Wise: Evernight/beancount-importers
- Revolut, Wise: tariochbctools
- アメリカ
- Amex, Chase, Citi, Schwab: mterwill/gist
- Capital One: mtlynch/beancount-capitalone
- Chase: mtlynch/beancount-chase-bank, ArthurFDLR/beancount-chase
- Clipper: beancount-clipper
- Mercury: mtlynch/beancount-mercury
- ブロックチェーン
4. エディタのサポートとツール
Beancountを開発環境に統合し、編集やメンテナンスを効率化するツール。
- IDEのサポート: 構文ハイライト、自動補完、リアルタイムの残高確認機能を提供するプラグイン。
- VSCode
- Emacs
- Vim
- Zed
- Sublime Text
- Atom
- Beancount Language Server(LSP互換エディタ全般用)
- 自動化とユーティリティ:
bean-add: コマンドラインから対話形式で取引を追加。beancount-black: Beancountファイル向けの構成の強い(opinionated)コードフォーマッター。beancount-categorizer: 正規表現ルールを使用して取引を自動的に分類。beanahead: 将来の取引を管理・予測。
- データ移行ツール: 他の会計システムからデータを変換するためのユーティリティ。
- GnuCashから: henriquebastos/gc-to-bc, dtrai2/gc-to-bc
- Ledger/hledgerから: travisdahlke/gist, zacchiro/ledger2beancount
- YNABから: hoostus/beancount-ynab
5. プラグイン(元帳拡張)
処理中に実行される元帳内Pythonモジュールで、カスタムルールの適用、取引の自動化、新機能の追加などを行います。
- 予算管理:
- fava-envelope: 封筒方式の予算管理のためのFava拡張。
- 自動化とチェック:
- autobean.share: 費用の分割と債務管理。
- autobean.sorted: 取引が時系列順に並んでいることを確認。
- beancount-checkclosed: 閉鎖された口座の残高がゼロであることを自動的にチェック。
- データ操作:
- autobean.narration: 取引の摘要(narration)を自動生成。
- beancount-lazy-plugins.filter_map: フィルタリングされた取引グループに操作を適用。
6. 価格ソース
投資価値を追跡するために、コモディティ、株式、通貨の過去および現在の価格を取得するスクリプト。
- beancount-exchangerates:
frankfurter.devなどの API を介した法定通貨用。 - pricehist: マルチソース価格取得ツール。
- beancount-cryptoassets: 暗号資産の価格取得用。
- tariochbctools: Interactive Brokers 用の価格ソースが含まれています。
学習 & コミュニティ
書籍 & 詳細ガイド
- Tracking Personal Finances using Python: Beancount を使用して個人資産管理システムを構築するための包括的なガイドを提供する書籍。 (ウェブサイト)
- 中国語ブログシリーズ (BYVoid): 第1部:なぜ? (Why?)、第2部:借方と貸方 (Debits & Credits)
厳選ブログ記事
- 英語
- フランス語
- 中国語
コミュニティ
- メーリングリスト: Google Groups (主要なディスカッションフォーラム)
- ライブチャット (IRC): web.libera.chat の #beancount
- Telegram (中国語): t.me/beancount_zh
商用サービス & アプリ
インフラを自分で管理することなく、Beancount のパワーを活用したいユーザー向け。
| サービス | 説明 |
|---|---|
| Beancount.io | Beancount と Fava のインスタンスをすぐに使える状態で提供する SaaS (Software as a Service) プラットフォーム。 iOS および Android 用の専用モバイルアプリも提供しています。 |
