株式会社みんなシステムズ
  • 私たちについて
  • サービス
    助っ人DX電話自動応答で営業電話をシャットアウト|Simple5受託システム開発Simple5パッケージ経理業務代行AI経理アシスタントみゆき人材育成事業ソフトウェアテスト代行サービス
  • 事例紹介
    業務実績お客様の声サンプル画面集
  • ブログ
    社内ブログコラム記事
  • DXセミナー
  • お役立ち資料
    資料ダウンロード料金シミュレーター
  • 無料で相談する
  1. ホーム
  2. 業務実績
  3. OCRと在庫管理を連携した部品管理システム開発事例

WORKS

OCRと在庫管理を連携した部品管理システム開発事例

OCRと在庫管理を連携した部品管理システム開発事例

自動車部品のように品番が多く、仕入先ごとに納品書の書式もばらばらな商材は、在庫管理が属人化しやすい分野です。

今回は、自社SaaSパッケージとして開発した「部品在庫管理システム」をご紹介します。仕入先から届いた納品書をスマートフォンやスキャナで撮影してアップロードするだけで、生成AIが部品名・品番・数量を読み取り、確認画面でチェックしたうえでそのまま在庫に反映できる仕組みです。あわせて、入庫・出庫・保管場所間の移動・棚卸し時の在庫調整、在庫不足の自動メール通知、在庫推移のグラフ表示まで、部品在庫の管理に必要な機能をひととおり備えています。

本記事では、開発前の課題、開発アプローチ、実装した主な機能、そして開発で苦労した点・工夫した点を整理してご紹介します。

今回のポイントは、AIに納品書を「読ませる」だけで終わらせず、仕入先ごとの読み取りのコツをAIに教える仕組みと、人が確認してから在庫に入れる流れを組み合わせ、現場で安心して使える入庫業務にしたことです。

開発前の課題

部品を扱う現場の在庫管理では、入庫のたびに紙の納品書を見ながら、部品名・品番・数量を一件ずつ手で入力する作業が発生します。品番は英数字が長く並ぶものが多く、1文字違えば別の部品です。忙しい時間帯ほど入力は後回しになり、帳簿上の在庫と棚の実物がずれていく——これが多くの現場で起きている実情です。

「納品書をOCR(画像から文字を読み取る技術)で読み取れば済むのでは」と考えても、そう単純ではありません。納品書のレイアウトは仕入先ごとにまったく違うため、従来型のOCRでは「どこに何が書いてあるか」を書式ごとに細かく設定する必要があり、仕入先が多いほど準備の手間が膨らみます。さらに、読み取った品番が自社で管理している部品のどれに当たるのかを突き合わせる作業も、結局は人の目に頼ることになります。

在庫データの側にも課題があります。部品が複数の保管場所に分かれて置かれている場合、「どこに何個あるか」を把握するには場所ごとの管理が欠かせません。また、在庫が少なくなったことに気づくのが遅れて欠品する、逆に同じ部品を二重に発注して在庫を抱えすぎる、といった問題も、担当者の記憶や勘に頼っている限りなくなりません。

つまり、入力の手間を減らすことと、在庫データの正確さを保つことを両立させたい。これが、本システムの出発点でした。

ご提案・開発アプローチ

まず、納品書の読み取りには、画像の内容を理解できる生成AIを採用しました。書式ごとに読み取り位置を決め打ちする従来型のOCRと違い、生成AIは表の構造や項目の意味を読み取れるため、仕入先ごとにレイアウトが違っても同じ仕組みで対応できます。

そのうえで、仕入先ごとに「読み取り設定」を登録できるようにしました。「部品名はこの見出しの列」「品番はこういう形式」といった目印と記入例を、専門知識のない担当者でも画面から設定できる形です。AIに読み取りを依頼するときは、この設定を指示に組み込んで渡すため、仕入先特有のクセにも対応しやすくなります。

ただし、AIの読み取り結果をそのまま在庫に入れることはしません。納品書の画像と読み取り結果を並べて表示し、人が確認・修正してから「在庫に反映する」ボタンを押す流れにしました。確認画面では、読み取った部品名・品番から登録済みの部品マスタの中で近いものを候補として自動で提示するため、突き合わせの手間も最小限に抑えられます。

在庫の管理は「部品 × 保管場所」の単位で行い、入庫・出庫・移動・棚卸し調整のすべての操作を履歴として残す設計にしました。部品ごとに発注点(この数を下回ったら発注する目安)を設定しておけば、在庫不足や在庫過多を画面上で知らせるだけでなく、毎朝、在庫管理の担当者へメールで自動通知します。

