QuickBooks And The Cloud

qbcloudThere is a lot of buzz about Cloud Computing. I think we all understand that the “Cloud” is that little picture you always see representing the Internet, and that’s what the term refers to: the computing platform isn’t in your office, it’s “out there”, across the Internet. Just think of the Internet as a really long cable that connects your keyboard and monitor to the system that is really running the software.

When companies like Intuit talk about Cloud Computing and QuickBooks, it’s a little bit confusing, given that a large part of their QuickBooks market is still based on locally-installed desktop software. And, with the volume of 3rd party developers with widgets, gadgets, plugins, extensions, and integrations with desktop QuickBooks, the momentum of the desktop solution seems unstoppable. But there has been a catch to the old model of plugging into QuickBooks, and it’s catching on really well.

The creation of the IPP (Intuit Partner Platform) and changes to software integration platforms for QuickBooks introduced an entirely new range of capabilities for QuickBooks developers. Finally, persistent connections to Web-based and other applications may be crafted for QuickBooks desktop, allowing the locally-installed QuickBooks to “speak” over the network to other applications or platform services. This development opens up an entirely new model for extending QuickBooks functionality – extending to a Web application framework.

Businesses are able to take broad advantage of Web-based application services and the features they can deliver without compromise to their choice of accounting and financial management system. Extending access to operational, sales, service, and other users within the enterprise has become a simple and seamless operation. For example, a business that needs to extend QuickBooks Enterprise system to accommodate multiple inventory or warehouse locations can do so easily by simply plugging in a web-based warehouse management solution that has an integration with the QB desktop product.  This solution could be a SaaS (software as a service) application which not only provides functionality for multiple warehouse management, but is designed as an anytime, anywhere application to allow those multiple locations to access the system when they need to.

By creating the means for businesses to use the Web to extend their QuickBooks software, Intuit has extended the useful life of the QuickBooks product. Functionality is no longer limited to what can be built and installed on the PC – the application is now able to be extended in numerous ways and on numerous platforms. Businesses are able to take advantage of the best software fit for their organizational operations – including leveraging the anytime, anywhere benefits of a Web-based application service – and still are able to utilize their QuickBooks.

Consider how beneficial it would be to businesses who elect to take advantage of the Web for them to be able to run their QuickBooks (feature-rich desktop QuickBooks) in an anytime, anywhere sort of environment, as well. From a QuickBooks hosting provider, businesses can get services for QuickBooks Pro, Premier, and Enterprise – allowing organizations to have their QuickBooks financial applications managed, protected, secured, and made available to users all the time and from any location. The hosting service can also support integrations and extensions for QuickBooks – for both desktop and Web-based applications and services. And, with the commercial provider’s ability to provide authorized subscription licensing for both QuickBooks and Microsoft Office, a business can have a complete, outsourced IT solution and pay only monthly service fees to get it. No upfront expense of purchasing software. No installation or system management to worry about. The QuickBooks financials, as well as the solutions it connects to, are connected in the cloud.

Make Sense?

J

QuickBooks SDK Integrations, Cloud Hosting, and the Customer Relationship

QuickBooks SDK Integrations, Cloud Hosting, and the Customer Relationship

Intuit QuickBooks desktop editions are the most popular small business accounting software products on the market, boasting somewhere in the neighborhood of 3.5M users.  In contrast to the QuickBooks Online Edition, which has approximately 300,000, desktop QuickBooks still reigns supreme with small business.

While QuickBooks satisfies most of the general business functionality required from a general accounting product, it doesn’t address much else.  For this reason, numerous software developers have created the software products – the extensions, integrations, widgets, and tools – that make QuickBooks more useful to the business.

The sheer popularity of the QuickBooks product line has supported the creation of a very large and diverse community of developers who make things that work with QuickBooks.  However, as with any attempt to bring like-minded people together, the QuickBooks developer “community” is not all-inclusive, and there are lots of ISVs (independent software developers) out there who aren’t communicating with Intuit frequently, and who aren’t necessarily exposing their solutions through the Intuit marketplace and other Intuit-branded venues.  In many cases, these are developers who have line-of-business solutions that represent the operational priority for their business clients, and where the integration to QuickBooks financial is somewhat of an after-thought.  In many cases, these solutions rely on QuickBooks only for general back-office account functions, where the GL, AR and AP are all that really matter.  The “tough stuff” is done in the line-of-business application.

