1

我在我的网站上集成了快速手册。我正在通过 XML 发送请求以在 Quickbook 中添加发票。

长期以来它工作正常。现在我想通过 Quickbook API 检查重复发票,因为有时我们无法从 Quickbook 获得添加发票的响应,所以我们再次发送添加发票的请求,以便它获取重复发票,所以如果 Quickbook 的任何 API 有助于检查重复发票之前通过 api 添加任何发票。

我在快速手册文档上找不到任何用于检查重复发票的 api。

谢谢

4

1 回答 1

2

如果您没有 TxnID,则确实无法在 QuickBooks 中检测“重复”发票。

您可以获得的最接近的是通过 RefNumber 进行查询(QuickBooks qbXML 用于通过 RefNumber 进行查询)但是因为 QuickBooks 允许重复的 RefNumbers(即在 QuickBooks 中拥有两个或多个 Invoice #1234 是完全有效的),因此无法保证您收到的发票来自该查询的是创建的发票。

综上所述,听起来您正在尝试解决错误的问题。您正在尝试解决此问题:

现在我想通过 Quickbook API 检查重复发票

当您应该尝试解决此问题时:

有时我们无法从 quickbook 获得添加发票的回复

如果您在谈论 QuickBooks Online

您应该始终从 QuickBooks Online 服务器获得某种 HTTP 响应如果您没有收到回复,可能是您等待响应的时间不够长,或者您的代码中有错误,无法正确处理响应。

您可以发布您的 cURL curl_getinfo($curl) 输出,以及代码中 ->lastRequest() 和 ->lastResponse() 的结果吗?

如果您正在谈论适用于 Windows 的 QuickBooks

重要的是要认识到 QuickBooks 和 Web 连接器将始终尝试向您发送响应(QuickBooks Web 连接器文档)。总是。您可能完全错过响应的唯一方法是如果您失去了互联网连接,即使那样您至少应该知道请求是否已发送到 QuickBooks,因此知道不要再次发送它。

如果您没有收到回复,那么您有 99.9% 的可能性是做错了事情,导致您没有收到回复。

底线:

You should focus on why you're not getting the responses in your program and fix the source of this problem, rather than trying to fix a symptom.

于 2013-01-24T12:22:24.717 回答