[QODBC-Online] Accessing Multiple QuickBooks Online Entities via Linked Servers
Problem Description:
A company has multiple QuickBooks Online (QBO) entities and needs to pull data from all of them into separate SQL Server databases via Linked Servers using the QODBC driver. The challenge is configuring multiple DSNs correctly - each entity requires its own connection path, and the bitness (32-bit vs. 64-bit) of each DSN type matters critically.
Affected products: QODBC Online, SQL Server Management Studio (SSMS), QuickBooks Online Expected outcome: Each QBO entity has a dedicated connection path (User DSN → System/Remote DSN) enabling separate Linked Servers in SSMS to pull data from each entity independently.
Symptoms:
- Multiple QBO company files need to be queried from SQL Server via Linked Servers.
- A single DSN setup works for one entity, but additional entities fail to appear in the DSN dropdown or do not connect.
- Customer is unsure whether a unique DSN pair (User + System) is needed per QBO entity.
- Confusion about licensing requirements - whether a separate QODBC Server license is needed for multi-entity access.
Cause:
Each QuickBooks Online entity requires its own dedicated DSN connection path to establish a separate Linked Server connection.
A single DSN can only point to one QBO company at a time. To access multiple entities, you must create a separate chain of DSNs for each:
- QODBC Online Driver (32-bit) DSN - points to the specific QBO company's data stream. This can be a User DSN or a System DSN.
- QRemote Driver DSN - points to the corresponding QODBC Online DSN. The QRemote DSN should be created as 32-bit or 64-bit depending on the bitness of the application that will use the QRemote DSN.
Critical gotcha: The QODBC Online Driver must be a 32-bit DSN. The QODBC Online DSN can be either a User DSN or a System DSN. A User DSN is visible only to the Windows user who created it and is not visible to other Windows users. A System DSN is visible to all Windows users on the machine, and those users can use the DSN to connect to the corresponding QBO company.
Environment:
| Component | Bitness / Type | Purpose |
| QODBC Online Driver DSN (per entity) |
32-bit User DSN or System DSN |
Connects to one QBO company's OData feed |
| QRemote DSN (per entity) |
32-bit or 64-bit, depending on the application |
Wraps the 32-bit QODBC Online DSN for the application that uses QRemote |
| SQL Server Linked Server (per entity) |
N/A |
References the QRemote wrapper DSN as a linked server |
| QODBC Online License |
Per-machine |
One license per machine; no per-entity fee |
Solution:
- Create a QODBC Online Driver DSN for each QBO entity (32-bit User DSN or System DSN).
- Open ODBC Data Source Administrator (32-Bit):
C:\Windows\SysWOW64\odbcad32.exe
- Create a new User DSN or System DSN using the "QODBC Online Driver for QuickBooks" driver.
- If the QBO connection should be visible only to a specific Windows user, create a User DSN. A User DSN is not visible to other Windows users. If the QBO connection should be visible to all Windows users on the machine, create a System DSN. A System DSN is visible to all Windows users, and they can use it to connect to the corresponding QBO company.
- Name it descriptively, e.g.,
CompanyABC, CompanyPQR, etc. - one per QBO entity.
- Do NOT create this in the 64-bit ODBC tool - it will not be visible to the QRemote client.
- Create a corresponding QRemote DSN for each QODBC Online DSN.
- Open the ODBC Data Source Administrator that matches the bitness of the application that will use the QRemote DSN.
- Create a new System DSN using the "QRemote Driver" (not the QODBC Online driver).
- If the application is 32-bit, create the QRemote DSN using the 32-bit ODBC Data Source Administrator.
- If the application is 64-bit, create the QRemote DSN using the 64-bit ODBC Data Source Administrator.
- Create a new User DSN or System DSN using the "QRemote Driver", depending on the required user/application access.
- Name it descriptively, e.g.,
QRemoteCompanyABC, QRemoteCompanyPQR, etc.
- In the Remote DSN field, point to the matching User DSN name from Step 1 (e.g.,
QRemoteCompanyABC → / Remote DSN = CompanyABC).
- This MUST be a 64-bit System DSN - it will not function as a 32-bit User DSN for SQL Server.
- Create a SQL Server Linked Server for each QRemote DSN.
- In SSMS, open Linked Servers → New Linked Server.
- Set the provider to "Microsoft OLE DB Provider for ODBC Drivers."
- Select the corresponding QRemote System DSN (e.g.,
QRemoteCompanyABC) as the data source.
- Repeat for each entity - one Linked Server per QRemote DSN.
- Test connections independently. Query each Linked Server separately to verify it pulls from the correct QBO entity before setting up any automated data pipelines.
SQL Examples:
Create a linked server via T-SQL:
EXEC sp_addlinkedserver
@server = 'OrangeRemot',
@srvproduct = 'QODBC',
@provider = 'MSDASQL',
@datasrc = 'QRemoteCompanyABC';
Query across the linked server:
SELECT * FROM OrangeRemot...Invoice
Example Scenarios:
Scenario 1 - Multi-entity consolidated reporting:
A company has 7 QBO entities (each named by a color, e.g., Orange, Blue, Green). They create 7 User DSNs (QODBC Online Driver, 32-bit) and 7 System DSNs (QRemote Driver, 64-bit), one pair per entity. In SSMS they create 7 Linked Servers, each pointing to its corresponding QRemote DSN. A consolidated report queries all 7 linked servers and unions the results into a single data mart database.
Scenario 2 - Separate databases per entity:
A company needs each QBO entity's data in a separate SQL Server database for isolation. They follow the same DSN pairing pattern but direct each Linked Server to its own SQL Server database instead of a shared data mart.
Additional Notes:
- Licensing: One QODBC Online license per machine is sufficient for all entities. QODBC Online is server-edition licensed - no per-entity fee. You do NOT need a separate QODBC Server license for multi-entity access.
- The DSN pairing is strict: 32-bit User DSN → 64-bit System QRemote DSN. Mixing bitness (e.g., 64-bit to 64-bit or 32-bit to 32-bit) will cause the DSNs to not appear in the expected dropdown menus and connections to fail.
- The QODBC Online evaluation version is available for testing. After the trial, a paid subscription is required for continued use.
- Each QRemote wrapper DSN acts as a tunnel from SQL Server → ODBC → QuickBooks Online. The actual QBO authentication happens within the 32-bit User DSN; the 64-bit System DSN only forwards queries and results.
Related Articles:
QODBC and QXL for QuickBooks Online - Products, Trials, and Data Availability QODBC QBOnline Connection Key - Export/Import How to create Link Server with MS SQL 2005/2008/2012 64-bit Using QODBC Online/QRemote
Keywords:
Multiple Entities QuickBooks Online Multi-Entity Linked Server SSMS 32-bit DSN 64-bit DSN QRemote Driver User DSN System DSN Bitness ODBC Architecture Multi-Company QODBC Online
Support Tickets: IZU-839-21026, LCO-456-87479
|