views:

215

answers:

1

Poking around options for integrating an online app with Quickbooks, I've made a lot of headway with QBWC, but it's fairly ugly. From an end user perspective the usability of QBWC is pretty low.

Intuit is now pushing Intuit Partner Platform (IPP) and Intuit Data Services (IDS). I can't quite figure out what these are about:

  • Is IPP limited to using Flex, or can it work with existing web apps?
  • Are there APIs for actual data exchange? Is it possible to interact with desktop Quickbooks using IPP or IDS?
  • If there is sample code, particularly in Python, some pointers would be great.
+1  A: 

Is IPP limited to using Flex, or can it work with existing web apps?

It is not limited to Flex. You can use IPP/IDS from any web application, as long as you federate your application (allow logins using SAML via workplace.intuit.com).

There are two "types" of IPP applications:

  1. Native apps Native applications are applications written in Flex which utilize the Flex bindings for IPP. These applications run on Intuit's servers.
  2. Federated apps Federated applications are applications written in your language of choice, running on your servers, which utilize the language bindings of your choice to talk to IPP. All of the communication with IPP is via HTTP XML requests, so pretty much any language out there can talk to IPP without any problems. You'll need to implement a SAML gateway which allows your users to log in via workplace.intuit.com.

Are there APIs for actual data exchange?

Yes. IPP is actually made of up two parts that both provide different sorts of data exchange.

  1. IPP core stuff This involves user management, roles/permissions, access to QuickBase data stores, etc.
  2. IDS (Intuit Data Services) This involves actually exchanging data with QuickBooks. Right now, a subset of QuickBooks data is supported, but Intuit is rapidly adding support for accessing more data within QuickBooks. You can add/modify/delete/query QuickBooks data and the data is automatically synced back to the end-users QuickBooks file.

Is it possible to interact with desktop Quickbooks using IPP or IDS?

That depends on what you mean by "interact". Yes, you can exchange data with their QuickBooks data file. No, you can't do things like automatically open up a particular window within QuickBooks or something like that.

If there is sample code, particularly in Python, some pointers would be great.

There are many open-source IPP DevKits on code.intuit.com that should be helpful. In particular, you'll probably want to check out this one: Python DevKit

You'll also need to implement a SAML gateway for authentication, and there is sample code for that as well: SAML Gateways

I'm the project admin for the QuickBooks PHP DevKit: QuickBooks PHP DevKit

There's a ton of additional information on the code.intuit.com website and tons of additional technical documentation on IPP/IDS with Federated applications on developer.intuit.com.

Keith Palmer
Fantastic answer Keith, thanks for all the detail.
Parand
No problem. :-)
Keith Palmer