views:

346

answers:

2

I am writing an application to integrate invoices into Quickbooks via their latest API. I haven't worked with this API, but have subscribed to their developer program, looked through the docs, etc...

The integration I'm doing is with a standalone C# WinForm application used to enter invoices.

Wondering if anyone has real world experience and advice with this (not looking for links to the Intuit developer site)?

+3  A: 

Are you integrating a website, or a desktop application? The approach differs quite a bit based on what you're looking to integrate.

The Web Connector is your best bet for attaching a website to QuickBooks. Otherwise, QBFC isn't too difficult to use. QODBC or AccessBooks may be another alternative for you.

Things to watch out for:

  • qbXML can be a pain in the butt, watch your version numbers as different qbXML versions support different features (list here: http://wiki.consolibyte.com/wiki/doku.php/quickbooks_qbxml_versions)

  • remember that QuickBooks isn't like an always-running database server, you have to have QuickBooks open or available on the machine to connect with it (via DCOM or the Web Connector)

  • the QuickBooks OSR is the best resource for the available fields, watch out for typos though (this one gets everyone: stopOnErrror vs stopOnError)

  • remember you'll have dependencies you have to take care of before adding the invoice: invoices depend on customers and items at the very least, possibly other data as well

  • the various utilities installed by the SDK (XML Validator, Test programs) are super helpful, so I'd recommend taking a look at those

  • get an account on the Intuit Developer Forums, there are some helpful people there (though sometimes they are a bit slow to respond)

If you give us some additional details or more specific questions I can probably provide more information...

Keith Palmer
+2  A: 

Honest opinion after trying to work with QBooks integration through a variety of means:

If you value your sanity, run. Run fast, run far. Do not stop. Ever.


Seriously though, unless it has improved dramatically, it is awful, depending on what you are trying to do. Documentation a year or two ago was dismal, and from what I understand, its not gotten better.

Chad Ruppert
Chad is not exaggerating.
Nestor