消費税の税区分クイズを作り、仕訳の表記を4案で比べた記録(不課税を対象外にまとめた理由)
消費税の税区分クイズを作り、仕訳の表記を4案で比べた記録
消費税の経理処理のデータは、このサイトの側にある。 参考書から抜き出した仕訳を、論点ごとに一覧できるページだ。 仕訳の問題集のほうは別のアプリ(eurekapu-nuxt4)にあり、回答履歴と復習の仕組みがそろっている。
この日の昼前、2つのアプリのページと画面のキャプチャを貼って、Claude Code に依頼した。 消費税のデータを、回答履歴の残る問題集の側でクイズとして解ける形にする作業だ。
計画の段階でデータのずれが見つかった
Claude Code には、まず両方のアプリの作りを読ませてから計画書を書かせた。 データは作業用のディレクトリに置き、本番のビルドからは除外して、ローカル限定のページにする。 問題集の側に同じ形の前例があったので、それに合わせた。
計画書を Codex にレビューさせると、データの不一致を指摘された。 Claude Code に確かめてもらうと、指摘は2点とも当たっていた。
- 問題文は8%なのに、正解のキーが10%になっている問題がある
- 貸倒れの仕訳は税区分がすべて「対象外」で、どの欄を隠して問えばよいか決まらない
計画に反映して再レビューに回し、2回目で「実装に進めてよい」の判定が出た。 判断の要る項目が5つあり、回答フォームで答えた。 5つとも推奨案を選び、そのうち1つには「最終的には D1 にも残す」とコメントを添えた。
実装の途中で、正解が「対象外」の問題がほかに2問見つかった。 借方と貸方の欄がどちらも「対象外」なので、費用の側(借方の1行目)を隠すように個別に指定させた。
スマホ幅で貸方が切れた
実装は純粋関数とテストから始めさせた。 テストは28件が通った。 続いて、問題を解く画面と論点の一覧画面を作らせた。 一覧の見た目は、既存の仕訳問題集の一覧に合わせている。
ブラウザでの確認も Claude Code に回してもらった。 誤答に×が付くこと、正解なら解説が自動で開くこと、周回の最後に「間違えた問題だけ」で解き直せること。 再挑戦の動きも、仕訳問題集と同じだった。
引っかかったのは、390px のスマホ幅だ。 貸倒れの3行の仕訳を出すと、表が横にスクロールして、貸方の側が画面の外へ切れた。 そこで借方と貸方を別々の表に分け、狭い画面では縦に積むようにした。 元データにある金額0の埋め草の行も、借方と貸方のそれぞれで隠した。
回答履歴の ID も直した。
接頭辞を tax: で書いていたが、履歴の API が : を受け付けないので tax_ に変えた。
200問すべてを表示して確かめると、正解の欄を隠せないのは貸倒れの7問だけだった。
作業の途中で、追加で2つ頼んでいる。 正解なら解説を出さずに次へ進む「連続回答モード」と、そのモードで×のときは再挑戦させずに、すぐ正解と解説を出す動きだ。 どちらも、モードのオンとオフを切り替えながらブラウザで確かめてもらった。
「日本語で教えて」
完了の報告は英語で返ってきた。 途中経過のメッセージにも、英語が混じっていた。
「ごめん、日本語で教えて」と返した。 実装はできているはずだ。 次に要るのは、自分の手で触って確かめることになる。 だから、計画書の進捗を更新して、コミットとプッシュまで済ませるよう頼んだ。
コミットの直前に、別のセッションが未プッシュのコミットを3つ抱えていると分かった。 main をプッシュすると、それも一緒に出ていく。 Claude Code には、この作業のファイルだけをコミットさせた。 その過程で不具合も1つ見つかり、直してもらった。 復習の周回でシャッフルしてから「最初からもう一周」を押すと、9問すべてに戻らないというものだ。
会計ソフトAの書き方も書きづらい
その完了報告には、税区分の書き方を会計ソフトAに寄せる案も添えてあった。 会計ソフトAの書き方でいい、とまず返した。 ただ、会計ソフトAの表記も、正直かなり書きづらい。
決めきれなかったので、いくつか案を出させた。 縦でも横でもいいから、並べて比べられるようにしてほしいと頼んだ。
Claude Code には、推測で書かないよう、会計ソフトAとBの公式の税区分一覧を取りにいかせた。 リポジトリの中にも「課税仕入 10%(共通…)」のような会計ソフトA向けのデータがあり、その出どころも確かめさせた。 検討用の比較ページも Codex にレビューさせ、「致命的な問題なし」の判定を得た。
ページには、名前の付け方が4案並んだ。 回答欄で選んだのは D で、ふつうのことばで書き、その下に会計ソフトAの省略名を小さく添える案だ。
比べる過程で会計ソフトCも調べてもらうと、会計ソフトBとCはほぼ同じ書き方で、会計ソフトAだけが別の系統だと分かった。 最初に寄せようとした書き方は、3社の中で1社だけ違う系統だったことになる。
続けて、ボタンの下の小さい名前を会計ソフトごとに切り替えられるようにする提案が出た。 「y」とだけ返した。 会計ソフトBのヘルプページが 403 を返したので、r.jina.ai 経由で試してもらった。
回答履歴と復習のページも、仕訳問題集と同じ作りで足してもらった。 自分の実際の履歴が出てきて、×1回が6問、完了が1問だった。 コミット時の Codex レビューでは、「全て」の「連続で解く」でも同じことが起きる、という指摘が出た。 Codex の判定は high、Claude Code 自身の判定は low だったが、1行で直せるので直してもらった。
仕入側の「不課税」と「対象外」を分けるか
最後に残ったのが、仕入側の「不課税」の扱いだった。
仕入側では、不課税と対象外を分ける意味はあまりない。 だから「対象外」でいい。 とはいえ、不課税と対象外は、考え方としては別のものだ。
それでも、このクイズは会計ソフトの入力に合わせて税区分を出している。 入力の画面で選ぶ名前が「対象外」なら、クイズの答えも「対象外」と書いておけばいい。 そう判断した。
Claude Code には、答えと説明を分けて直してもらった。
| 対象 | 扱い |
|---|---|
| 正解が「不課税」だった問題 | 23問を「対象外」に変更 |
| 仕訳の税区分の欄 | 23か所を「対象外」に変更 |
| 問題文と解説の「不課税取引なので〜」 | 19か所をそのまま残す |
答えは入力の書き方に合わせ、説明には考え方を残した。 受取配当の問題では売上側の選択肢が、支払利息の問題では仕入側の4択が出ることを、ブラウザで確かめてもらった。 計画書の更新とコミット、プッシュまでをこの日のうちに済ませた。
学び
- 「会計ソフトAに合わせる」と決めかけても、3社を並べるとAだけが別の系統だった。決めづらいときは、案を並べて比べられる形にすると、前提にしていた基準そのものを見直せる
- 不課税と対象外は、答えの欄を入力の書き方に合わせ、問題文と解説には考え方の説明を残すことで両立できた