PHP
Amazon

Amazon MWS API の使い方

Amazon MWS API 開発に必要な情報源

Amazon Marketplace Web Service Documentation 公式ドキュメント
設定等を確かめるために必須な情報源(英語)

AmazonマーケットプレイスWebサービス公式ドキュメント
設定等を確かめるために必須な情報源(日本語)
英語のほうが情報量が多く正確なような気がします。

Amazon MWS Scratchpad
開発を行う前の検証に必ず必要

Amazon MWS ラボ
大まかな流れを知るにはいい情報源。ただし、サンプルはjavascriptなので注意が必要。

Amazon API の種類
各APIの情報をたどるために必要。サンプルなども提供されているのでよいが、バージョンが古い場合があるので注意。

準備 - Amazon MWS 用のアカウントを作成する

Amazon マーケットプレースWebサービス

前提として、アマゾンで大口のアカウントを作成する必要がある。
もしアマゾンで販売する大口のアカウントが既にある場合は、大口アカウントでサインインする。

ここから、Amazon MWS 用のアカウントを作成すると、「ユーザー権限」の画面に移る。
ここで、「Amazon MWS 開発者権限」セクションがあるので、ここから以下の各種情報を取得する。

  • 出品者ID: ナイショ
  • 開発者 ID: ナイショ
  • AWSアクセスキーID: ナイショ
  • 秘密キー: ナイショv
  • MWSAuthトークン: ナイショ

MWSAuthトークンは、自分のアカウントで行うなら必要ないが、別のアカウントの開発を行う際に必要となってくる情報。

開発手順

準備が出来たら、大まかな開発の流れの中でやることは2つ。

  1. Amazon MWS Scratchpadで試す。
  2. PHP(その他該当の言語)に落とし込む

以上

Amazon MWS APIについての情報が少ないため、開発スタイルを探すのにかなり手間取ったが、出来てしまえばなんてことはない。ただ、情報源が少なかったり、情報が古かったりするので、かなり検証に時間がかかってしまう印象です。ブログなどを探すよりも公式のドキュメントを見たほうが、開発時間が短縮できそうです。

在庫更新までの一連の処理の流れ

処理の流れについては、このサイトがとてもわかり易かったです。
商品情報の登録・更新など一括処理に関するAPI
以下、このサイトからの引用です。

ステップ1 - SubmitFeed アップロードファイルを準備し、暗号化ヘッダーとファイルを関数を利用し、アップロードする。
ステップ2 - GetFeedSubmissionList 関数を利用し処理状況を取得する。
ステップ3 - 処理状況チェック ステップ2で正常終了を確認し、次のステップに進む。
ステップ4 - GetFeedSubmissionResult 関数を利用し、処理結果を取得する。
ステップ5 - エラーチェック 処理結果で正常終了を確認する。エラー発生時には、次のステップに進む。
ステップ6 - 再アップロード アップロードファイルを修正し、再度、ステップ1に進む。

Amazon MWS Scratchpadで試す。

Amazon MWS Lanchpad
ここで、APIセクションとOperationを選んで、それぞれ必要なパラメータを設定していきます。

例えば、在庫更新を行うので、
ステップ1 - SubmitFeed であれば、APIセクションは、フィードで、Operationは、SubmitFeed という具合に選んでいきます。

その他のステップも同様に設定していけば、動作すると思います。

PHPプログラム実装

Amazon MWS Scratchpad の「リクエストの詳細」をそのまま使って、HTTPリクエスト出来るかと考えていたので、charlsを使ってテストしてると、セキュリティ関連のエラーが出て数時間。進み具合が悪かったので、Amazonが提供しているライブラリを使うことにした。汗

MrXの徒然なるブログ

ここのページが分かりやすかったので、載せておきます。
基本的にはAmazonが提供しているAPIライブラリを使用して実装します。