575列のCSVを手打ちしていたのをやめた。楽天の商品登録を自動化した構成
楽天の商品一括登録に使うCSVは、列が575ある。
商品を1つ登録するのに、この575列を埋める。色×サイズのバリエーションがある商品は、SKUの数だけ行が増える。6色×4サイズなら24行だ。
これを毎回手でやっていた。やめた話を書く。
575列のうち、商品ごとに変わるのは20項目くらい
まず実際に登録済みのCSVをダウンロードして、列を3つに分けた。
| 層 | 内容 | 商品ごとに変わるか |
|---|---|---|
| 店舗共通 | 配送設定、表示設定、在庫の戻し方、レビュー表示、離島の商品オプション | 変わらない |
| アイテム種類ごと | ジャンルID、サイズ展開、必須の商品属性、商品名と説明文の型 | 種類が同じなら変わらない |
| 商品ごと | 品番、色、サイズ、価格、画像、実寸、売り文句 | 変わる |
575列のうち、本当に商品ごとに違うのは20項目ほどしかなかった。残りは毎回同じ値を打ち直していたことになる。
なので、20項目だけを書いた入力シートを渡すと、575列を埋めたCSVが出てくる形にした。
入力シート(1行=1商品、20項目)
↓
テンプレート
↓
normal-item.csv(575列 / 商品行+オプション行+SKU行×色×サイズ)
アイテム種類ごとにテンプレを作る
ジャンルIDや必須の商品属性は、アイテムの種類によって変わる。いまのところキャップ、半袖Tシャツ、シャツ、ジャケットの4つを作った。種類が増えてもテンプレを1つ足すだけで済む。ブランドは数百あっても変わるのは名前くらいなので、入力シート側で吸収できる。
つまずいたのは必須属性だった。実際に弾かれて気づいた。
SKU管理番号:r-sku00000001 に必須の商品属性(素材(生地・毛糸))を指定してください。
キャップとアパレルで、必須の項目が違っていた。
| 商品属性 | キャップ | Tシャツ・シャツ |
|---|---|---|
| カラー | ● | ● |
| ブランド名 | ● | ● |
| メーカー型番 | ● | ● |
| 素材(生地・毛糸) | — | ● |
| 原産国/製造国 | ● | — |
| 代表カラー | ● | ● |
キャップは原産国が必須で素材は不要、シャツはその逆になっている。規則性を探したが見つからなかった。新しいジャンルを扱うときは、RMSの登録画面で必須マークを目で確認するしかないと思う。
そしてこの属性が1つでも空だと、その商品のSKUがまとめて落ちる。6SKU作って6SKU全滅した。エラーは6件出るが、直すべき箇所は1つだ。
検証は実際に登録されているCSVと突き合わせる
一番効いたのはここだった。
新しく作ったテンプレが正しいかどうかは、既に登録して売れている商品のCSVをダウンロードして、生成物と1列ずつ比較することで確認した。
最初は主要な5項目だけ比べていた。それだと商品属性の抜けに気づけなかった。全575列で比較し直したら、実質的な差は2種類しかないと分かった。商品属性の項目名だけが実登録側にある37件と、使っていない列が1つ空欄なだけ。前者はRMSのダウンロード版が空の枠まで書き出すためで、実害はない。
「動いた」ではなく「実データと一致した」まで確認しないと、抜けに気づけない。
人が判断するところは自動化しない
全部を自動にはしなかった。
ジャンルID、配送設定、説明文の骨組みは自動で埋まる。別途送料の案内も価格から判定できる。ここは迷う要素がないので機械に任せた。
一方、価格・在庫・原産国・売り文句は人が入力する。ここを自動化しようとすると、どこかで推測が混ざる。
判断が割れたのが発送方法だった。宅急便かネコポスか。価格が一定以上なら補償の関係で宅急便が確定するが、それ未満は厚みで決まるので、実物を知っている人にしか判断できない。
なので、種類から仮置きしつつ、必ず確認リストに出すようにした。傾向どおりなら見るだけで済み、これは厚手だと思ったときだけ直せばいい。
その確認リストも、最初は1つにまとめていて機能しなかった。必須項目と念のための項目が並ぶと、毎回全部を吟味することになって、逆に時間がかかる。なので2枠に分けた。
■ 必須(アップロード前に必ず埋める)
- 原産国: 空欄のまま進めない
- アイテム説明: 会社ルールで必須
■ 念のため確認(機械が仮置きした値。合っていればそのままでOK)
- 発送方法: 種類から「ネコポス」を仮置き。厚手なら宅急便に変える
上は止まって埋めるもの、下は流し読みするもの。分けただけで判断が速くなった。
結果
丸一日かけて、登録できたのは1商品だった。手でやった方が早い。
ただし2商品目からは数分で終わる。しかも作る過程で入れたチェックが全部効くので、同じミスは出ない。必須属性が空なら止まるし、値を加工したら報告が出る。
構成としては、575列を店舗共通・種類ごと・商品ごとの3層に分けて、商品ごとの20項目だけを人が書く形になった。検証は実登録CSVとの全列比較でやる。人が判断すべきところは自動化せず、仮置きして確認に出す。
同じことをやるなら、まず実登録のCSVを1つダウンロードして眺めるところから始めるのが早いと思う。仕様書を読むより、実物の方が正確だった。