AI駆動型
会計データ変換ツール
Claude APIを活用し、明細データを会計ソフト用CSVへ動的に変換する自動処理システムの開発
プロジェクト概要
会計業務における手作業のデータ入力を自動化するため、Excelの明細書を会計ソフト用インポートCSVへ変換するPythonプログラムを開発しました。単純なルールベース変換に留まらず、Claude APIを組み込んだ動的なパターン学習機能により、相手先や取引内容の多様なバリエーションに柔軟に対応します。
システム構成
処理フロー
Excelの明細書から「相手先」「入出金区分」「取引内容」「月次」「金額」の各フィールドを抽出します。
マッピングCSVを参照し、相手先・内容に対応する科目コード・科目名・摘要を決定。既知パターン外の取引はClaude APIが補完します。
Claude APIが新たなパターンを解析し、処理ロジックを動的に更新。マッピングCSVへの自動追記も行い、次回以降の精度が向上します。
科目コード・科目名・金額・摘要などの項目を含む、会計ソフトのインポート形式に準拠したCSVを生成します。
主な機能
未知のパターンをAIが解析し、マッピングルールを自動拡張。使うほど賢くなる設計。
取引パターンと科目の対応表をCSVで管理。人間が直接編集・確認できる透明な構造。
月次の大量明細データも一括処理。API呼び出しは未知パターンのみに絞りコストを抑制。
入出金区分・相手先・内容を複合的に評価し、適切な勘定科目を自動判定。
実装のポイント
Claude APIによるコード動的生成
このプロジェクトの核心は、単なるデータ変換ではなく「プログラムがプログラムを書き換える」点にあります。新しい取引パターンが登場した際、Claude APIにパターンの特徴と既存コードの構造を渡し、対応する処理ロジックを生成・統合します。
# 新パターン検出時のClaude API呼び出しのイメージ
def generate_mapping_rule(unknown_entry, existing_rules):
prompt = f"""
以下の取引データに対して会計科目を判定し、
マッピングルールをPythonの辞書形式で返してください。
取引: {unknown_entry}
既存ルール例: {existing_rules[:3]}
"""
response = client.messages.create(
model="claude-sonnet-4-20250514",
messages=[{"role": "user", "content": prompt}]
)
return parse_and_apply_rule(response.content)
マッピングCSVを「人間が読める設定ファイル」として機能させることで、AIが生成したルールを担当者が確認・修正できる人間とAIの協調設計を実現しています。
技術スタック
成果と学び
月次の手作業データ入力が大幅に削減され、入力ミスのリスクも低下しました。また、AIをブラックボックスとして扱うのではなく、CSVというシンプルな媒介を挟むことで処理の可視性と信頼性を両立できることを実感しました。
Claude APIによる動的なコード生成・書き換えは、静的なルールベースシステムの限界を超える新しいアプローチであり、今後様々な業務自動化への応用可能性を感じています。