Skip to content

QuickBooks

Note:

Role-based security is currently in feature preview.

Documentation for this feature is still work in progress

Connectivity & Security

A QuickBooks data source within xpna is secured using the QuickBooks OAuth2 security flow.

This is a highly secure process provided by QuickBooks, which allows QuickBooks users to grant access to one or more QuickBooks organiations, (that the user has access), to a verified third-party application, like xpna, with specific permissions.

On adding a new QuickBooks data source, when the user clicks on the Connect to QuickBooks action button, the following flow will occur to allow the user to grant xpna access and return us a token, that we store encrypted, we can use on behalf of the user to subsequently retrieve their QuickBooks data:

ActorAction
xpnaOpens a browser window in the user's default browser to QuickBooks
QuickBooksGets the user to login with their QuickBooks credentials (if not already logged in)
QuickBooksAsks for which QuickBooks Organisation they are granting it to
QuickBooksShows the permissions being asked for and acceptance
QuickBooksRedirects the page back to xpna
xpnaReceives the authorization and attempts to connect to retrieve the information about the organisations connected
xpnaDisplays a message to the user about the success or failure of the connection

Initial Load Duration

To extract and process the data into the xpna data warehouse may take anywhere from 1 minute to several hours, depending on the number of transactions stored in QuickBooks.

A basic rule of thumb is that every 10,000 transactions will take two minutes to load.

Data Synchronization

xpna does incremental loads from QuickBooks on a daily schedule set by the user and will also load on demand when the Refresh data action button is used, (this looks like a 'Play' button).

Expect data refreshes to complete in less than a minute.

Managing the Connection

At any time, a user can disconnect their connection between xpna and QuickBooks from within xpna on the Connections page.

They can also disconnect directly from QuickBooks at: https://app.qbo.intuit.com/app/appcenter/myapps.

On disconnection, the user's QuickBooks data is not removed from xpna; only the connection that is used to update data is severed.

If removal of the data is also required, the user can open up a support ticket with us.

Class and Department Mapping

If an organisation is using Class and or Department, the option to create dimensions for each will be given. This is optional.

For each, they can be mapped to an existing dimension or have a new one created to represent it.

If multiple organisations within the workspace are using them in the same way, the same dimensions can be reused across many of them. The name of the dimension does not need to be Class or Department, as hierarchy management allows modification of the behavior as needed.

Planning Data

QuickBooks budgets are retrieved as a part of data synchronization, and each is stored in a separate scenario derived from the name in QuickBooks.

xpna does not write planning data back into QuickBooks because it allows planning data to be created against accounts that do not exist in QuickBooks. For example, non-financial accounts such as headcount cannot be created in QuickBooks, so if planning occurs against this account, reporting can only be done from xpna.

Nothing prevents the building of custom QuickBooks imports from xpna data for loading back into QuickBooks if that is desired by users.

Data Flows

xpna extracts a number of data sets from QuickBooks. These are listed below.

xpna does not push data back into QuickBooks for any data set.

QuickBooksxpna
AccountAccount dimension and hierarchies
GeneralLedgerGeneral ledger amount
CompanyInfoEntity
ClassDimensions and members
DepartmentDimensions and members
BudgetsScenarios
PreferencesEntity Configuration