5454 文字
27 分

Claude Opus 4.6 + ブラウザ自動操作で2025年確定申告:CSV解析・仕訳生成・MoneyForward入力・e-Tax送信

TL;DR#

  • 確定申告(青色・不動産所得+雑所得+株式分離課税)を AIエージェント主導 で完走
  • 人間(自分)の実作業は 約3.5時間(e-Taxバグ対応除く)
  • AIが経費の申告漏れや控除の見落としを的確に指摘してくれた
  • 使ったもの:Claude Opus 4.6 + AIエージェント基盤 + ブラウザ自動操作 + MoneyForward確定申告 + e-Tax
  • かかったコスト:MF月額 ¥380 + AI API 数千円程度

去年の記事:「あと少しのところまでできた」#

去年(2025年3月)、同じく確定申告のAI化を試みた記事を書いた。

去年のアプローチは Browser Use WebUI + OpenHands で、確定申告書等作成コーナーのUIをブラウザ自動操作で埋めようとした。結果は:

  • ダミーデータで所得入力ページまでは自動遷移できた
  • しかし 入力値が間違っている箇所が多い(指示した値と無関係な数字が入る)
  • 5回トライしても所得入力ページで停止してしまう
  • 結局、MFで帳簿を手動で作り、e-Taxのサイトでひとつずつ手入力した

去年の結論は「LLMが確定申告を行ってくれる未来はすぐそこに来ている」「来年にはできるようになっていそう」だった。

1年後の今年、本当にできた。


何が変わったのか:去年 → 今年#

去年(2025年3月)と今年(2026年3月)で何が違うのか。

  • LLM: GPT-4 / Claude 3 → Claude Opus 4.6
  • ブラウザ操作: Browser Use WebUI(Playwright)→ AIエージェント基盤のブラウザ自動操作(CDP直接操作)
  • データ入力: 国税庁サイトのUIを直接操作(失敗)→ MFにCSVインポート + ブラウザ操作で補完
  • 帳簿作成: 手動 → AIが約50件の複式簿記仕訳を自動生成
  • 税務判断: LLMに個別質問 → エージェントが文脈を保持して通しで判断
  • ファイル解析: なし → PDF OCR、CSV解析、XML解析
  • 結果: 所得入力で停止・手動完了 → e-Tax送信・納税まで完走

最大の違いは3つある。

1. マルチモーダル対応#

領収書の写真、ローン明細書の画像、過去の確定申告書PDFをそのまま渡せる。去年は全部人間がテキストに起こす必要があった。

2. ローカルファイルアクセス#

Google Driveにマウントした確定申告フォルダを直接読める。クレカCSV(Shift_JIS)も銀行CSVも、AIが自分で開いて解析する。去年はコピペでLLMに渡していた。

3. 常駐エージェント#

セッションを跨いで文脈が維持される。「あの物件の取得年は?」「さっき計算した利息は?」が全部記憶されている。去年は毎回ゼロから説明し直していた。


背景#

エンジニア歴20年超、個人で不動産複数物件を所有し、副業で広告収入・アフィリエイト・暗号資産の収入がある。確定申告は毎年それなりに複雑で、税理士に頼めば10〜20万円かかる規模感。

今年は AIエージェント(常駐型) を使って、人間はほぼ意思決定と認証操作だけ、という体制で挑んだ。


申告の規模感#

今回の確定申告の複雑さを伝えるために、項目だけ列挙する(金額は省略)。

所得の種類(6種類):

  • 給与所得(本業)
  • 不動産所得(複数物件・青色申告)
  • 雑所得-業務(広告収入、アフィリエイト複数社、コンサル、OSS)
  • 雑所得-その他(暗号資産・BTC売却益 + トークン損失相殺)
  • 株式譲渡所得(複数証券会社の損益通算)

経費の種類:

  • 不動産経費 9科目(利息、保険、減価償却、固定資産税、修繕費、外注費、車両費 等)
  • 雑所得経費 多数(通信費、クラウドサービス、AI利用料、消耗品 等)
  • 事業按分(項目ごとに異なる)

控除:

  • 社会保険料、iDeCo、生命保険料、医療費、ふるさと納税(複数自治体)

添付帳票:

  • 申告書(第一表〜第四表)、付表、青色申告決算書(一般用+不動産所得用)、計14枚

