Shopifyで在庫を一括更新する方法として、長年定番だったのが「CSVファイルをアップロードする」というやり方です。商品データをエクスポートして、Excelで編集して、また戻す——この流れに慣れている方も多いと思います。実際、初期のShopify運用ではこれが最も自然な選択肢でした。
ただ、ストアが大きくなるにつれて、CSV運用にはじわじわと問題が積み上がっていきます。「ある日突然、在庫数が変な値になっていた」「アップロードしたら、設定していたはずの情報が消えていた」——こうしたトラブルの多くは、CSV運用そのものに内在している弱点に起因しています。この記事では、その正体を見ていきましょう。
CSV運用の3つの落とし穴
CSV運用には、表面上は見えにくい構造的な問題がいくつかあります。中でも、現場でよく起きる事故の原因になっているのが、次の2つです。
列の意味が崩れる
CSVファイルは、ぱっと見はExcelで開ける普通の表ですが、実際には「列の順番」と「列名のルール」がとても厳密に決まっています。1列ずれただけで、商品タイトルの欄に在庫数が入り込んだり、価格の欄にSKUが書かれてしまったりします。アップロードした瞬間にエラーで止まればまだ良いのですが、Shopifyが「とりあえずそのまま受け入れる」ケースもあり、後から気づいた時には商品データが大混乱、という事態が起きえます。
さらに厄介なのは、誰かが「分かりやすくしようと思って」列を並び替えたり、不要な列を消したりするケースです。本人は親切心からやっているのですが、CSVを再度アップロードした時に、その変更がShopify側の商品データを意図せず書き換えてしまいます。
ロケーション情報が消える
CSVで在庫を扱う時、ロケーションごとの在庫数は「列を増やして表現する」スタイルになります。ところが、CSVをエクスポートする時にロケーションの選択を忘れたり、編集ソフトでうっかり列を消したりすると、その瞬間にロケーション情報が失われます。再アップロードすると、Shopifyは「指定がなかったロケーションは無視」とは判断せず、「ゼロにする」と解釈してしまうケースもあり、これが在庫消失事故の典型パターンです。
そして3つ目の落とし穴は、CSVが「一回きりのスナップショット」であることです。エクスポートしてから編集して戻すまでに、ストアフロントでは注文がどんどん入っています。アップロードした瞬間、その間の販売による在庫減算が上書きされ、無かったことになってしまう——これもCSV運用ではよくある事故です。
なぜシート同期の方が安全か
シート同期がCSVより安全な理由は、いくつかあります。まず、シートには「列の意味」が常に固定されています。Sync Masterのようなアプリでは、設定画面で「この列がSKU」「この列がロケーション」「この列が数量」と明示的にマッピングするので、列の順番がずれても意味が崩れません。CSVのように「列の位置で判断される」設計とは根本的に違います。
次に、シート同期は「必要な情報だけを書き込む」という思想で動きます。シートに数量しか書かれていない場合、Shopifyの他のフィールド(商品タイトル、価格、説明文など)には一切触れません。CSVが「全てのフィールドを一気に書き換える」のとは対照的です。だから、誰かが商品タイトルだけShopify管理画面で直しても、それがシート同期で巻き戻されることはありません。
- 列マッピングが明示的 : 列順がズレても意味が壊れない
- 部分更新が前提 : 触る列だけ更新し、他のフィールドは守る
- 接続テストでプレビュー : 事前に「何が起きるか」を確認できる
- 実行ログが残る : 後から「誰が、いつ、何を変えたか」を追える
そして、シート同期では「実行前のプレビュー」が標準的に提供されます。CSVアップロードでは、ボタンを押した瞬間に書き換えが始まり、後戻りは難しいのが普通です。シート同期なら接続テストで「これを実行したらこうなる」を確認できるので、事故の起きるタイミングを未然に検知できます。
もしCSVが必要な場合のヒント
とはいえ、CSVの出番がゼロになるわけではありません。新規商品を一括登録するとき、他のECシステムからデータを移行する時、税制対応で価格を全件アップデートする時——こうしたケースではCSVの方が向いています。シート同期は「日々の在庫数の更新」に最適化された仕組みなので、商品マスター自体の登録は引き続きCSVが活躍する場面です。
ただ、CSVを扱う時には次のことを意識すると、事故を減らせます。エクスポートしたCSVは必ずバックアップを取っておく。列の追加や削除は最小限にとどめる。ロケーション列は触らない。在庫数の更新だけにはCSVを使わず、シート同期に任せる——この4つを守るだけで、CSV関連のトラブルは大きく減るはずです。
移行の最初の一歩
「CSV運用から切り替えたいけれど、何から始めればいいか分からない」——そう感じる方も多いと思います。おすすめは、いきなり全部切り替えるのではなく、「在庫数の更新だけ」をシート同期に移すことです。商品の追加や削除は今まで通りCSVで行い、日々の在庫数だけシートで管理する。これだけでも、事故率は劇的に下がります。
シート同期に慣れてきたら、徐々に「シートで管理する情報」を広げていけば良いのです。最初は数量だけ、次に安全在庫の数字、その次に補充予定数——シートは追加列に強いので、運用の成熟度に合わせて拡張できます。これがCSVには真似できない、シート同期の柔軟さです。
次回は、初めての同期で起きがちな「5つのよくあるミス」を、原因とリカバリー手順とあわせて整理します。事前に知っておけば、初日のトラブルがぐっと減りますよ。