実装した主な機能

  • 納品書画像の一括アップロード(複数枚同時、仕入先を選んで登録)
  • 生成AIによる納品書の読み取り(部品名・品番・数量・コード・備考を、複数行の明細ごとに抽出)
  • 仕入先ごとの読み取り設定(各項目の「目印」と「記入例」を画面から登録)
  • 納品書の処理状況の管理(未処理・解析中・解析済み・解析エラー・在庫反映済み)と、仕入先・状況・日付での絞り込み
  • 納品書画像と読み取り結果を並べた確認・修正画面、明細の追加・削除
  • 読み取り結果に近い登録済み部品の候補表示(一致度つき)と、その場での新規部品登録
  • 保管場所を指定したうえでの在庫への一括反映
  • 部品マスタ管理(部品名・品番・コード・仕入先・発注点・適正在庫量・通常品/特注品の区分)
  • 保管場所(保管エリア)の管理
  • 手動での入庫・出庫登録(部品の検索付き選択、選んだ場所の現在庫をその場で表示)
  • 保管場所間の在庫移動
  • 棚卸し・破損・紛失などの理由を記録できる在庫調整と、調整履歴の管理
  • 入出庫履歴の閲覧・絞り込みと、誤登録時の取り消し
  • 在庫一覧の検索とCSV出力(Excelで文字化けしない形式)
  • 在庫不足・在庫過多のアラート表示(ダッシュボード・アラート一覧・入出庫操作の直後)
  • 在庫不足の毎朝の自動メール通知(在庫管理者のうち通知を希望した人だけに送信)
  • 毎日の在庫数の自動記録と、部品ごとの在庫推移グラフ
  • AI読み取りにかかった利用料金の記録(納品書ごと)
  • 既存の部品・在庫データのCSV一括取り込み(導入時の初期データ移行用)
  • スマートフォンでも操作しやすいレスポンシブ対応

開発で苦労した点・工夫した点

書式がばらばらな納品書を、同じ仕組みで読み取る

本システムの核心は、仕入先ごとに見た目がまったく違う納品書を、ひとつの仕組みで読み取ることでした。生成AIは表の意味を理解できるとはいえ、何も指示しなければ「どれが品番で、どれが社内コードか」を取り違えることがあります。品番の列が2つある納品書や、部品名と品番が同じ欄にまとめて書かれている納品書も珍しくありません。

そこで、仕入先ごとに「部品名の目印はこの見出し」「品番の例はこういう形」といった読み取り設定を登録し、AIへの指示文に自動で差し込む仕組みにしました。いわば、新人スタッフに「この仕入先の納品書はここを見てね」と教えるのと同じことを、画面から設定するだけでAIに伝えられる形です。新しい仕入先が増えても、プログラムを改修することなく、利用者自身で設定を追加して対応できます。

また、AIの回答はそのままでは扱いにくい形で返ってくることがあります。本システムでは、明細が1行だけの場合でも必ず同じ形式で返すよう指示したうえで、余計な装飾が付いていれば取り除き、期待した形式になっていなければエラーとして記録する、という受け取り側のチェックを入れています。読み取りに失敗した納品書は「解析エラー」として一覧で分かるようにし、ボタンひとつで再解析できるようにしました。

AIの読み取り結果を、人の確認を経てから在庫に入れる

在庫データは、一度ずれると後から原因を追うのが非常に大変です。そのため、AIの読み取り結果を自動で在庫に入れることはあえて避け、「AIが下書きを作り、人が確認して確定する」という役割分担にしました。

確認画面では、左に納品書の画像、右に読み取り結果を並べ、見比べながら修正できます。特に工夫したのが、読み取った部品が自社の部品マスタのどれに当たるかを探す部分です。部品名・品番・コードがどの程度一致しているかを点数化し、一致度の高い登録済み部品を上位5件まで候補として表示します。完全一致だけでなく、英字の大文字・小文字の違いなど表記の揺れがあっても候補に拾えるようにしているため、担当者は候補をクリックするだけで紐づけが完了します。部品名や品番を手で直すと、その場で候補も更新されます。

一致する部品がなければ、画面を離れずにその場で新規部品として登録できます。最後に明細ごとの保管場所を選んで「在庫に反映する」を押すと、在庫数の加算と入庫履歴の記録がまとめて行われます。途中でエラーが起きた場合は、一部の明細だけが反映されて在庫が中途半端な状態になることがないよう、すべての処理をひとまとまりとして扱い、全部成功するか、全部取りやめるかのどちらかになるようにしています。保管場所の選び忘れも、送信前に画面上でチェックします。

在庫の数字が「なぜその数なのか」を必ず追えるようにする

在庫管理システムで最も避けたいのは、「画面の数字と棚の実物が合わないのに、どこでずれたのか分からない」状態です。そこで本システムでは、在庫数を直接書き換える操作をなくし、あらゆる増減を履歴として残すことを徹底しました。

たとえば保管場所間の移動は、「移動元からの出庫」と「移動先への入庫」の組として記録します。棚卸しで実際の数を数えた場合も、入力された実数と帳簿上の数の差分だけを、「棚卸し」「破損」「紛失」といった理由つきの入庫・出庫として記録します。棚卸し画面では、まだ一度も在庫が登録されていない「部品 × 保管場所」の組み合わせも一覧に並べているため、帳簿にない場所で部品が見つかった場合も、そのまま数を入力するだけで反映できます。

