メインコンテンツへスキップ
Beancount.io LogoBeancount.io
YNAB → Beancount

YNAB CSV を Beancount に変換

YNAB のレジスターエクスポート(「Export Plan」または「Export Transactions」からの取引 CSV)を、複式簿記の Beancount 取引に変換します。Outflow 列と Inflow 列はすでにマッピングされています。

実際のYNABエクスポートに対して列マッピングを検証済み

YNABの取引をエクスポートする方法

  1. 1

    app.ynab.com の YNAB ウェブアプリからエクスポートします。iOS および Android アプリではプランをエクスポートできません。

  2. 2

    左サイドバーで「All Accounts」ではなく、対象の口座をクリックします。1 ファイルにつき 1 口座にすることで、台帳の整合性が保たれます。このコンバーターはすべての行を下記で指定した単一の口座に計上し、「Export Plan」はすべての口座を一度に出力するためです。

  3. 3

    必要に応じて検索ボックスや「View」の日付フィルターでリストを絞り込み、テーブルヘッダーのチェックボックスをオンにします。これで表示中のすべての項目が選択されます。

  4. 4

    アクションバーの「More」をクリックし、「Export # Transactions」を選択します。ダウンロードされるファイル名は「Selected Transactions for [plan name]…」です。

  5. 5

    テキストエディターで開き、ヘッダー行を含むすべてをコピーして、下のフィールドに貼り付けます。

金額列が 2 つあり、1 回のエクスポートですべての口座が含まれることがある

YNAB には符号付きの金額列がありません。Outflow は支出、Inflow は収入で、使われない側は空白ではなく「$0.00」と記載されます。そのため、「値がある列を取る」単純なインポートでは誤ります。このプリセットは両方をマッピングし、YNAB がすべての数値に付ける通貨記号($84.23、C$210.45、84,23€)を除去します。両方の列が $0.00 の行(通常は開始残高ゼロ)は、認識されない金額として報告され、符号を推測して黙って計上されることはありません。また、プラン全体のエクスポートはすべての口座をカバーするため、上記の口座別エクスポートを使用するか、貼り付け前にファイルを Account 列で分割してください。

Beancount 出力

CSVを貼り付けると、ここに取引が表示されます。

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はプレーンテキストの台帳をホストし、将来の明細を自動でインポートし、すべての数字を監査可能な状態に保ちます。

無料で始める