kukeneko/mws-orders-client

MWS Orders API 客户端库(个人使用)。

1.0.3 2018-04-13 15:41 UTC

This package is not auto-updated.

Last update: 2024-09-29 04:36:47 UTC


README

使用MWS订单API获取订单信息。

ListOrders操作在不指定OrderStatus的情况下将返回所有保留的订单。如果指定OrderStatus,则不能同时指定Unshipped和PartiallyShipped,只能指定其中之一。

示例代码1

使用ListOrders, ListOrderItems操作获取最近3小时的订单信息。

//***アカウント情報***
$sellerId = "***セラーID***";
$awsAccessKeyId = "***AWSアクセスキーID***";
$secretKey = "***シークレットキー***";
//3時間前から現在までの注文を取得する。
$date = new DateTime();
$date->sub(new DateInterval('PT3H'));
$client = new Kumaneko\MwsOrdersClient\Client();
$request = new Kumaneko\MwsOrdersClient\Request\ListOrdersRequest([
    'SellerId' => $sellerId,
    'AWSAccessKeyId' => $awsAccessKeyId,
    'CreatedAfter' => $date,
    'OrderStatus' => 'Unshipped',
    'SecretKey' => $secretKey
]);
$result = $client->listOrdersRequest($request);
$orders = $result->Orders;

//各注文ごとに注文商品情報を取得する。注文情報を表示する。(一部)
foreach ($orders as $order) {
    $request = new \Kumaneko\MwsOrdersClient\Request\ListOrderItemsRequest([
        'SellerId' => $sellerId,
        'AWSAccessKeyId' => $awsAccessKeyId,
        'AmazonOrderId' => $order->AmazonOrderId,
        'SecretKey' => $secretKey
    ]);
    $result = $client->listOrderItemsRequest($request);
    /** @var \Kumaneko\MwsOrdersClient\Response\Order $order */
    $order->OrderItems = $result->OrderItems;

    echo "AmazonOrderId: {$order->AmazonOrderId}\n";
    echo "OrderStatus: {$order->OrderStatus}\n";
    echo "PurchaseDate: {$order->PurchaseDate->format('Y-m-d H:i:s')}\n";
    echo "OrderTotal-Amount: {$order->OrderTotal['Amount']}\n";
    echo "OrderItems: \n";
    foreach ($order->OrderItems as $key => $orderItem) {
        /** @var \Kumaneko\MwsOrdersClient\Response\OrderItem $orderItem */
        echo "  OrderItem{$key}: \n";
        echo "    ASIN: {$orderItem->ASIN}\n";
        echo "    SellerSKU: {$orderItem->SellerSKU}\n";
        echo "    Title: {$orderItem->Title}\n";
        echo "    ItemPrice: {$orderItem->ItemPrice['Amount']}\n";
        echo "    ShippingPrice: {$orderItem->ShippingPrice['Amount']}\n";
    }
    sleep(1);
}

示例代码2

使用GetOrder操作获取订单状态

//***アカウント情報***
$sellerId = "***セラーID***";
$awsAccessKeyId = "***AWSアクセスキーID***";
$secretKey = "***シークレットキー***";
//***注文番号***。
$amazonOrderId = "***注文番号***";

$client = new Kumaneko\MwsOrdersClient\Client();
$request = new Kumaneko\MwsOrdersClient\Request\GetOrderRequest([
     'SellerId' => $sellerId,
     'AWSAccessKeyId' => $awsAccessKeyId,
     'AmazonOrderId' => ['Id' => ['1' => $amazonOrderId]],
     'SecretKey' => $secretKey
 ]);
 $result = $client->getOrderRequest($request);
 foreach ($result->Orders as $order) {
     echo "AmazonOrderID: {$order->AmazonOrderId}\n";
     echo "Status: {$order->OrderStatus}\n";
 }