入出庫を誤って登録してしまった場合は、履歴から取り消せます。ただし、入庫を取り消すと在庫がマイナスになってしまうケースでは取り消しを止めるなど、在庫データが矛盾した状態にならないようチェックを入れています。

欠品・在庫過多に「気づける」仕組みを、しつこくなりすぎない形で

部品ごとに発注点を設定しておくと、在庫がその数以下になった時点で「在庫不足」、発注点の2倍を超えると「在庫過多」として扱います。これらはダッシュボードやアラート一覧に表示されるほか、入庫・出庫の操作直後にもその場で警告を出すため、作業しているその瞬間に在庫の偏りに気づけます。

メール通知については、送りすぎると読まれなくなる、という点に配慮しました。通知は毎朝決まった時刻に1回だけ、在庫管理者の役割を持ち、かつ通知を希望した人にのみ送る設計です。万一処理が重複して動いた場合でも、24時間以内に同じ通知を二重送信しない仕組みを入れています。

さらに、毎日0時に全在庫の数を自動で記録し、部品ごとの在庫推移をグラフで確認できるようにしました。「この部品はどのくらいのペースで減っているのか」が目で見て分かるため、発注点や適正在庫量を見直す判断材料として活用できます。

まとめ

納品書AI読み取り・部品在庫管理システムの開発事例では、仕入先ごとの読み取りのコツを画面から設定できる生成AIの読み取りと、人が確認してから在庫に反映する流れを組み合わせ、入力の手間を減らしながら在庫データの正確さを保てるようにしたことがポイントです。

生成AIを業務に組み込むときは、AIに何を任せ、どこで人が確認するかの線引きが成否を分けます。今回のように、AIには手間のかかる読み取りを任せつつ、確定の判断は人が行い、その後のデータはすべて履歴で追えるようにする。こうした設計によって、AIの便利さと業務データの信頼性を両立できると考えています。

「紙の納品書や伝票の手入力に時間を取られている」「在庫の数が合わず、欠品や過剰在庫に悩んでいる」など、同様の課題をお持ちの方は、お気軽にご相談ください。

OTHER WORKS

その他の業務実績

ドローン飛行管理システムの開発事例|飛行許可申請・計画届出・記録作成を一元化 View Project
その他システム開発

ドローン飛行管理システムの開発事例|飛行許可申請・計画届出・記録作成を一元化

事務所・店舗テナントをつなぐ ― 事業用不動産マッチングサイト開発の裏側 View Project
マッチングサービス

事務所・店舗テナントをつなぐ ― 事業用不動産マッチングサイト開発の裏側

動画×設問で初回商談を自動化|分岐型オンライン商談システム開発事例 View Project
その他システム開発

動画×設問で初回商談を自動化|分岐型オンライン商談システム開発事例

カヤック・SUP・カヌーの予約管理システムを開発|OTA予約・自社予約を一元管理 View Project
予約システム

カヤック・SUP・カヌーの予約管理システムを開発|OTA予約・自社予約を一元管理

すべての業務実績を見る
「こんなことをしたい!」という想い大歓迎!

まずは、お話を聞かせてください。

私たちはITの専門用語を使わず、お客様の言葉でお話しします。

まずは無料で相談する 資料をダウンロード

※ 強引な営業は一切行っておりません。安心してお問い合わせください。

株式会社みんなシステムズ お問い合わせ › お役立ち資料 ›
TEL 0800-300-5705 受付時間 平日 10:00〜19:00
株式会社みんなシステムズ

【本社東京オフィス】
〒130-0021 東京都墨田区緑3-1-14 外山ハイツ502
【本店佐世保オフィス】
〒857-0052 長崎県佐世保市松浦町5-13 グリーンビル205
【大分オフィス】
〒870-0027 大分県大分市末広町1-5-16 ユナイテッド末広ビル3F
【岐阜オフィス】
〒500-8407 岐阜県岐阜市高砂町1-17 岐阜イーストライジング24 2F
【営業時間】
平日10:00〜19:00
【メールアドレス】
info@minna-systems.co.jp

サービス
  • 電話自動応答で営業電話をシャットアウト|Simple5
  • 受託システム開発
  • ソフトウェアテスト代行サービス
  • AI経理アシスタントみゆき
  • 経理業務代行
  • 業務代行
  • 人材育成事業
  • プログラミングスクール
  • まちある佐世保
各種情報
  • お客様の声
  • お役立ち情報
  • 料金シミュレーター
  • ブログ
  • お知らせ
  • コラム
  • 採用情報
  • Wantedly
  • 利用規約
  • プライバシーポリシー
  • 特定商取引に基づく表記

株式会社みんなシステムズ.