なぜ確定申告がこんなに面倒なのか#

所得が給与だけなら年末調整で終わる。しかし不動産所得、副業収入、株式譲渡、暗号資産が加わると、マイナポータル連携だけでは全然足りない。

今回の申告で扱ったデータソースを列挙する:

  • 源泉徴収票(PDF)
  • クレカ年間利用明細(CSV・Shift_JIS)
  • 銀行ローン返済明細(CSV × 2行・Shift_JIS)
  • 固定資産税の領収書(写真 × 6枚)
  • ローン残高証明書(画像)
  • 火災保険証券(XML)
  • ふるさと納税証明(XML)
  • 特定口座年間取引報告書(XML × 複数証券会社)
  • 生命保険料控除証明書(XML)
  • 過去の確定申告書(PDF × 2年分)
  • 暗号資産の取引履歴(取引所の画面)
  • アフィリエイト各社の報酬画面

これらを突合して、複式簿記の仕訳帳を作り、青色申告決算書を作り、申告書の各欄に正しい数字を入れていく。手作業でやると丸1日〜2日かかる。

今年のブレイクスルー:控除関連のデータがXMLで一通りダウンロードできるようになったこと。ふるさと納税、特定口座、生命保険料——これらがXMLだとLLMが構造的に読めるので、手入力が大幅に減った。


人間が事前に用意したデータ#

AIが勝手にデータを集めてくるわけではない。人間が各サービスからダウンロード・撮影して、Google Driveのフォルダに放り込むという下準備が必要。ここが実は一番時間がかかる。

Google Drive上に以下のフォルダ構成でデータを用意した:

tax/personal/2025 (R7)/
├── gensen/ ← 源泉徴収票(PDF)
├── credit_card/ ← クレカ年間明細CSV + 月別PDF×13ヶ月
│ ├── 2025.csv (Shift_JIS、全取引。事業按分の元データ)
│ └── pdf/ (月別利用明細PDF)
├── bank/ ← 銀行明細
│ ├── bank_a/ (ローン返済CSV + スクショ)
│ ├── bank_b/ (ローン返済CSV + スクショ)
│ ├── bank_c/ (入金確認用CSV)
│ └── bank_d/ (資金移動確認用CSV)
├── stock/ ← 株式
│ ├── broker_a/ (特定口座XML + PDF)
│ ├── broker_b/ (特定口座XML + PDF + 売買CSV + 米国株CSV)
│ └── exchange/ (暗号資産取引CSV)
├── token/ ← トークン取引(CSV + スクショ×4枚)
├── furusato/ ← ふるさと納税(XML)
├── Insurance/ ← 保険
│ ├── *.HEIC ×4 (生命保険料控除証明書の写真)
│ └── insurance_co/ (火災保険XML)
├── Loan/ ← ローン残高証明書(写真×2枚)
├── Tax/ ← 固定資産税の領収書(写真・複数自治体分)
├── iryouhi/ ← 医療費の領収書(写真×13枚 + Googleスプレッドシート)
├── ad_revenue/ ← 広告収入の支払い画面(スクショ)
├── affiliate_a/ ← アフィリエイトASP報酬(CSV×3)
├── affiliate_b/ ← アフィリエイトASP報酬(CSV)
├── consulting/ ← コンサル取引報告書(PDF×3)
└── zz submit/ ← 最終提出物(xtx, PDF, 証明書XML)

合計80ファイル超。 これを集めるのに人間が使った時間は約1時間(各サービスにログインしてダウンロード・撮影)。

ポイントは以下の4つ。

  • XMLで取れるものはXMLで取る(ふるさと納税、特定口座、保険)。LLMが構造的に読めるし、MFにそのままインポートもできる
  • CSVで取れるものはCSVで取る(クレカ明細、銀行明細、アフィリエイト報酬)。LLMがパースして集計できる
  • 紙の書類は撮影してHEICのまま放り込む(固定資産税、医療費、ローン証明書)。マルチモーダルLLMがそのまま読める
  • スクショで済むものはスクショ(広告収入の管理画面等)。PDF出力がない画面はこれで十分

去年との最大の違いは、写真やスクショをそのまま渡せるようになったこと。去年はこれを全部人間がテキストに起こしていた。クレカCSVも銀行CSVもShift_JISだが、AIが自分で文字コードを判定して読んでくれる。


