我需要通过我的 php 网站自动在我的在线 quickbook 帐户上生成发票。我搜索了很多直觉和其他来源,但不知道从哪里开始或做什么。请帮助我..谢谢
问问题
449 次
1 回答
1
对于与 QuickBooks Online 的非 SaaS QuickBooks 集成,您需要使用 qbXML。
为此,您首先需要在 Intuit 注册。在桌面模式下注册是最容易的。在我们的QuickBooks PHP wiki上有执行此操作的说明。注册为 PRODUCTION 应用程序(如果您从 Intuit 获得一个特殊帐户,您将无法使用该帐户,您只能使用 DEV/PTC)。
注册后,您将获得一个连接票证、一个应用 ID 和一个应用登录。
然后,您可以获取我们的开源 PHP QuickBooks DevKit(使用最近的夜间构建)并打开此示例:
- 文档/example_online_edition.php
从那里,您插入您的应用程序 ID、应用程序登录和连接票证,您将能够向 QuickBooks 发送 XML 格式的请求。
您需要使用 Intuits QuickBooks OSR作为 XML 参考。确保选中“OE”,取消选中“US”,将 qbXML 版本更改为 6.0(QuickBooks Online 仅支持 6.0),使用“Select Message”下拉菜单选择请求类型,“XML Ops”选项卡查看可用的 XML 字段。
您生成的代码将类似于:
require_once dirname(__FILE__) . '/../QuickBooks.php';
// Register in DESKTOP mode to get these. Docs:
// http://www.consolibyte.com/docs/index.php/QuickBooks_Online_via_qbXML#Connecting_with_the_.27Desktop.27_model_of_communication
$application_id = '134476443';
$application_login = 'qboe.www.consolibyte.com';
$connection_ticket = 'TGT-68-1sRm2nXMVfm$n8hb2MZfVQ';
// Create our new gateway instance
$Gateway = new QuickBooks_Gateway_OnlineEdition(
$application_id,
$application_login,
$connection_ticket);
$xml = '<QBXMLMsgsRq onError="stopOnError">
<VendorAddRq>
<VendorAdd>
<Name>ConsoliBYTE</Name>
<FirstName>Keith</FirstName>
<LastName>Palmer</LastName>
<VendorAddress>
<Addr1>123 Test Road</Addr1>
<City>Mt Pleasant</City>
<State>MI</State>
<PostalCode>48858</PostalCode>
</VendorAddress>
<Email>support@consolibyte.com</Email>
</VendorAdd>
</VendorAddRq>
</QBXMLMsgsRq>';
// Send the request
$resp = $Gateway->qbxml($xml);
print($resp);
于 2013-06-21T02:34:09.323 回答