

Writing a Quickbooks REST API - leftnode
http://metricsapi.com/tour/intuit-quickbooks-rest-api?source=hn

======
leftnode
I do a lot of freelancing work to build up my small side business. A job I
recently took on was to integrate an ecommerce site into Quickbooks using the
Quickbooks Web Connector.

If you've ever had to use this software, I'm sorry. It is not friendly. You
essentially have to write your own SOAP server that is called by Quickbooks.

Then you have to send them XML in their QBXML format (of which, the
documentation only really works in IE, kind of works in Firefox, and not at
all in Chrome -- that's right, just reading the documentation requires a
specific browser). Debugging is a pain.

So I thought a service that abstracts that would be a good idea. We would
provide the Quickbooks WebConnector file to you, you install it, and then
start sending your invoice information to a nice RESTful API.

We handle the rest and ensure your data gets into Quickbooks properly. If
you're interested in something like this, please subscribe to the mailing
list.

PS. I'm doing the same for the Google AdWords API, which is also not a joy to
use -- <http://metricsapi.com/tour/google-adwords-rest-api>

~~~
coolgeek
I'll look at this later, but I used Consolibyte's open source QuickBooks PHP
DevKit[1] for a recent client project.

This is not a trivial process, but I didn't have to write my own SOAP server.

[1] <http://consolibyte.com/quickbooks-open-source/>

~~~
narcissus
I used the same kit a couple of years ago: once I realised that I just needed
to give it a database so that it could manage its own state and let it do its
thing, it was generally a breeze.

At the time, at least, there was some weirdness with integrating with the
Canadian version, however. Nothing I couldn't resolve generally, and it may
very well not be a problem at all anymore.

But yes, '+1' for the QB PHP DevKit.

------
kldavis4
We built an in house solution for communicating with quickbooks. We
implemented the soap service and communicate with it via a message queue. The
biggest issue we've run into is that the web connector is polling the soap
service, so you can wait as long as 1 minute for a response depending on how
often the web connector is set to poll. We implemented a work around that
forces the web connector to poll more often, but when it is in this
"synchronous" mode, the quickbooks file is held open and cannot be closed. I
am curious how your api gets around this? If you have a good solution, I think
we'd definitely be interested in using your api.

------
leeoniya
i've worked with web connector before, though not extensively. we did invoice
and customer imports. no extensive sync or anything. the key is just to write
against their giant xsd schemas that are in the install or support folder.
also this exists:
[https://idnforums.intuit.com/messageview.aspx?catid=56&t...](https://idnforums.intuit.com/messageview.aspx?catid=56&threadid=9164)

~~~
leftnode
Yup, and none of that is any fun. As a developer, what would you prefer:
writing against their giant XSD schemas or just making a POST request to a URL
with invoice information? I'll take REST any day of the week.