構成#

ユースケース図#

使用ツール#

  • AIエージェント基盤: ツール実行、メモリ、セッション管理(ローカルマシン上で常駐)
  • Claude Opus 4.6: メインの頭脳(税務判断、計算、CSV解析、帳簿作成)
  • MoneyForward 確定申告: 複式簿記・決算書・申告書・xtx生成
  • e-Tax Web版: 電子申告の送信
  • ブラウザ自動操作(Chrome拡張): MoneyForwardのブラウザUI操作(CDP経由。e-TaxはSafari必須のため対象外)
  • pdfminer: 過去の確定申告書PDFからのデータ抽出
  • Google Drive: 源泉徴収票、ローン明細、保険証券等の原本保管

タイムライン:3日間の流れ#

Day 1(金曜夜)— データ収集・方針決定#

人間の作業:30分

人間がやったこと:

  • Google Driveの確定申告フォルダのパスを伝えた
  • 「2025年の確定申告やって」と指示
  • いくつかの質問に答えた(物件の取得年、法人との関係 等)

AIがやったこと:

  • Google Drive上の全資料を読み込み・分類
  • 源泉徴収票PDFの解析
  • クレカ年間CSV(Shift_JIS)の全明細読み込み・事業経費の候補抽出
  • 銀行CSV(複数行)からローン利息の集計
  • 過去の確定申告書PDF(直近2年分)をOCRで読み取り、過去の申告内容を把握
  • 収入源の一覧化と分類(給与/不動産/雑所得/株式/非課税の仕分け)

ここでのポイント:過去の確定申告書PDFを渡すこと。 これが最も重要な一手だった。AIは過去の申告書から所得の種類・経費科目・控除項目のスコープを自動的に把握し、「何を聞けばいいか」を理解する。これがないとAIはひとつずつ「不動産所得はありますか?」「株式は?」と質問してくる。過去の申告書があれば、AIが勝手に全体像を掴んでプランを立ててくれる。

Day 2(土曜)— 調査・計算・申告漏れの洗い出し#

人間の作業:30分

人間がやったこと:

  • 固定資産税の領収書を撮影してチャットに送った
  • 「このサブスクは個人利用」「通信費の按分率はこれで」等の判断
  • 経費項目の最終承認

AIがやったこと:

  • 複数物件の減価償却計算(耐用年数・取得価額・償却済み年数の調査)
  • 過去10年分の申告データと照合して未計上経費の発見(固定資産税が2年間未計上だった)
  • 領収書画像のOCR → 複数自治体の固定資産税を全期確定
  • 複数銀行ローンの金利変動を反映した利息再計算
  • 事業按分率の提案と計算
  • 法人→個人の請求書をPDF生成(管理委託料、車両使用料、修繕費)
  • 税額の段階的試算(経費を追加するたびに再計算)
  • 「外国税額控除は数千円の効果しかないのでスキップ」等の費用対効果判断

Day 3(日曜)— 帳簿作成・入力・提出#

人間の作業:2時間

人間がやったこと:

  • MoneyForwardのアカウント契約(¥380/月)
  • ふるさと納税XMLのアップロード(CDPの制約でAIからはファイルアップロード不可)
  • マイナンバーの入力
  • マイナンバーカード認証(QRコード読み取り)
  • e-Tax送信(Safari必須のためブラウザ自動操作不可)
  • クレジットカード納付

AIがやったこと:

  • MoneyForward用の仕訳CSV(約50件・複式簿記)を自動生成
  • CSVインポート後の補助科目10件をブラウザ操作で一括登録
  • 固定資産台帳の設定修正(不動産割合、事業供用開始日)
  • 重複仕訳の検出・削除(React fiber経由でのDOM操作)
  • 青色申告決算書の不動産収入内訳(複数物件)をブラウザ操作で入力
  • 給与、雑所得、暗号資産、控除(6種類)をブラウザ操作で入力
  • 株式(分離課税)のXMLインポート確認
  • 配偶者情報の入力
  • 最終チェック(PDFをOCR → 全項目を期待値と突合)
  • xtxダウンロード
  • xtxの最終チェック

AIがブラウザを操作する#

