YNAB CSV を Beancount に変換
YNAB のレジスターエクスポート(「Export Plan」または「Export Transactions」からの取引 CSV)を、複式簿記の Beancount 取引に変換します。Outflow 列と Inflow 列はすでにマッピングされています。
実際のYNABエクスポートに対して列マッピングを検証済み
YNABの取引をエクスポートする方法
- 1
app.ynab.com の YNAB ウェブアプリからエクスポートします。iOS および Android アプリではプランをエクスポートできません。
- 2
左サイドバーで「All Accounts」ではなく、対象の口座をクリックします。1 ファイルにつき 1 口座にすることで、台帳の整合性が保たれます。このコンバーターはすべての行を下記で指定した単一の口座に計上し、「Export Plan」はすべての口座を一度に出力するためです。
- 3
必要に応じて検索ボックスや「View」の日付フィルターでリストを絞り込み、テーブルヘッダーのチェックボックスをオンにします。これで表示中のすべての項目が選択されます。
- 4
アクションバーの「More」をクリックし、「Export # Transactions」を選択します。ダウンロードされるファイル名は「Selected Transactions for [plan name]…」です。
- 5
テキストエディターで開き、ヘッダー行を含むすべてをコピーして、下のフィールドに貼り付けます。
金額列が 2 つあり、1 回のエクスポートですべての口座が含まれることがある
YNAB には符号付きの金額列がありません。Outflow は支出、Inflow は収入で、使われない側は空白ではなく「$0.00」と記載されます。そのため、「値がある列を取る」単純なインポートでは誤ります。このプリセットは両方をマッピングし、YNAB がすべての数値に付ける通貨記号($84.23、C$210.45、84,23€)を除去します。両方の列が $0.00 の行(通常は開始残高ゼロ)は、認識されない金額として報告され、符号を推測して黙って計上されることはありません。また、プラン全体のエクスポートはすべての口座をカバーするため、上記の口座別エクスポートを使用するか、貼り付け前にファイルを Account 列で分割してください。
Beancount 出力
YNABエクスポートに関する質問
YNAB 4 のエクスポートでも動作しますか?
いいえ。廃止されたデスクトップアプリは異なるファイルを書き出します。13 列(Check Number と末尾の Running Balance を含む)、通貨記号なし、Cleared は C、U、R で表され、Date 列の位置も異なるため、このプリセットでは誤ったフィールドを読み取ります。ヘッダーがウェブレジスターと一致するまで余分な列を削除するか、汎用コンバーターで列を手動でマッピングしてください。
エクスポートがカンマ区切りではなくタブ区切りです。壊れていますか?
いいえ。YNAB は、通貨が小数点区切りにカンマを使用するプランでは、CSV ではなく TSV を書き出します。金額内のカンマが列を分割しないようにするためです。コンバーターはタブ区切りを検出し、「84,23€」を正しく読み取ります。ファイルをそのまま貼り付けてください。これらのプランでは日付も日付先行(01.08.2026)で書き出されますが、コンバーターはドットからそれを検出します。
自分の口座間の振替はどのように処理されますか?
YNAB がエクスポートする文字列「Transfer : Savings」を支払先とする通常の取引として処理され、3 つのカテゴリ列は空のままになります。コンバーターはその片側しか見ないため、バランスを取る仕訳はカテゴリ口座に入ります。その仕訳を実際の口座(Assets:Savings)に指定すれば、振替が完了します。両方の口座をエクスポートした場合は、二重に変換せずに、ミラー行を削除してください。
変換した台帳をそのまま維持
Beancount.ioはプレーンテキストの台帳をホストし、将来の明細を自動でインポートし、すべての数字を監査可能な状態に保ちます。
無料で始める→