你如何找到应用到Magento的SOAP API的顺序发货?(How do you find the

2019-10-22 09:20发布

下面是一个销售订单API文档: http://www.magentocommerce.com/api/soap/sales/salesOrder/sales_order.info.html

下面是一个出货的API文档: http://www.magentocommerce.com/api/soap/sales/salesOrderShipment/salesOrderShipment.html

我不能为我的生活弄清楚如何建立它们之间的关系。 订单/信息端点似乎并不返回任何种类和订单/出货终点似乎并没有被ORDER_ID过滤的shipment_id。

Answer 1:

这通过对订单的过滤器,可以order_id值。

需要注意的是order_id是订单的不同increment_id这是面临的参考数字通常客户。 因此,一个额外的步骤是需要订单的基准转换为order_id

我不能给你工作的PHP代码,我在Java中的工作,但我可以描述的方法:

  1. 获取订单数据的订单号( increment_id使用) sales_order.info API调用
  2. 得到order_id从订单数据
  3. 使用order_id作为一个过滤器sales_order_shipment.list
  4. 这会给你与每个发货清单increment_id 。 此ID是出货的参考。
  5. 使用出货的increment_idsales_order_shipment.info获得更多的细节。


Answer 2:

这里是PHP代码来完成@Kevin萨德勒回答:

/** @var array $filters */
$filters = array(
    array('order_id' => array('eq' => $orderId)) // Entity ID, not Increment ID
);

/** @var array $orderShipments */
$orderShipments = $client->call($session, 'sales_order_shipment.list', $filters);


文章来源: How do you find the shipments applied to an order in the Magento SOAP API?
标签: php magento soap