我们已根据以下链接实施了Intuit连接按钮功能:
它一直运行到最后但不是将控制权返回到父页面,而是在弹出窗口中打开应用程序.我真的不知道我在这里失踪了什么.以下是此功能的单元测试页面:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ipp="">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
<meta http-equiv="Cache-control" content="no-cache"/>
<title>Intuit Test Page</title>
<script src="https://js.appcenter.intuit.com/Content/IA/intuit.ipp.anywhere.js" type="text/javascript">
</script>
<script type="text/javascript">
intuit.ipp.anywhere.setup({
menuProxy: 'myserver.com/intuit/proxy',
grantUrl: 'myserver.com/intuit/connect'
});
</script></head><body>
<ipp:connectToIntuit></ipp:connectToIntuit>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
除服务器名称外,代码相同.如果你能提供一些意见,我真的很感激吗?
我试图通过QBXML将税收应用于发票时遇到问题.我在InvoiceLineAdd中使用SalesTaxCodeRef,但似乎它无论出于何种原因都不起作用.这个代码适用于SalesReceiptAddRq.我错过了一面旗帜吗?
<?xml version="1.0" encoding="UTF-8"?>
<?qbxml version="11.0"?><QBXML>
<QBXMLMsgsRq onError="stopOnError">
<InvoiceAddRq requestID="c16d1753af62163f3891551c07a1eed493bb291a">
<InvoiceAdd>
<CustomerRef>
<FullName>Customers FullName</FullName>
</CustomerRef>
<TemplateRef>
<FullName>Default Template</FullName>
</TemplateRef>
<TxnDate>2013-07-31</TxnDate>
<RefNumber>12324</RefNumber>
<BillAddress>
<Addr1>Customers FullName</Addr1>
<Addr2>123 Test Dr</Addr2>
<Addr3></Addr3>
<City>Customer City</City>
<State>AL</State>
<PostalCode>12323</PostalCode>
<Country>US</Country>
</BillAddress>
<ShipAddress>
<Addr1>Customers FullName</Addr1>
<Addr2>123 Test Dr</Addr2>
<Addr3></Addr3>
<City>Customer City</City>
<State>AL</State>
<PostalCode>12323</PostalCode>
<Country>US</Country>
</ShipAddress>
<IsPending>false</IsPending>
<IsToBePrinted>false</IsToBePrinted>
<IsToBeEmailed>false</IsToBeEmailed>
<InvoiceLineAdd>
<ItemRef>
<ListID>80000540-1339572998</ListID>
</ItemRef>
<Desc>Item Desc</Desc>
<Quantity>1</Quantity>
<Rate>39.27</Rate>
<SalesTaxCodeRef>
<FullName>SBT</FullName>
</SalesTaxCodeRef>
</InvoiceLineAdd>
</InvoiceAdd>
</InvoiceAddRq>
</QBXMLMsgsRq>
</QBXML>
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Quickbooks Webconnector向Quickbooks添加销售订单.当我添加一个成功添加的订单时,但是当我尝试在单个qbxml中添加多个订单时,quickbooks会抛出以下错误.
"message ="QuickBooks在解析提供的XML文本流时发现错误."
以下是QBXML发送的请求
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?qbxml version="8.0"?>
<QBXML>
<QBXMLMsgsRq onError="stopOnError">
<SalesOrderAddRq>
<SalesOrderAdd defMacro="MACROTYPE">
<CustomerRef>
<FullName>Amazon.com.nvdc, Inc</FullName>
</CustomerRef>
<TxnDate>2014-07-29</TxnDate>
<BillAddress>
<Addr1>RNO1</Addr1>
<City>Fernley</City>
<State>NV</State>
<PostalCode>89408-8903</PostalCode>
<Country>US</Country>
</BillAddress>
<PONumber>TST00003</PONumber>
<DueDate>2014-07-29</DueDate>
<SalesOrderLineAdd>
<ItemRef>
<FullName>ES-10BLU</FullName>
</ItemRef>
<Desc>ES-10BLU</Desc>
<Quantity>3</Quantity>
<UnitOfMeasure>EA</UnitOfMeasure>
<Rate>100.0</Rate>
</SalesOrderLineAdd>
<SalesOrderLineAdd>
<ItemRef>
<FullName>ES-10BLUINVALID</FullName>
</ItemRef>
<Desc>ES-10BLUINVALID</Desc>
<Quantity>4</Quantity>
<UnitOfMeasure>EA</UnitOfMeasure>
<Rate>100.0</Rate>
</SalesOrderLineAdd>
<SalesOrderLineAdd>
<ItemRef>
<FullName>ES-10BLUDISC</FullName>
</ItemRef>
<Desc>ES-10BLUDISC</Desc>
<Quantity>5</Quantity>
<UnitOfMeasure>EA</UnitOfMeasure>
<Rate>100.0</Rate>
</SalesOrderLineAdd>
</SalesOrderAdd>
<SalesOrderAdd defMacro="MACROTYPE">
<CustomerRef>
<FullName>Amazon.com.nvdc, Inc</FullName>
</CustomerRef>
<TxnDate>2014-07-29</TxnDate>
<BillAddress>
<Addr1>RNO1</Addr1>
<City>Fernley</City>
<State>NV</State>
<PostalCode>89408-8903</PostalCode>
<Country>US</Country>
</BillAddress>
<PONumber>TST00004</PONumber>
<DueDate>2014-07-29</DueDate>
<SalesOrderLineAdd>
<ItemRef>
<FullName>ES-10BLU</FullName>
</ItemRef>
<Desc>ES-10BLU</Desc> …Run Code Online (Sandbox Code Playgroud) 我有QuickBooks 2010专业版,因为标题建议我需要将产品和发票导入Quickbooks.
一些背景......
我们是一家在线公司,我们在线销售产品,我的客户希望将所有产品导入quickbooks,并将每个在线销售导入quickbooks,我们的网站使用ASP.NET和SQL Server构建.
我是quickbooks的新手,所以我不知道该怎么做...
我听说过IIF导入和SDK,遗憾的是我无法找到它们并提供有价值的文档.任何人都可以请我正确的方向(可能是一些示例代码)?请不要给我quickbook网站的SDK网址.
谢谢
我在获取 QuickBooks Web Connector 时遇到问题。当它运行时,日志显示
...
20130411.15:29:07 UTC : QBWebConnector.SOAPWebService.do_serverVersion() : *** Calling serverVersion().
20130411.15:29:07 UTC : QBWebConnector.SOAPWebService.do_serverVersion() : Received from serverVersion() following parameter:<serverVersionRet="testing version">
20130411.15:29:08 UTC : QBWebConnector.SOAPWebService.do_clientVersion() : *** Calling clientVersion() with following parameter:<productVersion="2.1.0.27">
20130411.15:29:08 UTC : QBWebConnector.SOAPWebService.do_clientVersion() : Received from clientVersion() following parameter:<clientVersionRet="">
20130411.15:29:08 UTC : QBWebConnector.SOAPWebService.do_clientVersion() : This application agrees with the current version of QBWebConnector. Allowing update operation.
20130411.15:29:08 UTC : QBWebConnector.SOAPWebService.do_authenticate() : Authenticating to application 'QBServices Raw Soap', username = 'test'
20130411.15:29:08 UTC : …Run Code Online (Sandbox Code Playgroud) 我正在尝试从我的应用程序导出发票到QuickBooks桌面.发票已创建,我收到成功消息,但QuickBooks Desktop应用程序不反映通过API发送的金额,价格或数量.
以下是一个此类操作的请求/响应示例:
请求:
<?xml version="1.0"?>
<Mod xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.intuit.com/sb/cdm/v2" RequestId="6ffd7874b723b84ad2eba8146c12fda1">
<ExternalRealmId>MY_REALM_ID</ExternalRealmId>
<Object xsi:type="Invoice">
<Id idDomain="NG">2064384</Id>
<SyncToken>4</SyncToken>
<Header>
<DocNumber>100009</DocNumber>
<TxnDate>2013-10-16</TxnDate>
<Status>Pending</Status>
<CustomerId idDomain="QB">2</CustomerId>
<CustomerName>Jenny Cliff</CustomerName>
<RemitToId idDomain="QB">2</RemitToId>
<RemitToName>Jenny Cliff</RemitToName>
<ShipDate>2013-10-16</ShipDate>
<SubTotalAmt>950.0</SubTotalAmt>
<TaxRate>0.0</TaxRate>
<TaxAmt>0.0</TaxAmt>
<TotalAmt>950.0</TotalAmt>
<ToBePrinted>true</ToBePrinted>
<ToBeEmailed>false</ToBeEmailed>
<ARAccountId idDomain="QB">40</ARAccountId>
<ARAccountName>Accounts Receivable</ARAccountName>
<DueDate>2013-10-17</DueDate>
<BillAddr>
<Line1>217 E Washington Ave,</Line1>
<City>Sunnyvale</City>
<Country>USA</Country>
<CountrySubDivisionCode>CA</CountrySubDivisionCode>
<PostalCode>94086</PostalCode>
<Tag>Billing</Tag>
</BillAddr>
<ShipAddr>
<Line1>217 E Washington Ave,</Line1>
<City>Sunnyvale</City>
<CountrySubDivisionCode>CA</CountrySubDivisionCode>
<PostalCode>94086</PostalCode>
<Default>false</Default>
<Tag>Shipping</Tag>
</ShipAddr>
<Balance>950.0</Balance>
</Header>
<Line>
<Desc>Test Item 1</Desc>
<Amount>500.0</Amount>
<UnitPrice>500.0</UnitPrice>
<Qty>1</Qty>
</Line>
<Line>
<Desc>Test Item 2</Desc>
<Amount>450.0</Amount>
<UnitPrice>450.0</UnitPrice>
<Qty>1</Qty> …Run Code Online (Sandbox Code Playgroud) 很快我将需要在 Quickbooks Desktop 和 PHP 网站之间进行集成。我知道存在一个有助于集成的 PHP QuickBooks 类,但据我所知,该类仅在 PHP 站点启动与桌面应用程序的联系时才有效。我要求在 QuickBooks 上创建采购订单和/或产品时,它会使用 REST API 自动(即时)将信息发送到我的网站。考虑到将连接多个 QuickBooks Desktop 实例(我们将允许客户使用我们将构建的 QuickBooks 应用程序),因此必须不断检查所有这些 QuickBooks Desktop 实例是否有任何新的采购订单是不切实际的或自我们上次检查以来创建的产品。
有没有办法以某种方式向 QuickBooks 添加代码,以使用 REST API 将采购订单和产品(创建后)发送到我的网站?
谢谢
我只是想了解 QBWC 验证过程。我正在尝试用 PHP 构建一个真正的基本 SOAP 服务器,该服务器仅对 QBWC 请求进行身份验证。
这是我的 WSDL:
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://developer.intuit.com/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://developer.intuit.com/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">WebService for QBFS created using ASP.NET to troubleshoot QuickBooks WebConnector</wsdl:documentation>
<wsdl:types>
<s:schema elementFormDefault="qualified" targetNamespace="http://developer.intuit.com/">
<s:element name="serverVersion">
<s:complexType />
</s:element>
<s:element name="serverVersionResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="serverVersionResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="clientVersion">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="strVersion" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="clientVersionResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="clientVersionResult" type="s:string" …Run Code Online (Sandbox Code Playgroud) qbxml 13.0 版。为什么验证器会列出不在我的 XML 中并且不需要作为它所期望的东西的 XML 元素?
在我看到的所有参考文献中,它都在 BillAddress 之后为 InvoiceAdd 列出了 Memo。
https://developer-static.intuit.com/qbSDK-current/Common/newOSR/index.html
Line: 20
LinePos: 22
Src Text: <BillAddress>
Reason: Element content is invalid according to the DTD/Schema.
Expecting: ItemSalesTaxRef, Memo, CustomerMsgRef, IsToBePrinted, IsToBeEmailed, IsTaxIncluded, CustomerSalesTaxCodeRef, Other, Exchange....
<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="13.0"?>
<QBXML>
<QBXMLMsgsRq onError="continueOnError">
<InvoiceAddRq requestID="43">
<InvoiceAdd>
<CustomerRef>
<FullName>GORILLA SPRAY FOAM LLC</FullName>
</CustomerRef>
<ARAccountRef>
<FullName>Accounts Receivable</FullName>
</ARAccountRef>
<TxnDate>2017-12-01</TxnDate>
<RefNumber>9690</RefNumber>
<PONumber>JN 102317</PONumber>
<ShipDate>2017-10-23</ShipDate>
<ShipMethodRef>
<FullName>x</FullName>
</ShipMethodRef>
<BillAddress>
<Addr1>GORILLA SPRAY FOAM LLC</Addr1>
<Addr2>2332 HIGHWAY 65</Addr2>
<City>MORA</City>
<State>MN</State>
<PostalCode>55051</PostalCode> …Run Code Online (Sandbox Code Playgroud) quickbooks ×9
qbxml ×3
php ×2
api ×1
intuit ×1
ipp-qbd-sync ×1
javascript ×1
qbwc ×1
rest ×1
soap ×1
web-services ×1