首页
学习
活动
专区
圈层
工具
发布

(订单)
EN

Stack Overflow用户
提问于 2017-10-20 12:22:47
回答 1查看 2.7K关注 0票数 1

我是使用FBA的亚马逊卖家。我开始和MWS一起玩。

第一个问题是:

对于“报告/亚马逊/所有订单的履行情况”和报告/付款/日期范围报告,哪种api (订单或报告)是最佳的

2

我从ion=orders&version=latest下载了PHP的“订单”

..。当然还有问题

在config.inc.php中,我设置了所有数据,另外:

代码语言:javascript
复制
//set_include_path(get_include_path() . PATH_SEPARATOR . '../../.');
$path = 'http://MYWEBSITE/amazon-mws/';
set_include_path(get_include_path() . PATH_SEPARATOR . $path);

这些文件看起来像

我测试文件"ListOrdersSample1“

代码语言:javascript
复制
<?php

/**
 * List Orders Sample
 */

require_once('.config.inc.php');

/************************************************************************
 * Instantiate Implementation of MarketplaceWebServiceOrders
 *
 * AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY constants
 * are defined in the .config.inc.php located in the same
 * directory as this sample
 ***********************************************************************/
// More endpoints are listed in the MWS Developer Guide
// North America:
//$serviceUrl = "https://mws.amazonservices.com/Orders/2013-09-01";
// Europe
$serviceUrl = "https://mws-eu.amazonservices.com/Orders/2013-09-01";
// Japan
//$serviceUrl = "https://mws.amazonservices.jp/Orders/2013-09-01";
// China
//$serviceUrl = "https://mws.amazonservices.com.cn/Orders/2013-09-01";


 $config = array (
   'ServiceURL' => $serviceUrl,
   'ProxyHost' => null,
   'ProxyPort' => -1,
   'ProxyUsername' => null,
   'ProxyPassword' => null,
   'MaxErrorRetry' => 3,
 );

 $service = new MarketplaceWebServiceOrders_Client(
        AWS_ACCESS_KEY_ID,
        AWS_SECRET_ACCESS_KEY,
        APPLICATION_NAME,
        APPLICATION_VERSION,
        $config);

/************************************************************************
 * Uncomment to try out Mock Service that simulates MarketplaceWebServiceOrders
 * responses without calling MarketplaceWebServiceOrders service.
 *
 * Responses are loaded from local XML files. You can tweak XML files to
 * experiment with various outputs during development
 *
 * XML files available under MarketplaceWebServiceOrders/Mock tree
 *
 ***********************************************************************/
 $service = new MarketplaceWebServiceOrders_Mock();

/************************************************************************
 * Setup request parameters and uncomment invoke to try out
 * sample for List Orders Action
 ***********************************************************************/
 // @TODO: set request. Action can be passed as MarketplaceWebServiceOrders_Model_ListOrders
 $request = new MarketplaceWebServiceOrders_Model_ListOrdersRequest();
 $request->setSellerId(MERCHANT_ID);
 // object or array of parameters
 invokeListOrders($service, $request);

/**
  * Get List Orders Action Sample
  * Gets competitive pricing and related information for a product identified by
  * the MarketplaceId and ASIN.
  *
  * @param MarketplaceWebServiceOrders_Interface $service instance of MarketplaceWebServiceOrders_Interface
  * @param mixed $request MarketplaceWebServiceOrders_Model_ListOrders or array of parameters
  */

  function invokeListOrders(MarketplaceWebServiceOrders_Interface $service, $request)
  {
      try {
        $response = $service->ListOrders($request);

        echo ("Service Response\n");
        echo ("=============================================================================\n");

        $dom = new DOMDocument();
        $dom->loadXML($response->toXML());
        $dom->preserveWhiteSpace = false;
        $dom->formatOutput = true;
        echo $dom->saveXML();
        echo("ResponseHeaderMetadata: " . $response->getResponseHeaderMetadata() . "\n");

     } catch (MarketplaceWebServiceOrders_Exception $ex) {
        echo("Caught Exception: " . $ex->getMessage() . "\n");
        echo("Response Status Code: " . $ex->getStatusCode() . "\n");
        echo("Error Code: " . $ex->getErrorCode() . "\n");
        echo("Error Type: " . $ex->getErrorType() . "\n");
        echo("Request ID: " . $ex->getRequestId() . "\n");
        echo("XML: " . $ex->getXML() . "\n");
        echo("ResponseHeaderMetadata: " . $ex->getResponseHeaderMetadata() . "\n");
     }
 }

我试着用来测试

代码语言:javascript
复制
$service = new MarketplaceWebServiceOrders_Mock();

但什么都没发生。配置中的路径正确吗?我不明白

代码语言:javascript
复制
$serviceUrl = "https://mws-eu.amazonservices.com/Orders/2013-09-01";

我应该更改日期吗?

我需要一个小的例子来开始。

非常感谢

EN

回答 1

Stack Overflow用户

发布于 2017-10-23 15:46:07

  1. 这取决于你想要完成什么。我认为,如果您需要对订单执行一些可操作的操作,比如自己发货(商人完成而不是FBA),Orders是有益的。 如果您主要使用数据进行报告,则reports更有用。我使用的主要报告之一是_GET_AMAZON_FULFILLED_SHIPMENTS_DATA_,因为它在实际发货后给出了销售数据。仅仅因为有人订购了一些东西,并不意味着他们真的会得到这个东西。有时,由于信用卡被拒绝,或他们很快取消,订单失败,等等。
  2. 日期是您正在使用的API的版本。在2013-09-01年间。我强烈建议使用便签来查看为每种请求返回的数据类型。它还有助于可视化您需要提供什么样的参数。得到预期的结果。在编写代码之前我总是从这里开始。https://mws.amazonservices.co.uk/scratchpad/index.html (将co.uk改为您想要的任何东西,.de等)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46848987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档