CSVを検証してから安全にデータを移行する
CSV データ移行では、商品・一般ユーザー・出品者のCSVを、プレビューで検証してから取り込みます。検証結果の指紋と実行時ファイルの指紋が一致した場合だけ登録を開始します。
ルート管理者は、商品・一般ユーザー・出品者・注文の全データをUTF-8 BOM付きCSVとして書き出せます。表計算ソフトによる数式実行を防ぐため、=、+、-、@で始まる値を無害化します。

画面への導線
現在、管理画面のメニューにはこの画面へのリンクがありません。URL(/admin/settings/migration)を直接開いてください(ブックマーク推奨)。
| 作業 | 必要な権限 |
|---|---|
| 商品の取り込み | 商品更新権限 |
| 一般ユーザー・出品者の取り込み | ユーザー更新権限 |
| 全データの書き出し | ルート管理者 |
場面別の運営フロー
| 場面 | 運営の動き |
|---|---|
| CSVの選択 | 対象を商品・一般ユーザー・出品者から選び、UTF-8のCSVファイルを指定します。 |
| 検証 | [検証(まだ取り込みません)]を選び、取込可能件数・スキップ件数と行別理由を確認します。 |
| 実行 | 検証後にファイルを変更していないことを確認し、[取り込みを実行]を選びます。完了後に登録件数・スキップ件数を確認します。 |
| 書き出し | ルート管理者は [全データのエクスポート]で [一括エクスポート]を選び、商品・一般ユーザー・出品者・注文のCSVが1本ずつ個別にダウンロードされたことを確認します。 |
この画面で行うこと
| 目的 | 操作と確認 |
|---|---|
| 事前検証 | 実データを変更せず、列・値・重複・スキップ理由を確認します。 |
| 一括登録 | プレビュー済みの同一ファイルだけを実行し、完了件数を確認します。 |
| 退避・持ち出し | ルート管理者が商品・一般ユーザー・出品者・注文のCSVを個別に取得し、必要なファイルがそろったことを確認します。 |
画面項目と運営上の見方
取込対象とファイル
商品・一般ユーザー・出品者ごとにCSVを選びます。商品SKUとメールアドレスは既存データとの重複判定に使われます。
検証結果
[取込可能]と [スキップ]の件数を表示します。行別のスキップ理由は先頭10件まで表示されます。内容を修正するときは [やり直す]でファイル選択へ戻ります。
指紋による実行確認
プレビュー時にファイル内容からSHA-256指紋を作成します。実行時に再検証し、指紋が一致しなければ登録しません。
全データのエクスポート
商品・一般ユーザー・出品者・注文のCSVを1本ずつ個別にダウンロードします。先頭のファイル名は products.csv、buyers.csv、sellers.csv、orders.csv です。50,000データ行ごとに products-2.csv のような連番で分割し、全出力の合計が50MBを超える場合は中止します。
表計算ソフト向けの無害化
書き出し時は、先頭の空白に続いて =、+、-、@ が現れる値にアポストロフィを付けます。取り込み時は、この4記号の直前にあるアポストロフィ1文字だけを取り除きます。
判断と次の行動
| 表示・状況 | 対応 |
|---|---|
| 文字コードエラー | Shift_JISではなくUTF-8で保存し直して再検証します。UTF-8 BOMは使用できます。 |
| 指紋が一致しない | 変更後のCSVをもう一度 [検証(まだ取り込みません)]で検証します。 |
| スキップがある | 行番号と理由を修正し、重複するSKU・メールアドレスやサンプルデータ識別子を除いて再検証します。 |
| 書き出しが50MBを超える | 一括書き出しは完了しません。運用担当へデータ抽出方法を相談します。 |
次に見る管理画面
| 確認対象 | 開く画面 |
|---|---|
| 取り込んだ商品 | 商品管理 |
| 取り込んだ一般ユーザー・出品者 | ユーザー管理 |
| 初回ログイン | 公開サイトのパスワード再設定(/reset-password) |
読み込み状態・エラー状態・空状態の見方
| 状態 | 見方 |
|---|---|
| 未検証 | ファイルを選び、検証を実行します。データはまだ登録されていません。 |
| 検証済み | 取込可能件数とスキップ理由を確認してから実行します。 |
| 実行完了 | 登録件数・スキップ件数を確認し、対象管理画面で反映を確認します。 |
| 実行失敗 | 登録済みの行がある可能性を対象管理画面で確認してから再実行します。 |