Most of these types of solutions, as well as many with more complicated functionality or data integration requirements,   utilize a method of communicating with QuickBooks developed using the QuickBooks SDK, or software development kit.  This SDK was originally introduced as a means to replace the clumsy IIF import facility, an early way to get data into QuickBooks from other systems.  The SDK is really a tool kit designed to facilitate desktop application integrations, which is why so many developers use this method.  Particularly when an application is intended to be used on the desktop in conjunction with QuickBooks, it makes sense for developers to use an integration method that will allow them to produce the rich experience and seamless re-use of data that the desktop environment allows.  The SDK requires that the QuickBooks program be present, and QuickBooks controls access to the data file rather than allowing the 3rd party application to have direct data access.

The new method for integrating with a QuickBooks application is by using the IPP (Intuit Partner Platform) method, which is essentially an API (application programming interface) which simplifies the creation of data streams to and from the QuickBooks database.  This method of integration is intended to be serviced by the Intuit Sync Manager (included with QuickBooks), where your data first syncs to Intuit servers, and then connected apps sync from that source.  In this case, Intuit acts as the intermediary, hosting the synchronized data and controlling the sync with the QuickBooks database.  While this may be much easier in terms of offering stricter standards for QuickBooks data integration, it is not a method which addresses the needs of those solutions requiring an integrated experience involving QuickBooks programs and data, or which have more complex data integration requirements than may be served through the IPP.

Because the QuickBooks SDK has been around for many years, it allowed for very stable QuickBooks-integrated solutions to be developed.  In comparison, the IPP is pretty new and has taken Intuit a few tries to get working.  For this reason, there is a limited catalogue of solutions available in the Intuit App Center, which is where IPP solutions are promoted.  Moving forward, Intuit has stated that the focus will remain on the IPP, with the SDK no longer being a preferred (or supported) method.

The method of integrating with QuickBooks desktop editions matters, especially if you’re looking to bring your business applications to the cloud.  Application hosting services is the way to “cloud-enable” desktop solutions, yet not all hosting providers recognize or understand the differences in how applications might integrate with QuickBooks, and what that means to the technical and user environments.  Not all applications are created equal, and not all QuickBooks integrations are, either.  Some integrations sound simple enough to implement, yet have hidden requirements that make deployment with a host or outsourced infrastructure provider an interesting endeavor to say the least.

Developers using SDK integrations with QuickBooks should make certain that they have thoroughly discussed their solution requirements prior to deploying their applications with any host, particularly with a client-selected provider.  Companies experienced in hosting QuickBooks are not necessarily adept at understanding the nuances of SDK-developed integrations, and may minimize the technical requirement to the point of leaving your company and your customer with a bad feeling about hosting.  In worst-case scenarios, the software developer loses their customer altogether due to a poor experience with the solution in a hosted environment.


Cooper Mann Consulting
 is working to help developers and commercial ISVs with QuickBooks-connected solutions get their products to the cloud, and in a way that they can influence and help control the all-important customer experience.  Rather than being just one of a few hundred hosted products customers can select from the provider menu of offerings, we believe your solution should be delivered with your values, your message, and your unique service approach.   Doing so allows you to keep your arms firmly wrapped around your customers and users, working closely with them as you develop your solutions towards a true SaaS or cloud application model, and easing the transition from desktop to web application delivery and subscription service.

Intuit believes they own the relationship to all QuickBooks customers, and they’re right to the extent that the user relies on QuickBooks for some business functionality.  Hosting service providers think they own the customer relationship because they have significant influence over the products accessed from their servers.

Operational support solutions go deeper into the business than any high-level accounting product, and the method of deploying the solution (locally installed or hosted) is an IT issue and nothing more.  As a developer or provider of essential solutions which address specific vertical industry or line-of-business needs, and as the company who understands the business of your customer and supplies those solutions that help them perform, don’t you really think you should own that customer relationship?  We do.

Make Sense?

J

Want to know more about how Intuit is changing their approach to QuickBooks integration?  Read Charlie Russell’s rant: Is Intuit Abandoning QuickBooks SDK Developers?

Read more about QuickBooks cloud hosting: Cloud Hold-Out No More: QuickBooks Desktop Editions in the Cloud

Read more about cloud development: Lessons Learned (or Not): Development and the Cloud

Read more about legacy application modernization, and why IT and back-office outsourcing makes sense for a lot of reasons