今回は、Amazon MWSを使ったFBA納品におけるスピード受領への対応方法についてご紹介します。
複数の輸送箱での納品においてスピード受領を可能にするには、輸送箱内の商品情報をフィードAPI 経由で「FBA納品梱包明細情報フィード」形式で送信する必要があります。
※現在のところ、当該フィードはXML形式のみサポートされます。フラットファイル(TSV形式)での送信は対応していません。
■ FBA納品梱包明細情報フィード
「FBA納品梱包明細情報フィード」は、納品する輸送箱ごとの商品とその個数の情報で構成されるXML形式のファイルです。
FeedType
_POST_FBA_INBOUND_CARTON_CONTENTS_
XMLスキーマ
XSD: CartonContentsRequest.xsd
※すべてのXML フィードに共通するCoreスキーマについては、セラーセントラルのヘルプをご参照ください。
エレメントの詳細
ShipmentId
|
CreateInboundShipmentPlanオペレーションで返される納品番号
|
NumCartons
|
納品する輸送箱の数
|
Carton
|
各輸送箱に含まれる商品の情報を表す要素で、以下の2つの子要素で構成されます。
- CartonId ・・・ 納品する輸送箱を識別するためのID。
- Item ・・・ 輸送箱に含まれる商品の情報を設定する要素です。以下の子要素で構成されます。
SKU
|
商品のSKU
|
QuantityShipped
|
輸送箱に含まれる商品の数
|
QuantityInCase
|
A. 輸送箱に異なる商品が混在する場合 ・・・ 1 を指定
B. 商品ごとに輸送箱を分ける場合 ・・・ QuantityShippedと同数を指定
(詳細は下記参照)
|
ExpirationDate
(オプション)
|
消費期限 (要期限管理商品では必須)
例: <ExpirationDate>2016-12-31Z</ExpirationDate>
|
※輸送箱に異なるSKUが混在する場合、SKUと同数のItem要素を記載します。
|
※複数の輸送箱で納品する場合、輸送箱と同数のCarton要素を続けて記載します。
|
QuantityInCaseの設定方法は「A. 輸送箱に異なる商品が混在する場合」と「B. 商品ごとに輸送箱を分ける場合」で異なります。
以下にそれぞれの設定方法をご説明します。
A. 輸送箱に異なる商品が混在する場合
- セラーセントラルでの納品において、梱包のタイプに「異なる商品が輸送箱に混在」を選択する場合。
- 単一のSKUで構成されていても輸送箱ごとに、含まれる商品の数が異なる場合。
- MWSのCreateInboundShipmentのリクエストパラメータで、AreCasesRequired = false を指定する場合。
|
このように輸送箱に異なるSKUが混在する場合には、QuantityInCase には常に 1 を設定します。
また、このときQuantityInCase には各輸送箱に含まれる該当商品の数を指定します。(=QuantityShipped)
対応するセラーセントラルの納品作成画面
以下の画面は、2つのSKUを2つの輸送箱にそれぞれ混在させて納品するときの例です。
この情報を「FBA納品梱包明細情報フィード」で送信する場合、XMLの各要素に指定する値は以下のようになります。
① ・・・ NumCartonsの値
②, ③, ④, ⑤ ・・・ QuantityShippedの値
この場合のXMLのサンプルは以下のようになります。
<?xml version="1.0" encoding="utf-8" ?>
<AmazonEnvelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="amzn-envelope.xsd">
<Header>
<DocumentVersion>1.01</DocumentVersion>
<MerchantIdentifier>M_SELLER_ID</MerchantIdentifier>
</Header>
<MessageType>CartonContentsRequest</MessageType>
<Message>
<MessageID>1</MessageID>
<CartonContentsRequest>
<ShipmentId>FBA******</ShipmentId>
<NumCartons>2</NumCartons>
<Carton>
<CartonId>FBA******U001</CartonId>
<Item>
<SKU>SKU20150205A</SKU>
<QuantityShipped>1</QuantityShipped>
<QuantityInCase>1</QuantityInCase>
</Item>
<Item>
<SKU>SKU20150205B</SKU>
<QuantityShipped>2</QuantityShipped>
<QuantityInCase>1</QuantityInCase>
</Item>
</Carton>
<Carton>
<CartonId>FBA******U002</CartonId>
<Item>
<SKU>SKU20150205A</SKU>
<QuantityShipped>1</QuantityShipped>
<QuantityInCase>1</QuantityInCase>
</Item>
<Item>
<SKU>SKU20150205B</SKU>
<QuantityShipped>4</QuantityShipped>
<QuantityInCase>1</QuantityInCase>
</Item>
</Carton>
</CartonContentsRequest>
</Message> </AmazonEnvelope>
|
B. 商品ごとに輸送箱を分ける場合(輸送箱に単一のSKUの商品のみが含まれる)
- セラーセントラルでの納品において、 梱包のタイプに「商品ごとに輸送箱を分ける」を選択する場合。
- MWSでの納品において、CreateInboundShipmentのリクエストパラメータで AreCasesRequired = true とする場合。
|
メーカー梱包での納品など、同じ商品(SKU)が各輸送箱に同じ数だけ含まれている場合は、QuantityInCase には各輸送箱に含まれる該当商品の数を指定します。(=QuantityShipped)
対応するセラーセントラルの納品作成画面
以下の画面は、SKU:SKU20150205Aの商品を1つの輸送箱に入れ、SKU:SKU20150205Bの商品を2つの輸送箱に同じ数ずつ入れて納品するときの例になります。
この情報を「FBA納品梱包明細情報フィード」で送信する場合、XMLの各要素に指定する値は以下のようになります。
①, ③ ・・・ QuantityInCase の値(=QuantityShipped)
②, ④ ・・・ 該当SKUを指定したCarton要素の数
この場合のXMLのサンプルは以下のようになります。
<?xml version="1.0" encoding="utf-8" ?>
<AmazonEnvelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="amzn-envelope.xsd">
<Header>
<DocumentVersion>1.01</DocumentVersion>
<MerchantIdentifier>M_SELLER_ID</MerchantIdentifier>
</Header>
<MessageType>CartonContentsRequest</MessageType>
<Message>
<MessageID>1</MessageID>
<CartonContentsRequest>
<ShipmentId>FBA******</ShipmentId>
<NumCartons>3</NumCartons>
<Carton>
<CartonId>FBA******U001</CartonId>
<Item>
<SKU>SKU20150205A</SKU>
<QuantityShipped>2</QuantityShipped>
<QuantityInCase>2</QuantityInCase>
</Item>
</Carton>
<Carton>
<CartonId>FBA******U002</CartonId>
<Item>
<SKU> SKU20150205B </SKU>
<QuantityShipped>3</QuantityShipped>
<QuantityInCase>3</QuantityInCase>
</Item>
</Carton>
<Carton>
<CartonId>FBA******U003</CartonId>
<Item>
<SKU>SKU20150205B</SKU>
<QuantityShipped>3</QuantityShipped>
<QuantityInCase>3</QuantityInCase>
</Item>
</Carton>
</CartonContentsRequest>
</Message>
</AmazonEnvelope>
|
以上、皆様の開発時の参考となれば幸いです。