⑰MWS実践-レポート(出品リスト取得)-PHP


AmazonのMWSで出品リストを取得するサンプルプログラムを提供します。
Amazonライブラリを使わずにPHPプログラムを記載していますので、カスタマイズされたい方にお勧めです。
MWSのレポート処理の動作は以前にこちらで説明していますので参照してください。(以前とのプログラム差分はAamzonライブラリを利用しているかいないかの違いです。)
動作はCentOS上で確認していますが、基本的にはどこでも動くはずです。
★★★設定必要★★★の部分をMWS登録で取得したIDに置き換えてください。

⑯MWS実践-フィード(出品/改定)-PHP-lib


AmazonMWSでAmazonへの商品を出品、価格改定、在庫の変更を行う方法について、PHPサンプルプログラム(題名にlibと記載しているのはAmazonのライブラリを利用するためです。)をつけて具体的に説明します。
バッチファイルでダブルクリックで送信できるので、ファイル名を日付で作成するようにしておけば、毎回セラーセントラルでファイルをUploadしなくても良いので作業が楽になると思います。

処理の流れですが、「フィード」処理は”CSVファイルのUpload”になります。処理したい内容はCSVファイル内に記載しますので、フィード処理自体はCSVをUploadすることと思ってよいです。つまり、フィードというのはMWSでは処理させる仕事をまとめて依頼要求と考えてもらうのが良いと思います。要求を出しても即時で結果が出るわけではありません。状態を確認しながら数分後に処理が完了しエラーがあるかを確認できます。

処理は以下の流れで処理されます。各①~③の処理はリクエストとレスポンスのREST-APIで処理されます。
①SubmitFeedでCSVファイルをUploadします。②GetSubmissionListで①の状態を確認しDONE(完了)になれば、③GetFeedSubmissionResultで実行結果を確認するという流れです。先ほども伝えたとおり①~③全て端末(orサーバ)からAmazonへのリクエストで処理が始まります。
詳細はAmazonのこちらを参照してください。
2

①フィード要求処理【SubmitFeed】
CSVファイルのUpload処理です。CSVファイル内に出品追加、削除や価格改定、在庫修正などの各種要求を商品ごとに記載します。
FeedTypeを”_POST_FLAT_FILE_INVLOADER_DATA_”で行うことで出品の追加削除が行えます。また、価格改定や在庫数の修正はFeedTypeを”_POST_FLAT_FILE_PRICEANDQUANTITYONLY_UPDATE_DATA_”で行えます。要求の受付応答時に”FeedSubmissionId”を取得でき、状況確認・結果取得等に用います。

②フィード処理状態確認【GetFeedSubmissionList】
①で送信したフィード要求の処理状態の確認を行う。処理状態を指定して確認する必要があり”_DONE_”(処理完了)で確認を行い、該当の”FeedSubmissionId”が存在すれば処理完了と判断を行う。

③フィード結果取得【GetFeedSubmissionResult】
②で処理完了したものに対して結果の取得を行う。①で取得した”FeedSubmissionId”を用いて結果をの確認を行い、結果は完了数とエラー数等が報告される。

以下が上記の流れを一通りの処理を行うPHPプログラムです。基本的にAmazonのライブラリを利用するので処理することを記載していけば動きます。■のところは各自の状況に合わせて修正してください。また、出力画面も綺麗ではないので、定義修正してください。

【Amazonのクライアントライブラリ】はこちら
(フィードとレポートAPIはライブラリが同一でした。商品APIなどは別です。)
【MWS接続方法】はこちら
【送信ファイルの作成方法(出品追加削除)】はこちら
【送信ファイルの作成方法(価格改定・在庫修正)】はこちら

⑮MWS実践-レポート(出品リスト取得)-PHP-lib


AmazonMWSで自分が出品している商品リストを取得する方法を説明します。PHPサンプルプログラム(題名にlibと記載しているのはAmazonのライブラリを利用するためです。)をつけて具体的に説明します。日々、変更される自分の出品リストを取得するのを自動化できますので、作業の効率化につながります。

まず、処理の流れを把握しておく必要があります。出品リストの取得はレポートAPIを用いて実施し要求を出してすぐに応答が返ってくるわけではありません。数分~1,2時間後(Amazonサーバの負荷状況や出品数に依存)に結果が返ってきて処理が完了し出品リストが取得できます。時間もかかるので私は毎日バッチファイルで取得するようにしています。

処理は下図の流れで処理されます。各①~③の処理はリクエストとレスポンスのREST-APIで処理され、①RequestReportでリクエストを送信し②GetRequestReportListで要求処理の状態を把握します。②でDONE(完了)になれば、③GetReportで作成された出品リストを取得します。
詳細はAmazonのこちらを参照してください。
1

①レポート要求処理【RequestReport】
Amazonに対して出品リスト(レポート)の作成依頼の要求を行います。ReportTypeを”_GET_MERCHANT_LISTINGS_DATA_”で行うことで出品リストを取得できる。要求の受付応答時に”ReportRequestId”を取得でき、状況確認・結果取得等に用います

②レポート処理状態確認【GetRequestReportList】
レポート要求の処理状態の確認を行う。処理の状態が”_DONE_”になれば処理は完了です。最近の処理が全て一覧で取得でき、処理を特定するため、①で取得した”ReportRequestId”を用いて、処理状態の確認を行います。

③レポート結果取得【GetReport】
②で処理の完了したものに対して、結果の取得を行います。今回でいけば出品リストが作成されているのでその取得を行います。①で取得した”ReportRequestId”を用いて、どの結果を取得するかを選択します。

以下が上記の流れを一通りの処理を行うPHPプログラムです。基本的にAmazonのライブラリを利用するので処理することを記載していけば動きます。★のところは各自の状況に合わせて修正してください。また、出力画面も綺麗ではないので、定義修正してください。

【Amazonのクライアントライブラリ】はこちら
(フィードとレポートAPIはライブラリが同一でした。商品APIなどは別です。)
【MWS接続方法】はこちら