今回の肝は、AIがMoneyForwardのWebUIを CDP(Chrome DevTools Protocol)経由で直接操作 した点。

MFのUIはReact製のSPAで、普通のセレクタではうまく動かない箇所が多い。AIは以下のようなテクニックを自力で編み出して対処していた:

  • MUI Selectコンポーネント.MuiSelect-selectmousedown イベントを発火 → ドロップダウンが開く → .MuiMenuItem-root をクリック
  • React制御のinputHTMLInputElement.prototype.value の setter で値を設定 → input + change イベントを発火
  • 仕訳の削除:React fiber を辿って processing.dropdownMenu.onClickDeleteButton() を直接呼び出し

人間が手動でやれば30分の入力作業を、AIが試行錯誤しながら1〜2時間かけて自動化した。時間だけ見ると効率が悪いが、人間の手が空くのが重要。AIが入力している間、自分は別のことをしていた。


e-Tax Web版が動かない問題#

提出段階で最大のトラブルが発生。e-Tax Web版(clientweb.e-tax.nta.go.jp)にログインしても、メインコンテンツが完全に空白で何も操作できない。

e-Tax Web版がSafariで空白表示になった画面

Safari → ダメ。Chrome → ダメ。ポップアップ許可 → ダメ。

開発者ツールのコンソールを確認したところ、原因が判明した:

Failed to load resource: 404 (Not Found)
→ /nls/etaxweb_dlparts_en-us.js
Error: Could not load 'dojo.nls.etaxweb_dlparts_en-us'

e-Tax Web版はDojo Toolkit(JavaScriptフレームワーク)を使っていて、ブラウザの Accept-Language ヘッダーから言語を判定し、対応するNLS(National Language Support)ファイルを読み込む。しかし en-us 用のファイルが存在しない。

自分のMacは en-JP(英語UIで日本リージョン)に設定していたため、Dojoが英語リソースを探して404になり、画面描画が停止していた。

修正:

Terminal window
defaults write com.apple.Safari AppleLanguages '("ja-JP", "ja", "en-JP", "en")'

Safari再起動で即解決。確定申告期限前日に国税庁のUIバグで提出できないというのは洒落にならない。英語環境のMacユーザーは要注意。


AIによる申告漏れ・計上漏れの発見#

今回最も価値があったのは、AIが経費や控除の漏れを自発的に指摘してくれたこと。人間が「これ経費にできる?」と聞くのではなく、AIがデータを分析して「これ計上してないけど、経費にできるのでは?」と提案してくる。

AIが発見した主な申告漏れ・計上漏れ:

  • 過去に計上漏れしていた経費の発見:過去の確定申告書PDFと今年の経費を突合して、計上すべきだった経費の漏れを指摘。
  • 減価償却の状態整理:複数物件それぞれの取得年・構造・耐用年数を調べ、「この物件は償却完了済み、この物件はまだ残っている」と正確に仕分け。
  • 事業按分の提案:クレカCSVの全明細から事業関連の支出を抽出し、項目ごとに按分率を提案。
  • 経費の追加候補:「AI利用料(Claude/ChatGPT)は雑所得の経費にできる」「実験用機材の購入も消耗品費として計上可能」等、人間が見落としていた項目を提案。
  • 費用対効果の判断:「外国税額控除は数千円の効果しかないのでスキップ」「この控除証明書は自宅用で事業関係なし」等、やらなくていいことも明確にしてくれた。

これは税理士に頼んでも同じようなアドバイスをもらえるが、AIは全データを読んだ上で網羅的に指摘するので、見落としが少ない。しかもコストはAPI利用料数千円。


人間 vs AI の分担まとめ#

大きな流れはこうだ:

  1. 序盤(データ収集)→ 人間:各サービスにログインしてCSV・PDF・XMLをダウンロード、領収書を撮影してGoogle Driveに放り込む
  2. 中盤(帳簿作成・申告書入力)→ AI:仕訳の自動生成、MFへのブラウザ操作での入力、控除・経費の計算
  3. 終盤(提出・納税)→ 人間:e-Tax送信(Safari必須)、マイナンバーカード認証、納税

加えて、途中で「納税額の概算はいくら?」と聞けば即座に試算してくれるし、「この経費は計上してないけど入れたほうがいいのでは?」と申告漏れの候補を自発的に提案してくれる。これが税理士不要で数千円のAPI利用料で得られるのは非常に大きい。

