如何获取 Amazon MWS Reports Java 客户端库以下载特定文档版本

How to get Amazon MWS Reports Java client library to download specific Document version

我有一些处理亚马逊结算报告(XML 格式)的代码。到目前为止,用户会从 Amazon Seller Central 下载 XML 文件并将其加载到应用程序中进行处理。

我添加了一些代码,这些代码将通过亚马逊 Java 客户端库使用 MWS 报告 API 来搜索可用的结算报告并允许用户 select他们想要的,获取并处理它。这一切都很好,除了没有处理退款。

在比较通过不同方法检索到的 XML 时,我发现下载的文件格式比 API.

中的格式更新。

<DocumentVersion>'4.01'</DocumentVersion>

对战:

<DocumentVersion>'3.01'</DocumentVersion>

在旧版本中,<Refund> 元素称为 <Adjustment>,但 XML 在其他方面相同。

当我试图找到这个问题的答案时,我遇到了一个 MWS 论坛 post,日期为 2014 年 8 月 11 日:

https://sellercentral.amazon.com/forums/ann.jspa?annID=186

这里宣布对结算报告的更改,并且 "notes" 客户端库没有更改。

报告的最新版本 API Java 客户端于 2014 年 9 月 30 日发布(即在公告之后),但这是我正在使用的版本,所以似乎没有使用新文档版本。

谁能建议我如何告诉客户端库使用哪个版本?

P.S。另一个问题是最新的报告丢失了...

我之前错过了另一个公告:

https://sellercentral.amazon.com/forums/ann.jspa?annID=240

这才是真正的问题,它解释了为什么缺少自 5 月底以来的报告。

重要的部分是:

The enumeration value for the XML Settlement Report is changing from _GET_PAYMENT_SETTLEMENT_DATA_ to _GET_V2_SETTLEMENT_REPORT_DATA_XML_.

因此在设置报告列表请求时,您需要更改报告类型,如下所示:

    GetReportListRequest req = new GetReportListRequest();

    ArrayList<String> typeArrayList = new ArrayList<String>();
    typeArrayList.add("_GET_V2_SETTLEMENT_REPORT_DATA_XML_");

    TypeList typeList = new TypeList();
    typeList.setType(typeArrayList);

    req.setReportTypeList(typeList);

完成此操作后,可以找到较新的报告并找到调整和退款的 XML。