Shopifyの商品CSVは便利ですが、慣れていない状態で一括インポートすると、商品名が上書きされる、バリエーション構造が崩れる、画像URLが外れる、在庫更新のつもりが別の項目を触ってしまう、といった事故が起きます。
CSVの怖さは、1行ずつ手で編集しているときよりも、失敗の範囲が広いことです。1商品だけのミスならすぐ戻せますが、500行、1000行のCSVで誤った列を入れると、どの商品に何が起きたかを追うだけで時間がかかります。
この記事では、Shopify商品CSVを入れる前に確認したいポイントを、実務向けのチェックリストとして整理します。目的は「CSVを完璧に理解すること」ではなく、「壊れやすい場所を先に見つけること」です。
まずバックアップを取る
最初にやることは、現在の商品データをエクスポートして残すことです。CSVを入れる前の状態が分からないと、あとから「どの列が変わったのか」「戻すなら何を戻すのか」を判断できません。
できれば、作業前に次の3つを保存しておきます。
- Shopifyからエクスポートした商品CSV
- これからインポートする編集後CSV
- 作業目的を書いたメモ
作業目的のメモは軽視されがちですが、あとで原因調査するときに効きます。「価格だけ変更する予定だった」「説明文と画像URLは触らない予定だった」と分かれば、差分を見る範囲を絞れます。
商品CSVと在庫CSVを混同しない
Shopifyには商品CSVと在庫CSVがあります。商品CSVは商品情報やバリエーション情報を扱うものです。一方、在庫CSVは在庫数量を更新するためのCSVで、Shopify公式ヘルプでも、在庫数量の一括更新には在庫CSVを使う方法が案内されています。
特に複数ロケーションを使っている場合、在庫は商品CSVだけで考えると混乱しやすくなります。商品登録、価格変更、説明文変更、画像更新をしたいのか、在庫数量を更新したいのかを最初に分けてください。
| やりたい作業 | 主に見るCSV | 注意点 |
|---|---|---|
| 商品名や説明文を直す | 商品CSV | 空欄上書きに注意 |
| 価格を変える | 商品CSV | バリエーション行ごとの差分を見る |
| 画像URLを追加する | 商品CSV | URL到達と商品への紐づきを確認 |
| 在庫数を変える | 在庫CSV | ロケーションと現在値の扱いに注意 |
| バリエーションを増減する | 商品CSV | Option列とVariant列の構造を確認 |
Handleは商品をまとめるキーとして見る
Shopifyの商品CSVでは、Handleが商品を識別する重要な列になります。複数バリエーションの商品では、同じHandleを持つ複数行が1つの商品にまとまります。
Handleを不用意に変更すると、既存商品の更新ではなく、新しい商品として扱われたり、意図しない商品に紐づいたりする可能性があります。特にExcelやスプレッドシートで並び替え、コピー、置換をしたあとに、Handleが変わっていないか確認してください。
Handleで見ること
- 同じ商品に属するバリエーション行のHandleが揃っているか
- 既存商品を更新するつもりなのにHandleを変えていないか
- 別商品のHandleが重複していないか
- 空白、全角文字、不要な記号が混ざっていないか
- 並び替え後にタイトルやバリエーション行との対応が崩れていないか
バリエーションはOption列とVariant列をセットで見る
バリエーションがある商品では、Option1 Name、Option1 Value、Option2 Name、Option2 Value、Option3 Name、Option3 Valueの組み合わせが重要です。サイズ、色、素材などを扱っている場合、ここが崩れると商品ページ上の選択肢も崩れます。
よくあるのは、価格や在庫だけを直すつもりでCSVを触ったのに、Option列の一部が空欄になっていた、表計算ソフトの操作で行がずれた、別商品のバリエーション行をコピーしてしまった、というケースです。
CSV投入前には、同じHandleの行だけを並べて見て、Option列とVariant SKU、Variant Price、Variant Barcodeなどが対応しているか確認します。
空欄が「変更しない」なのか「空で上書き」なのかを確認する
CSVで特に怖いのが空欄です。作業者の感覚では「この列は触らないから空にした」つもりでも、インポート処理では「空の値として更新する」と解釈される場合があります。
商品説明、SEO title、SEO description、画像URL、Barcode、Tags、Vendor、Publishedなど、空欄になって困る列は事前に洗い出してください。不要な列は消す、更新対象の列だけに絞る、既存CSVから必要な値を残す、などの判断が必要です。
画像URLは見た目だけで判断しない
画像URL列が入っていても、そのURLが外部から取得できるとは限りません。URLが古い、ログインが必要、リダイレクトする、スペースや日本語ファイル名で壊れている、拡張子だけ画像に見えて実体が違う、といったことがあります。
画像URLをCSVで扱うときは、少なくとも次を確認します。
- URLが空でないか
- ブラウザのシークレットウィンドウで開けるか
- 画像として表示されるか
- 商品ごとのメイン画像と追加画像が意図通りか
- 同じ画像URLが大量に誤って入っていないか
文字化けと数値変換に注意する
CSVはExcelやGoogle Sheetsで開くと、意図せず値が変わることがあります。JANコードの先頭0が消える、長い数値が指数表記になる、全角・半角が混ざる、改行入りの説明文が崩れる、文字コードが合わず日本語が文字化けする、といった問題です。
特にBarcode、SKU、Handle、URL、HTML本文は、表計算ソフトが勝手に解釈すると困る列です。CSVを保存する前に、先頭0、長い数値、改行、カンマ、引用符が壊れていないかを見ます。
投入前チェックリスト
実際にインポートする前に、次のチェックだけでもかなり事故を減らせます。
- 作業前の商品CSVを保存した
- 今回変更したい列が明確になっている
- Handleの重複と変更を確認した
- 同じHandle内のバリエーション行を確認した
- Option列が途中で空になっていない
- 空欄で上書きされると困る列を確認した
- 画像URLをいくつか実際に開いた
- BarcodeやSKUの先頭0が消えていない
- 日本語が文字化けしていない
- まず少数商品でテストする準備をした
小さく自動化できる部分
この確認作業は、人間が全部目で見る必要はありません。CSV投入前のチェックツールを作るなら、次のような部分は比較的自動化しやすいです。
- Handleの重複や空欄を検出する
- Option列の欠落を検出する
- Barcodeの桁数や先頭0の消失候補を拾う
- 画像URLの到達確認をする
- 空欄上書きになりそうな列を警告する
- 変更前CSVと変更後CSVの差分を出す
最初からShopifyへ直接書き込む必要はありません。むしろ初期段階では、CSVを読み込んで危険な行を出すだけの方が安全です。自動修正は便利ですが、ルールを間違えると被害が広がります。
参考にした公式情報
- Shopify Help Center: Using CSV files to import and export products
- Shopify Help Center: Exporting and importing inventory with a CSV file
この記事はShopifyの公式サポートではありません。CSVの挙動はストア設定、利用アプリ、CSVの内容によって変わるため、本番投入前には少数商品でのテストとバックアップを推奨します。
Shopify CSV / 一括編集 まわりの作業整理、小さな自動化、簡易チェックツール化について相談できます。初回相談で機密CSVやスクリーンショットを送る必要はありません。
無料相談する
