AI活用の再設計 12|合わない数字は電卓で探さない。全行を走査させて不一致の1行を特定する

未分類

残高が合わない。 電卓を叩いて区間ごとに足し直し、目で怪しい行を探す。 数円、数十円の差額だと、調査にかけられる時間の方が高くつく。 結局「原因不明」のまま棚上げにして、決算だけ帳尻を合わせたことが何度もあった。

この記事は、税理士向けの生成AI活用をまとめた書籍の事例をお題に借りて、自分の実運用を書いてきたシリーズの続きである。 ここからの数本は、お題を書籍ではなく2025年分の確定申告の現場から取る。

残高が合わないとき、電卓で区間を探す従来のやり方と、前行の残高に金額を足して今行の残高になるかを全行チェックして不一致行を特定する自分の再設計を対比する図
図1: 電卓で区間を探す従来と、全行を機械走査する自分の対比

全行を検算するスクリプトをAIに書かせる

通帳の未記入分は、内訳書PDFをOCRでCSVに変換し、これまで蓄積してきた自動仕訳ルール251本を当てて、会計ソフトへの取込用仕訳CSVを作っている。 ある個人事業主の顧問先で、この手順で作った仕訳を取り込んだあと、会計ソフトの銀行明細連携の残高と通帳の残高が一致しない事象が起きた。 差額は小さく、取引の多い月では目で追っても埋もれてしまう。

そこでAIに、全取引行を検算するスクリプトを書かせた。 「前の行の残高に、この行の金額を足すと、この行の残高になっているか」を1行ずつ確認する、それだけの処理である。 数百行あっても実行は一瞬で終わり、不整合が始まる行がどこかがそのまま出てくる。 特定できた行を銀行アプリの画面と突き合わせると、連携から欠落していた取引が見つかった。 差額の説明がつくところまで検算できたのが、この工程の到達点である。 帳簿への反映は、その先の工程になる。

全行検算と理論値比較を選ぶ理由

全行を検算するという発想そのものは、特別なものではない。 違うのは、それを人間の作業として計画するか、スクリプトとして機械的に回すかである。 数十行を電卓で追うのは苦痛だが、同じ処理をスクリプトに書かせれば、数百行でも数千行でも所要時間はほぼ変わらない。 割に合わないという理由で全行検算を諦める必要がなくなる。

美容室の顧問先では、営業日報に決済代行2社分の売上が1つの列にまとめて入力されていて、精算の照合をするたびに端数の差額が出ていた。 日報の集計値、決済会社の精算画面、銀行の実入金という3点を突き合わせても、差額があることまでしかわからない。

日報の集計値、決済会社の精算画面、銀行の実入金という3点を突き合わせ、理論値(売上×手数料率)と比較して、手数料率の設定違いを特定する流れを示す図
図2: 3点の突き合わせでは終わらず、理論値と比較して原因を特定する

差額が生まれる理由を特定するには、理論値との比較が要る。 売上に手数料率を掛けた金額と実際の精算額を比べたところ、片方の決済会社の手数料率を、もう片方の売上にまで適用していたことがわかった。 全期間のデータで同じ検算を繰り返し、消込の仕訳パターンまで設計した。 根本対策として、日報の入力欄を決済代行2社で分けてもらう依頼文面も用意した。

人間がやっているのは、残高が合っていないという違和感を拾うことと、洗い出された原因候補のうちどれが筋の良い仮説かを判断することである。 全行の走査と理論値の計算は、AIとスクリプトに任せる作業になった。

数円の謎を調べる工程を会計事務所に置き換える

この型は、通帳の残高不一致や決済手数料の取り違えに限らない。 現金過不足の原因調査、補助元帳の残高不一致、売掛金の消込差額など、会計事務所の日常には数円から数百円の謎がいくらでもある。 これまでは、金額の小ささに対して調査コストが見合わないという理由で見送られてきた謎である。 全行を検算する処理と、理論値を計算して比較する処理をその都度AIに書かせれば、調査コストはほぼゼロに近づく。 残るのは、どの謎を追うかを決める判断と、洗い出された原因候補を検証する目である。

会計事務所に置き換えるなら、合わない数字を見つけたら、まず全行検算のスクリプトを書かせるという手順を、作業の型として決めておくということになる。 上手な電卓の使い方を覚えるのではなく、検算という工程そのものをファイルにする。 このシリーズで繰り返し書いている作法や工程をファイルにするという話は、ここでも変わらない。