我试图通过Magento SOAP API提高订单发票,但我得到的订单不存在'我知道存在增量ID的错误。
我的SOAP请求生成的XML是:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" >
<soap:Body>
<salesOrderInvoiceCreate xmlns="urn:Magento">
<sessionId>a4b84a4900415cb6a61b3f81e4fxxxx4</sessionId>
<orderIncrementId>100000001</orderIncrementId>
<itemsQty SOAP-ENC:arrayType="SOAP-ENC:Array[1]" xsi:type="SOAP-ENC:Array">
<item><order_item_id>1</order_item_id>
<qty>1.0000</qty>
</item>
</itemsQty>
<email>liam@xxxxxxx.com</email>
</salesOrderInvoiceCreate>
</soap:Body>
</soap:Envelope>
我回复的回应是
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>103</faultcode>
<faultstring>Requested order not exists.</faultstring>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
我不确定我是否没有通过正确的值,但我使用的其他方法(加载订单等)都按预期工作。
任何建议都将不胜感激。
谢谢!
答案 0 :(得分:0)
好的,显然文档错了。
根据Magento文档: http://www.magentocommerce.com/api/soap/sales/salesOrderInvoice/sales_order_invoice.create.html
期待orderIncrementId的参数
但是,我已经检查过WSDL,并且它期望有一个invoiceIncrementId字段,尽管它仍然应该包含订单的增量ID - 去图。