具体的な分担は以下の通り。

  • 資料の収集・整理AI(ファイルシステム+PDF解析で自動化)
  • 経費の分類・按分率決定AI提案→人間承認(税務判断はAIが提案、最終判断は人間)
  • 帳簿(複式簿記)の作成AI(CSV自動生成 → MFインポート)
  • MFへの入力AI(ブラウザ操作)(CDP経由でReact UIを操作)
  • XMLデータのアップロード人間(CDPのセキュリティ制約でファイルアップロード不可)
  • マイナンバー入力人間(機密情報の直接入力)
  • 最終レビューAI(PDF OCRで全項目を期待値と突合)
  • e-Tax認証・送信人間(マイナンバーカード認証にSafariが必須のため、ブラウザ自動操作の対象外)

e-Taxへの送信直前。帳票14枚がすべて揃った状態

  • 納税人間(クレジットカード決済)

人間の実作業時間の内訳:

作業時間
データ準備(撮影・ダウンロード・Google Driveに保存)約1.5時間
AIとの対話(方針決定・承認・質問回答)約1時間
MoneyForward操作(契約・アップロード等)約0.5時間
e-Taxのデバッグ(言語設定問題の解決)約3時間
e-Tax送信・納税約0.5時間
合計約6.5時間

e-Taxのバグに3時間取られなければ約3.5時間で完了していた。


来年への改善メモ#

  1. MFの契約を忘れず解約する(毎年1ヶ月だけ契約)
  2. 納税方法の比較:クレカ納付の手数料 vs ポイント還元率を確認して選択(高還元率カードならクレカ有利)
  3. e-Tax Web版はSafariの言語設定を ja-JP にしてから使う
  4. ふるさと納税XMLのアップロードを自動化できるとさらに省力化
  5. 固定資産税の領収書は届いた時点で撮影・Drive保存を習慣化
  6. 開業届を検討:雑所得→事業所得への移行で損益通算が可能に

まとめ:去年の予言は当たった#

去年の記事の結論はこうだった:

LLMが確定申告を行ってくれる未来はすぐそこに来ている気がします。来年(2026年)にはできるようになっていそうな気がします。

1年でここまで変わった:

  • 帳簿作成: 手動 → AI自動生成(約50仕訳)
  • 申告書入力: 手動 → AI(ブラウザ操作)
  • 人間の作業時間: 2日3時間
  • AI活用度: 5%(仕訳の相談程度)→ 85%(データ収集→計算→入力→チェック→提出補助)

作業負担の割合:主従が逆転

去年は「AIに聞きながら人間が作業」。今年は「AIが作業して人間が承認」。主従が完全に逆転した。

AIエージェントを使った確定申告は、「AIに丸投げ」ではなく「AIが下準備・入力・チェックを担当し、人間は意思決定と認証だけ」という分業モデルだ。

一番面倒な「散在するデータを集めて、正しい科目に分類して、正しい金額を計算して、正しい欄に入力する」という作業がほぼ自動化できた。人間がやるのはマイナンバーカードをかざすことと、「これは経費?」「按分率は?」という判断だけ。

今年の実績:

  • 🕐 人間の作業時間:約3.5時間(e-Taxバグ除く)
  • 🤖 AIの稼働:データ収集→計算→入力→チェックを自動化
  • 💡 AIが発見した申告漏れ・計上漏れ:多数(経費計上漏れ、減価償却整理、経費追加候補 等)
  • 💸 コスト:MF ¥380 + AI API 数千円

確定申告は「毎年同じような作業を、微妙に変わるルールで、締め切りに追われながらやる」典型的なタスク。AIエージェントとの相性は非常に良い。

来年はもっと楽になるはず。(去年も同じこと言ってたけど、今年は本当にそう思う。)

Claude Opus 4.6 + ブラウザ自動操作で2025年確定申告:CSV解析・仕訳生成・MoneyForward入力・e-Tax送信
https://blog.teraren.com/posts/tax-return-with-ai-agent-2025/
作者
Yuki Matsukura
公開日
2026-03-17
ライセンス
CC BY-NC-SA 4.0
この記事が役に立ったら
GitHub Sponsorsで応援できます

コメント