如何获取亚马逊MWS报告Java客户端库以下载特定的文档版本

时间:2015-07-16 21:36:24

标签: java amazon-mws

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

我添加了一些代码,这些代码将通过Amazon Java客户端库使用MWS Reports API来搜索可用的结算报告,并允许用户选择他们想要的,获取并处理它。除了不处理退款外,这一切都正常。

在比较不同方法检索到的XML时,我发现下载的文件比API中的文件格式更新。

<DocumentVersion>'4.01'</DocumentVersion>

对战:

<DocumentVersion>'3.01'</DocumentVersion>

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

当我试图找到答案时,我遇到了2014年8月11日的MWS论坛帖子:

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

这宣布了对结算报告的更改以及客户端库未更改的“注释”。

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

有人可以建议我如何告诉客户端库使用哪个版本?

P.S。另一个问题是缺少最新报告......

1 个答案:

答案 0 :(得分:0)

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

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

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

重要的部分是:

  

XML结算报告的枚举值正在从_GET_PAYMENT_SETTLEMENT_DATA_变为_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。