Quickbooks桌面通过REST API发送信息


Quickbooks Desktop to send information through REST API

很快我将被要求在Quickbooks Desktop和PHP网站之间进行集成。我知道有一个PHP QuickBooks类可以帮助集成,但据我所知,它只有在PHP站点启动与Desktop应用程序的联系时才有效。我需要的是,当在QuickBooks上创建采购订单和/或产品时,它将自动(即时)使用REST API将信息发送到我的网站。考虑到将连接多个QuickBooks Desktop实例(我们将允许客户使用我们将构建的QuickBooks应用程序),必须不断检查所有这些QuickBooks桌面实例是否有自上次检查以来创建的任何新采购订单或产品是不现实的。

有没有一种方法可以在QuickBooks中添加代码,使用REST API将采购订单和产品(在创建时)发送到我的网站?

感谢

QuickBooks本身并没有任何可靠的方法来捕捉您所说的事件,也没有任何方法将这些事件中继到外部REST API。所以,你不会找到你想要的东西——这是不可能的。

使用上述,您可以通过让外部应用程序定期(每隔几秒钟)轮询QuickBooks以从中获取新数据,然后将该数据转发到REST API来接近

最简单的方法是通过Web连接器。它可以频繁地进行1分钟的民意调查,并且能够准确地做你所说的事情。如果你想使用Web连接器,你最好的选择可能是这个开源的QuickBooks PHP DevKit(免责声明:我是作者)。您可以从Web连接器快速入门指南开始。

较难,但更灵活的方法是编写一个自定义QuickBooks SDK应用程序,该应用程序位于QuickBooks旁边,定期轮询QuickBooks,并将数据转发到您的应用程序。如果你想做到这一点,你应该看看QuickBooks SDK——它有一些C#和VB.NET的例子,这些例子应该很有用。

一些具体注意事项:

但据我所知,只有当PHP站点启动与Desktop应用程序的联系时,它才有效。

实际上没有-只有当Web连接器(与QuickBooks一起运行)启动通信时,它才起作用。但你可以将其设置为每1分钟运行一次,这使得它几乎可以持续运行并将数据推送到你的应用程序中。

它将自动

这可以通过Web连接器或自定义SDK应用程序轻松实现。

(瞬间)

这是不可行的。QuickBooks的执行速度甚至不够快,无法即时中继数据。您永远不会从QuickBooks获得即时数据传输,所以现在就忘掉它吧。(这是,尤其是当你意识到QuickBooks中有很多东西可以完全锁定集成应用程序,甚至无法连接到数据文件时——单用户模式、QuickBooks自动更新、QuickBooks未运行、QuickBook中有太多用户等。)

使用REST API将信息发送到我的网站。

如果使用Web连接器,您的网站将接收数据,然后您可以转换数据并将其发送到REST API。

如果使用自定义SDK应用程序,您可以编写自定义代码来实现这一点,没有问题。

必须不断检查所有QuickBooks Desktop实例是否都有自上次检查以来创建的任何新采购订单或产品,这是不现实的。

你确定吗?我们每天都在为成千上万的人做这件事,他们使用的硬件功率低得离谱。