PHP
Chilkat2 PHP
MWS List Orders (Amazon Marketplace Web Service)
See more Amazon MWS Examples
Send an MWS ListOrders request to return a list of orders created or updated during a time frame.Important: The Chilkat v9.5.0.75 release accidentally breaks Amazon MWS (not AWS) authentication. If you need MWS with 9.5.0.75, send email to support@chilkatsoft.com for a hotfix, or revert back to v9.5.0.73, or update to a version after 9.5.0.75.
Chilkat PHP Downloads
<?php
use Chilkat2\Rest;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
$rest = new Rest();
// ------------------------------------------------------------
// About using Chilkat with Amazon Marketplace SP-API
// ------------------------------------------------------------
// Connect to the Amazon MWS REST server.
//
// Make sure to connect to the correct Amazon MWS Endpoint, otherwise
// you'll get an HTTP 401 response code.
//
// The possible servers are:
//
// North America (NA) https://mws.amazonservices.com
// Europe (EU) https://mws-eu.amazonservices.com
// India (IN) https://mws.amazonservices.in
// China (CN) https://mws.amazonservices.com.cn
// Japan (JP) https://mws.amazonservices.jp
//
$bTls = true;
$port = 443;
$bAutoReconnect = true;
$rest->Connect('mws.amazonservices.com', $port, $bTls, $bAutoReconnect);
$rest->Host = 'mws.amazonservices.com';
// Add query params
$rest->AddQueryParam('Action', 'ListOrders');
$rest->AddQueryParam('CreatedAfter', '2016-12-31T23:00:00Z');
$rest->AddQueryParam('MarketplaceId.Id.1', 'MWS_MARKETPLACE_ID');
$rest->AddQueryParam('SellerId', 'MWS_SELLER_ID');
$rest->AddQueryParam('AWSAccessKeyId', 'MWS_ACCESS_KEY_ID');
$rest->AddQueryParam('SignatureVersion', '2');
$rest->AddQueryParam('SignatureMethod', 'HmacSHA256');
$rest->AddQueryParam('Version', '2013-09-01');
// Add the MWS Signature param. (Also adds the Timestamp parameter using the curent system date/time.)
$rest->AddMwsSignature('POST', '/Orders/2013-09-01', 'mws.amazonservices.com', 'MWS_SECRET_ACCESS_KEY_ID');
try {
$responseXml = $rest->FullRequestFormUrlEncoded('POST', '/Orders/2013-09-01');
} catch (\Chilkat2\Exception $e) {
echo $e->getMessage(), "\n";
exit;
}
if ($rest->ResponseStatusCode != 200) {
// Examine the request/response to see what happened.
echo 'response status code = ', $rest->ResponseStatusCode, "\n";
echo 'response status text = ', $rest->ResponseStatusText, "\n";
echo 'response header: ', $rest->ResponseHeader, "\n";
echo 'response body: ', $responseXml, "\n";
echo "---\n";
echo 'LastRequestStartLine: ', $rest->LastRequestStartLine, "\n";
echo 'LastRequestHeader: ', $rest->LastRequestHeader, "\n";
}
// Examine the XML returned in the response body.
echo $responseXml, "\n";
echo "----\n";
echo "Success.\n";