Get started

Enhanced Computing Power

QuickBooks Desktop SDK is now available in 64-bit.


To support independent developers of applications that integrate with desktop (locally installed) versions of QuickBooks, Intuit supplies software development kits that manage communication between applications and QuickBooks and provide standardized message formats for exchanging data with QuickBooks. This branch of the QuickBooks documentation set covers the SDKs that are introduced on this page.

QuickBooks Desktop SDK

The QuickBooks Desktop SDK supports development of applications that integrate with QuickBooks Desktop. These applications will run on the same machine, or in some cases the same local area network, as the QuickBooks Desktop software, and communicate via a set of XML, named QBXML, that was developed especially for application-to-QuickBooks communication. The SDK defines standard request and response message formats for communicating with QuickBooks, and provides tools for building, sending and receiving them.


In your applications, you can programatically write the QBXML messages, or you can use a set of classes, named the QuickBooks Foundation Classes (QBFC), to build them for you.

The SDK also supplies a session manager that opens communication with the runtime support components of QuickBooks and manages the sending and receiving of QBXML messages. For more information on the mechanisms for application-to-QuickBooks communication, see Communicating with QuickBooks; for information about the role of the session manager, see Connections, sessions and authorizations.

First steps with the Desktop SDK

If you want to be sure that the Desktop SDK is the tool you need for the problem you are trying to solve, see Before you start; if you’re ready to begin, start with step 1, below.

  1. Experience the basic steps for using the QuickBooks Desktop SDK by running a simple example with the SDKTestPlus3 tool.