2015-09-10 100 views
4

只是想知道,更新亞馬遜商城商品的價格是多麼容易(或者很難)。如何使用亞馬遜商城網絡服務(亞馬遜MWS)API更新產品價格

經過一番搜索,我找到了關於"Amazon Marketplace Web Service (Amazon MWS)"的文檔。我也檢查了API文檔和其中一個客戶端實現,但我無法(或者盲目,愚蠢,無論如何)找到有關爲特定產品設置價格的任何文檔。

還是我需要另一個API?

編輯:感謝@ScottG和@Keyur我發現'缺少的鏈接'飼料http://docs.developer.amazonservices.com/en_US/feeds/Feeds_SubmitFeed.html# 對於PHP,PHP-Client library下的src\MarketplaceWebService\Samples\SubmitFeedSample.php有一個很好的例子。 請參閱@ Keyur對_POST_PRODUCT_PRICING_DATA_FeedType示例的回答。

+0

什麼平臺/語言是您使用? – ScottG

+0

@ScottG什麼都沒有 - 只是想估計一下「簡單」價格變化所需的時間。我認爲客戶希望我用PHP來做。 – everyman

回答

4

你需要以下feed發送到亞馬遜MWS飼料的API,可以通過循環流通元件發出15種不同的SKU的價格飼料中一個請求每個SKU

$feed = <<< EOD 
<?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>$merchant_token</MerchantIdentifier> 
</Header> 
<MessageType>Price</MessageType> 
<Message> 
    <MessageID>$i</MessageID> 
    <Price> 
    <SKU>$sku</SKU> 
    <StandardPrice currency="$currency">$new_price</StandardPrice> 
    </Price> 
</Message> 
</AmazonEnvelope> 
EOD; 

$feedHandle = @fopen('php://temp', 'rw+'); 
fwrite($feedHandle, $feed); 
rewind($feedHandle); 

$parameters = array(
    'Merchant' => $MERCHANT_ID, 
    'MarketplaceIdList' => $marketplaceIdArray, 
    'FeedType' => '_POST_PRODUCT_PRICING_DATA_', 
    'FeedContent' => $feedHandle, 
    'PurgeAndReplace' => false, //Leave this PurgeAndReplace to false so that it want replace whole product in amazon inventory 
    'ContentMd5' => base64_encode(md5(stream_get_contents($feedHandle), true)) 
); 

$request = new MarketplaceWebService_Model_SubmitFeedRequest($parameters); 
$return_feed = invokeSubmitFeed($service, $request); 
fclose($feedHandle); 
+0

Amazon的文檔中引用的15請求配額適用於http請求本身,而不適用於每個請求中SKU的數量。例如,他們建議將名單保持在30,000件以下。 – phatfingers

1

使用Feed將產品發送給亞馬遜。我們使用第三方爲我們處理我們的問題,但您可以自己使用Feeds API和FeedType。你可以下載模板來幫助你。然後,您可以使用client libraries之一將此訂閱源發送給亞馬遜。

+0

謝謝!找到提交的文檔http://docs.developer.amazonservices.com/en_US/feeds/Feeds_SubmitFeed.html – everyman