見出し画像

【2Plus Shopify アプリ検証】Shopify Plus専用データインポートアプリ「Transporter」検証まとめ

こんにちは。TCAディビジョンの森田です。
Shopifyを導入される際は、別のシステムから移行するケースが多いですが、その際、重要な作業として「データ移行」があります。

Shopifyでは、Shopifyにデータを入れることを「インポート」、Shopifyからデータを出力することを「エクスポート」と呼びます。基本的にはCSVファイル(カンマ区切りのデータ形式ファイル)を利用します。
Shopify標準インポート機能でインポートも可能ではあるのですが、Shopify Plusを導入する大規模案件では、データ件数も多いため、より高速にインポートできる「Transporter」アプリを利用します。

今回は、「Transporter」アプリの解説、注意事項、Tipsを実際に使った中で得た知見を交えて記載しますので、お役立てください!

Transporterアプリとは?

Shopify Plus専用のデータ移行アプリです。
詳細仕様はこちらを参照
https://help.shopify.com/ja/manual/migrating-to-shopify/transporter-app
アプリストア
https://apps.shopify.com/transporter

Transporterアプリを使用して、情報をShopifyにインポートします。
このアプリには、次のような標準CSVインポート機能よりも多くの利点があります。
顧客、製品、注文、メタフィールドのサポート
・250MBの推奨ファイルアップロードサイズ
・標準APIよりも10倍高速に実行
・データを一括削除する機能
・簡単なトラブルシューティングのためのエラー報告

注意事項

いくつか注意事項があるので、よく確認してから利用しましょう。

・Shopify plusプランでないと使えない
・データ量が少なければ無理に使わなくてもよい
データ項目が標準インポートと違うので注意!
注文情報は標準インポート機能ではインポート不可のため、トランスポーターアプリのみ(または外部アプリ)
・商品、顧客、注文をインポートする順序は重要です。次の順序でインポートする必要があります。
 1 商品 > 2 顧客 > 3 注文
・csvファイル名でどの種別か自動判定している
 product : 商品 ー> test_products.csv 
 customer : 顧客 ー> test_customers.csv 
 order : 注文 ー> test_orders.csv 
追加するor削除するアプリなので、「更新」はできません。もし行いたい場合は一旦削除してまた追加する必要があります

注文はインポートしないほうがよい

異なるシステム仕様間によるデータの不整合が起きる可能性が高いため、極力注文はインポートしない方針がよいと思われます。

・前提として、Shopify顧客仕様はメアド重複不可、電番重複不可
・旧システムでメアドが重複許可の場合、顧客インポートで重複分がエラーになる
・旧システムで電番が重複許可の場合、顧客インポートで重複分がエラーになる
・Shopifyでは注文と顧客の紐付けにメアドを使うため、注文時のメアドが変わっていると他の顧客と紐づく可能性あり
・顧客データに無いメアドの注文データの場合、顧客自動生成されてしまう
データマッピングの仕様確定できる人材がブランド内に不可欠

インポート手順

作業としてはcsvファイルを選択して放置するだけです。

画像1

初回
・アプリストアよりTransporterをインストールします
・初回起動時は上図のように、csvをアップしてねと書いてあるのでアップロードします

画像2

2回目以降
・アプリ起動すると上図が表示されるようになります
・csvをアップするとバックグラウンド処理になるので、他の画面にいっても大丈夫ですが、念の為インポート中は、商品・会員・注文のデータ登録・変更・削除は行わないほうが無難かと思います
・インポート完了すると、Completed, FailedなどStatusが変わります
・インポートできないデータはResultsにXX errorsとエラー件数が表示され、Export errosよりエラーデータ行とエラー原因の一覧がダウンロードできます
・またcsvアップロードする場合、Action:Create in Shopifyにプルダウンセットし、Upload fileを押してcsvアップロードすると登録インポートが開始されます
・同様に、Action:Delete in ShopifyとしてUpload fileを押してcsvアップロードすると、一括削除が実行されます

データ登録インポートの所要時間
Transporter利用での顧客、注文データインポートはいずれも、1件あたり0.048秒程度かかった。これに件数を掛ければ想定値は出せると思います。
※データの内容次第、Transporterの現仕様によるものなので、一概には言えません
※40万件テストを行ったら、登録5時間程度、一括削除で11時間程度かかった

Tips

顧客】標準インポートでは顧客データの配送先を複数インポートできない
標準インポートでは複数配送先の指定はできない仕様です
・複数の配送先をインポートしたい場合はトランスポーターアプリを利用します

顧客】LTVに使いそうな顧客の合計購入額・購入回数は移行できない
・標準、トランスポーター共に、合計購入額・購入回数のデータ移行はできません
・一応公式ドキュメントには項目があるが、標準・トランスポーターアプリで試したところデータが入らなかったため

顧客】都道府県コードはISO3116-2形式
次の通り。

|都道府県名 | 都道府県コード |
| --- | --- |
| 北海道 | JP-01 |
〜
| 東京都 | JP-13 || 沖縄県 | JP-47 |

顧客/注文】Tagsは過去データの目印に必ず登録しておいたほうがよい
・Old_ECdata 等のように、インポートデータとわかるフラグはつけておいたほうがあとで何かと便利かと思われます。
・Tag名は他と被らない名称のほうが良いです。理由は、運用中に一般的な名前のTagをうっかりつけてしまったら混同してしまうため

エラー】エラーエクスポートはそのまま投入可能
・1-2週間はインポート時のエラーデータがダウンロードできる模様
・エラーデータの内容は、インポートデータのエラー行がそのまま出力されている。1点異なるのは、最後の列にError(s)という項目が追加されていること
・各データで何が問題だったかが記録されている
エラー列はインポート時には無視されるようなので、エラーメッセージ付きの状態でもう一度登録インポートしても問題なさそうだった

注文】全件「Fulfillment Status」をfulfilled(発送済み)に設定しているのに、一部未発送になってしまうデータがある
・詳細不明。バグなのか、仕様なのか...
・一律「未配送」で入れる方針として対処

サイトリニューアルのデータ移行について書いた記事もありますので、よろしければどうぞ!

https://note.fracta.co.jp/n/nccfe2a981002

フラクタでは、ブランディングやEコマースに関する情報を発信しています。ぜひフォロー、スキをお願いいたします!

Shopify Plusのコンサルティングサービス「2Plus」はトランスコスモス 技術研究所様と業務提携して提供しております。
「2Plus」についてのプレスリリースはこちら


この記事を書いた人:FRACTA TCAディビジョン兼チョコおじさん 森田(@lingling_yas)
Transporterとの戦いは、数ヶ月にわたる要件定義・検証・調整の繰り返しでした。汗と涙の結晶をまとめた記事ですので、お役に立てば幸いです・・・。ちなみに、この作業の中で役に立ったのはExcelスキル。数万件のテストデータもExcelで作れたり、かなり役立つのでオススメスキルですよ。