0

我需要通过我的 php 网站自动在我的在线 quickbook 帐户上生成发票。我搜索了很多直觉和其他来源,但不知道从哪里开始或做什么。请帮助我..谢谢

4

1 回答 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 回答