在庫があるにも関わらず「在庫が足りません」エラーが発生する
EC-CUBEの注文確認画面から注文完了画面に遷移する際に、「在庫が足りません」というエラーが発生する事象がありました。
管理画面で確認すると、該当商品の在庫は十分にある状態です。
在庫を2つのテーブルで管理している
EC-CUBEは在庫を2つのテーブルで管理しています。
・dtb_product_classテーブルのstock
・dtb_product_stockテーブルのstock
各カラムはざっくり以下のように利用されています。
・dtb_product_classテーブルのstock:管理画面で表示されている在庫数
・dtb_product_stockテーブルのstock:購入時にチェックされる在庫数
エラーの原因は在庫数の不一致
調査したところ、今回のエラーが発生している商品は上記カラムの在庫数が異なっていました。
dtb_product_classテーブルのstockと、dtb_product_stockテーブルのstockの値(在庫数)が異なっていると、「在庫が足りません」というエラーがするようです。
dtb_product_classテーブルとdtb_product_stockテーブルのstockの値を同一にすることでエラーは解消しました。
なお、EC事業者様に確認したところ、エラーが発生する商品は数日前に新規で登録したとのことでした。
おそらく商品登録時に何らかの処理を行なったことで在庫数にズレが発生したと考えられます。
今後、詳細が分かりましたら、本記事に追記致します。
2023年3月22追記
上記の理由が判明しました。
在庫連動システムからEC-CUBEの在庫情報を更新しているそうで、一つのテーブルのstockカラムしか更新していなかったようです。
外部システムの開発会社に至急修正して頂き、無事解決しました。
投稿者プロフィール
- サンクユーのEC-CUBE先生。
EC-CUBEのカスタマイズをし出して早15年。
難易度の高いカスタマイズもお任せ。
2系、3系、4系すべて対応可能。
実はjavaでの業務システム開発がエンジニア人生のスタート。
PHP、Perl、フロントエンド開発、Movable Type、Wordpressも得意という万能エンジニア。
最新の投稿
- EC-CUBE2024.10.17EC-CUBE4系の対応状況(ステータス)
- EC-CUBE2024.08.06EC-CUBE4.3へのバージョンアップ
- EC-CUBE2024.08.01EC-CUBEでシーズンカタログ機能を実装する
- EC-CUBE2024.07.26EC-CUBEで直販と代販を両立させる