php - 添加发票时 QuickBooks IPP v3 出现错误 3200

标签 php quickbooks quickbooks-online

我在生产环境中使用 QuickBooks PHP DevKit 已经有一段时间了,没有任何问题。

但是,最近我从 create_invoice ajax 脚本中吐出以下错误:

if($resp = $InvoiceService->add($Context, $realm, $Invoice)){ 
    //create invoice code here
} else 
{
    echo $InvoiceService->lastError();
}

我收到以下错误:

3200: [message=ApplicationAuthenticationFailed; errorCode=003200; statusCode=401, ]

关于此错误,我能找到的唯一文档是错误代码 3200 表示“过时的编辑序列”,但我正在创建发票。

那么为什么会突然出现这个错误呢?

它似乎从 7 月 11 日开始给我这个错误。在此之前一切正常。

我是否需要刷新我的访问 token ,我该怎么做?

最佳答案

The only documentation I can find about this error is that error code 3200 means "Outdated edit sequence" but I am creating an Invoice.

错误代码 3200(对于 qbXML)与错误代码 003200(对于 IPP/v3)完全不同,因此“过时的编辑序列”在这里根本不相关。

So why is this error all of a sudden appearing?

一般来说,“401 身份验证失败”错误几乎就是它所说的 - 针对应用程序的身份验证失败。

这可能是由于以下几个原因:

  • 您的 OAuth token 已过期(如果您不续订,它们将在 6 个月后过期)
  • 您的 OAuth token /连接已断开(这可以在 Intuit 提供的 UI 中完成)
  • 您不再发送正确的 OAuth token

您检查过您的 OAuth token 了吗?它们仍然有效吗?你发送正确的吗?

Do I need to refresh my access tokens, and how would I go about doing that?

也许。

您可以返回连接过程(例如再次单击“连接到 QuickBooks”按钮)以更新它们。

如果它们已过期(例如,您没有在 6 个月内续订),您应该实现重新连接调用以避免将来发生这种情况:

关于php - 添加发票时 QuickBooks IPP v3 出现错误 3200,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24891385/

相关文章:

php - 拉拉维尔 : Querying and accessing child objects in nested relationship with where clauses Many to Many relationship

quickbooks - 将 QBSDK 中的 Entires 关联到 IPP?

api - 使用 Postman 的 Quickbooks Online API 集合时出现身份验证错误

php - 无法刷新 Quickbooks API 中的访问 token 。检查 TLS 1.2 的 cURL 版本时出错

javascript - 如果没有附件,则发送消息,否则,描绘下载按钮

php - 如何在 codeigniter 中为 paypal 支付网关获取购物车值

php - mcrypt 在 windows/IIS 上的 PHP 5.6 中不起作用

soap - 如何在 Quickbooks Web 连接器中处理 sendRequestXML 中的零作业

quickbooks - 调用 intuit.ipp.anywhere.setup() 的最佳实践?

java - 在线快速手册 : REST API or Java SDK?