在 QuickBooks 中修改发票出现异常 "QuickBooks found an error when parsing the provided XML text stream."?

Modify invoice in QuickBooks gives exception "QuickBooks found an error when parsing the provided XML text stream."?

我正在使用桌面版 Quickbooks SDK (qbxml) 修改发票,但出现错误“QuickBooks 在解析提供的 XML 文本流时发现错误."我使用 C# 作为开发语言。我正在使用 "Other" 和 "FOB" 字段来显示 UPS 运输详细信息。

<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="13.0"?>
<QBXML>
 <QBXMLMsgsRq onError="stopOnError">
  <InvoiceModRq requestID="2">
   <InvoiceMod>
    <TxnID>18D23-1422298930</TxnID>
    <EditSequence>1423512371</EditSequence>
    <Other>1ZAV49630440508209</Other>
    <ShipDate>2015-02-03</ShipDate>
    <FOB>2015-02-04</FOB>
   </InvoiceMod>
  </InvoiceModRq>
 </QBXMLMsgsRq>
</QBXML>

这有什么问题吗?

qb 中元素的顺序XML很重要

如果您参考文档:

或一些常见问题解答:

您会注意到它指定了此订单(FOB,然后是 ShipDate):

...
<FOB >STRTYPE</FOB> <!-- optional -->
<ShipDate >DATETYPE</ShipDate> <!-- optional -->
...

当您指定此订单时(ShipDate,然后是 FOB):

...
<ShipDate>2015-02-03</ShipDate>
<FOB>2015-02-04</FOB>
...

修正 XML 元素的顺序,一切就绪。