我一直在使用PHP devkit开发一个IPP应用程序。我一直在使用从$ object-> asIDSXML()方法返回的XML来通过API Explorer调试我的对象。在API Explorer中,我在尝试创建销售收据时收到了一个非常模糊的错误,我希望我能够了解有关方案要求的更多信息。某处有验证xsd文件吗?我目前无法理解为什么我会收到以下500个代码。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <FaultInfo
xmlns="http://www.intuit.com/sb/cdm/baseexceptionmodel/xsd">
<Message>Internal Server Error</Message>
<ErrorCode>500</ErrorCode>
<Cause>SERVER</Cause> </FaultInfo>
关于500州的文件有以下几点:
可能的原因: 非法许可。 在验证过程中未验证的非法值。 业务逻辑验证的数据无效。
我知道我有适当的权限,我已经使用具有所有权限的OAuth令牌进行了身份验证。我认为后两种可能性是问题,但我不知道如何获得有关潜在无效或缺失数据的任何其他信息。我确实尝试使用API资源管理器创建副本来检索SalesReceipt XML,然后删除DocumentID并通过API资源管理器发送到创建POST,此时我收到上面显示的相同错误。
以下是提供给API的XML发布数据。据我所知,xml包含创建销售收据之前的所有必填字段。在此先感谢您的帮助。
<SalesReceipt>
<Header>
<TxnDate>2013-04-16-07:00</TxnDate>
<CustomerId idDomain="QBO">78</CustomerId>
<TotalAmt>4.00</TotalAmt>
<ShipAddr>
<Line1>123 Fake Ave</Line1>
<City>Fake City</City>
<CountrySubDivisionCode>ID</CountrySubDivisionCode>
<PostalCode>83854</PostalCode>
</ShipAddr>
</Header>
<Line>
<Id>1</Id>
<Desc>Face to face IT Consulting Services, providing solutions to client's IT issues.</Desc>
<Amount>4.00</Amount>
<Taxable>false</Taxable>
<ItemId>17</ItemId>
<UnitPrice>4.00</UnitPrice>
<Qty>1</Qty>
</Line>
</SalesReceipt>
答案 0 :(得分:0)
请你试试以下
<SalesReceipt xmlns='http://www.intuit.com/sb/cdm/v2'>
<Header xmlns:ns3='http://www.intuit.com/sb/cdm/v2'>
<ns3:TxnDate>2013-04-16-07:00</ns3:TxnDate>
<ns3:CustomerId>78</ns3:CustomerId>
<ns3:TotalAmt>4.00</ns3:TotalAmt>
<ShipAddr>
<Line1>123 Fake Ave</Line1>
<City>Fake City</City>
<CountrySubDivisionCode>ID</CountrySubDivisionCode>
<PostalCode>83854</PostalCode>
</ShipAddr>
</Header>
<Line xmlns:ns11='http://www.intuit.com/sb/cdm/v2'>
<ns11:Id>101</ns11:Id>
<ns11:Desc>Face to face IT Consulting Services, providing solutions to client's IT issues.</ns11:Desc>
<ns11:Amount>4.00</ns11:Amount>
<ns11:Taxable>false</ns11:Taxable>
<ns11:ItemId>17</ns11:ItemId>
<ns11:UnitPrice>4.00</ns11:UnitPrice>
<ns11:Qty>1</ns11:Qty>
</Line>
</SalesReceipt>