我已经实施了一个系统来下载亚马逊卖家的订单.系统的工作方式如下:
其中一些订单待定,如果是,我们将它们存储在我们的数据库中,并在下次检查它们是否可以下载.我们的下一个工作将在接下来的两个小时间隔内运行,要求所有订单从2:00到3:58.
此操作运行正常,但我们的客户开始报告他们的订单丢失.显然,时不时的订单会滑过众所周知的裂缝,我们不确定为什么.为了解决这个问题,我们设置了30分钟的重叠时间,这样每次下载订单时我们都会看到过去30分钟.除了下载冗余订单的代价之外,我们还要检查数据库以查看订单是否已经处理过,因此它会减慢速度.
而在伤口擦盐,仍然没有解决问题!它不会经常发生,但平均每天有0-4个订单丢失.
通过 ListOrders 获取订单似乎有很多陷阱。
以下是MWS 支持人员的回复,
请注意,订单仅在通过了一些内部检查(主要针对欺诈订单)后才会填充到 ListOrders 数据中。这意味着订单创建和订单显示在 API 查询(或 SellerCentral)之间会有延迟。这种延迟通常是几分钟,偶尔是半小时,很少是几个小时。
有些订单很快就会从待处理状态转变为未发货状态。订单 ID --- 处于待处理状态仅 7 秒,您发出的所有请求都是在该订单实际可供 API 填充到 ListOrders 之前。甚至订单 --- 也处于待处理状态 17 秒,而您在此之前已提出请求。一旦您收到电子邮件通知,它们就不再处于待处理状态。
由于您是按创建日期选择订单,因此您可能很容易错过已创建但尚未通过待处理状态的订单。
根据我的经验,获取所有订单的可靠方法是致电GetReportList,询问所有_GET_ORDERS_DATA_尚未确认的报告 - 然后确认您存储在系统中的报告。亚马逊系统中的“已确认”标志使两个系统保持同步。该解决方案的优点在于您不必担心时间戳。
| 归档时间: |
|
| 查看次数: |
1191 次 |
| 最近记录: |