这里有一个PHP QuickBooks 库 https://github.com/consolibyte/quickbooks-php这正是你想做的。
您应该遵循QuickBooks PHP Web 连接器快速入门指南 http://www.consolibyte.com/docs/index.php/PHP_DevKit_for_QuickBooks_-_Quick-Start开始。您需要构建应用程序,以便 PHP 脚本可以接收数据,将其临时存储在数据库(MySQL 等)中,然后 Web 连接器可以从那里获取发往 QuickBooks 的数据。
Web 连接器与标准 Web 服务略有不同,因为它以一种向后的方式工作 - Web 连接器将调用您的 PHP 网络服务与你呼唤它相比。
有一个Web 连接器如何工作的概述请参见此处 http://wiki.consolibyte.com/wiki/doku.php/quickbooks_web_connector.
您应该参考此脚本(如上面的快速入门指南所示):
- https://github.com/consolibyte/quickbooks-php/tree/master/docs/example_app_web_connector https://github.com/consolibyte/quickbooks-php/tree/master/docs/example_app_web_connector
您最终将编写函数来生成如下所示的 qbXML 请求:
<?php
/**
* Example Web Connector application
*
* This is a very simple application that allows someone to enter a customer
* name into a web form, and then adds the customer to QuickBooks.
*
* @author Keith Palmer <[email protected] /cdn-cgi/l/email-protection>
*
* @package QuickBooks
* @subpackage Documentation
*/
/**
* Generate a qbXML response to add a particular customer to QuickBooks
*/
function _quickbooks_customer_add_request($requestID, $user, $action, $ID, $extra, &$err, $last_action_time, $last_actionident_time, $version, $locale)
{
// Grab the data from our MySQL database
$arr = mysql_fetch_assoc(mysql_query("SELECT * FROM my_customer_table WHERE id = " . (int) $ID));
$xml = '<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="2.0"?>
<QBXML>
<QBXMLMsgsRq onError="stopOnError">
<CustomerAddRq requestID="' . $requestID . '">
<CustomerAdd>
<Name>' . $arr['name'] . '</Name>
<CompanyName>' . $arr['name'] . '</CompanyName>
<FirstName>' . $arr['fname'] . '</FirstName>
<LastName>' . $arr['lname'] . '</LastName>
</CustomerAdd>
</CustomerAddRq>
</QBXMLMsgsRq>
</QBXML>';
return $xml;
}