Summary IconKey Takeaways

There are two ways to ingest data from QuickBooks Online to MS SQL Server:

Method #1: Using Hevo Data

This method is the easiest and most efficient, as the platform does the entire ingestion task. You can try the platform free for 14 days or use its free plan for the same. This method is the best for anyone who wants a quick data transfer without writing code.

Method #2: Using Manual Process

In this method, you need to set up the process entirely on your own and write code for the same. While this takes time and requires coding knowledge, teams that want more control over data ingestion can use this method.

QuickBooks SQL is a robust tool that makes use of the QODBC Driver for QuickBooks to extract data from QuickBooks company files and synchronize them with one or more Microsoft SQL Server databases.

  1. QuickBooks employs SQL queries when introducing a fully functional QODBC driver for integrating accounting data files.
  2. Using the connector template, you may construct a procedure for integrating databases and QuickBooks, depending on the process and model.
  3. In this blog, you’ll learn how to export data from QuickBooks to MS SQL Server if you want to get analytics-ready data quickly and easily. You can concentrate on what matters: extracting value from your accounting and financial data.

How to Connect QuickBooks to MS SQL Server?

Method #1: Load Data from QuickBooks to MS SQL Server Using Hevo Data

Step #1: Set QuickBooks as the Source

Before you start setting up the source, ensure you meet the following prerequisites:

  1. An active QuickBooks Online (QBO) account to ingest data from.
  2. The API credentials for granting Hevo access to your QBO account data.
  3. One of the following roles in Hevo to create the Pipeline:
    1. Team Collaborator
    2. Team Administrator
    3. Pipeline Administrator

Once you have the above with you, follow the steps below:

Step #1.1: Access the Navigation Bar and click PIPELINES.

Step #1.2: Now, from the Pipelines List View, click + CREATE PIPELINE in the Pipelines List View.

Step #1.3: Choose QuickBooks Online in the Select Source Type page.

Step #1.4: Now, you will be taken to the Configure your QuickBooks Online account page. Do one of the following as applicable:

  • Choose a previously configured account, if already done,  and click CONTINUE.
  • If not, click + ADD QUICKBOOKS ONLINE ACCOUNT and follow the steps below to configure a QuickBooks Online account:
Configure QuickBooks
  1. Specify your login credentials on the Sign In page and click Sign In.
Sign into Quickbooks
  1. Now, on the QuickBooks App Store page, perform the following steps:
  • From the drop-down, choose the company from which you want to ingest data and click Next.
Select your company in QuickBooks
  • Specify your company name and click Create company.
Create company in QuickBooks
  • Click Connect to grant Hevo access to the selected company’s data.
Connect QuickBooks to Hevo Data

Step #1.5: In the Configure your QuickBooks Online Source page, specify the details below:

  • Pipeline Name: Give the new Pipeline a unique name under 255 characters.
  • Authorized Account (Non-editable): This field is pre-filled with the unique ID of the company you selected earlier when connecting your QuickBooks Online account.
  • Historical Sync Duration: This is the duration for which you want to ingest the existing data from the Source. The default duration is 6 months.

Step #1.6: Now, click TEST & CONTINUE.

Step #1.7: Proceed to setting up data ingestion and the Destination.

Step #2: Set SQL Server as the Destination

Before you start the process, ensure you meet the following prerequisites:

  1. The SQL Server is running.
  2. The SQL Server database host’s IP or DNS and port are available.
  3. The necessary privileges on the database are granted to you.
  4. You are assigned a Team Collaborator or any administrator role, except the Billing Administrator role, to create the Destination in Hevo.

Step #2.1: Create a database user

Perform the following steps to create a login user and map it to a database user to connect to your SQL Server database:

Log in to your SQL Server instance as a master user using an SQL client tool, such as sqlcmd. For example, sqlcmd -U hevouser.

Enter the following command to access the database where you want to add the user:

<em>USE <database_name>GO</em>

Create a database user for the login user:

<em>CREATE USER [<username>] FOR LOGIN [<login_name>]GO</em>

Note: Replace the placeholder values in all the commands above with your own.

Step #2.2. Grant privileges to the database user

The following table lists the privileges that Hevo requires to connect to and load data into your SQL Server Destination:

Log in to your SQL Server instance as a login user using an SQL client tool, such as sqlcmd.

Enter the following command to access the database in which you created the database user:

<em>USE <database_name>GO</em>

Enter the following commands to grant privileges to the database user:

<em>GRANT ALTER, SELECT, INSERT, UPDATE ON SCHEMA::<schema_name> TO <username>GOGRANT CREATE TABLE, INSERT, SELECT, UPDATE ON DATABASE::<database_name> to <username>GO</em>

Once you have the above with you, follow the steps below to configure SQL Server as a Destination in Hevo:

Step #2.3: Click DESTINATIONS in the Navigation Bar.

Step #2.4: Click + CREATE DESTINATION in the Destinations List View.

Step #2.5: On the Add Destination page, select SQL Server.

Step #2.6: On the Configure your SQL Server Destination page, specify:

Configure SQL server destination
  • Destination Name: A unique name for your Destination, under 255 characters.
  • Database Host: This is the IP address or DNS of your SQL Server instance.
  • Database Port: This is the port on which your SQL Server listens for connections. Default value: 1433
  • Database User: A login user with a non-administrative role in the SQL Server database.
  • Database Password: This is the password for the login user.
  • Database Name: This is the name of the Destination database to which the data is loaded.
  • Schema Name (Optional): The name of the Destination database schema. Default value: dbo

Step #2.7: Click TEST CONNECTION. This button is enabled once all the mandatory fields are specified.

Step #2.8: Click SAVE & CONTINUE. This button is enabled once all the mandatory fields are specified.

Load and Move your Data from QuickBooks Online to MS SQL Server
Load and Move your Data from QuickBooks Online to BigQuery
Easily Connect Quickbooks Time to Snowflake

Method #2: Manually Connect QuickBooks Online to MS SQL Server

Step #1: Install and Configure the QuickBooks Online ODBC Driver

  1. Install a driver that supports QuickBooks Online, such as CData QuickBooks ODBC or QODBC Online.
  2. Now, during setup, choose QuickBooks Online as the data source.
  3. When prompted, authenticate using OAuth to connect the DSN to your QuickBooks Online.
  4. Test the connection to verify the DSN works in ODBC Data Source Administrator.

Step #2: Create a QuickBooks ODBC DSN

  1. Now, access the Microsoft ODBC Data Source Administrator.
  2. Add a new User or System DSN.
  3. Select the QuickBooks ODBC driver.
  4. Enter the DSN name.
  5. Save and test the connection.

Step #3: Create a Linked Server in SQL Server

  1. Now, open SQL Server Management Studio (SSMS).
  2. Access the Object Explorer and expand the SQL Server instance.
  3. Go to New Linked Server by right-clicking Linked Servers.
  4. Now, in the dialog, add the following details:
  • General Tab
    • Linked server name: QuickBooksOnline
    • Provider: Microsoft OLE DB Provider for ODBC Drivers
    • Data Source: Enter the DSN name
  • Security Tab
    • Choose “Be made using this security context.”
Create a Linked Server in SQL Server
  • Enter your QuickBooks Online ODBC username/password.

Step #4: Enable “Allow inprocess” for the Provider

  • Access the SSMS and go to Server Objects > Linked Servers > Providers.
  • Right-click your provider.
  • Check the box for Allow inprocess.
  • Save changes.

Step #5: Query QuickBooks Online Data from SQL Server

Now you can query QuickBooks Online entities directly in SSMS:

<em># Querying QuickBooks to SQL Server----SELECT * FROM [linked server name].[Data QuickBooks Sys].[QuickBooks].[Customers]</em>

Load QuickBooks Data into SQL Server Without the Hassle

Manually connecting QuickBooks to SQL Server can be time-consuming, error-prone, resource-intensive, and hard to maintain.

With Hevo Data, you can set up a reliable pipeline in minutes without writing any code and transfer data from 150+ data sources, including QuickBooks:

  • Connect without coding: Connect QuickBooks to SQL Server instantly with a few clicks.
  • Real-time data sync: Automate data sync in real-time so your SQL Server is always up to date.
  • Flexible data transformation: Transform and clean data on the fly before it reaches your database using drag-and-drop tools or custom scripts.
  • Automated schema mapper: Automatically handle schema mapping and define how data from QuickBooks is stored in the SQL Server

Save your team from spending hours integrating QuickBooks into SQL Server to get real-time data.  Let Hevo handle the heavy lifting so your team can focus on analyzing data, not moving it.

Start your free trial of Hevo today and see how easy QuickBooks-to-SQL Server data ingestion can be..

Get Started with Hevo for Free

Overview of QuickBooks

QuickBooks Logo

QuickBooks (QB) is a software that assists businesses with Bookkeeping, Accounting, Payroll, Inventory Management, and other financial processes. You can create financial statements and reports using QuickBooks. Intuit, a California-based corporation, designed QB to help automate common operations, saving time for bookkeeping and paperwork.

For creating charts, business plans, invoices, and spreadsheets, QB provides ready-to-use templates. It can also save time and effort for business owners by automating their signatures on business checks (which are scanned and uploaded for usage). QB also has a lot of advantages in terms of integration with other applications. It includes an easy-to-use User Interface that can walk users through all of its features. Learn to set up the QuickBooks Import Excel and CSV Toolkit in the simplest manner possible.

Overview of MS SQL Server

QuickBooks to MS SQL Server : SQL Server logo

SQL Server is a popular Relational Database Management System (RDBMS) provided by Microsoft Corporation. It offers many features that you can use to create, manage, and analyze databases.

Some of the key features that SQL Server provides include storing, retrieving, and securely managing relational data; it supports Transact SQL (TSQL), which enables you to query and manipulate data in your database. SQL Server also includes integration, analysis, and reporting capabilities that help in data modeling and generate useful insights

What are the Benefits of QuickBooks SQL Server Integration?

  • In QuickBooks SQL Server connection, you can conveniently import data from SQL Server and perform various DML operations on it. This includes SQL objects, CSV files, and more.
  • Within the Run logs, you can track the results of the QuickBooks SQL Server integration process for each run.
  • Enables bi-directional data synchronization between QuickBooks SQL Server data.
  • QuickBooks SQL Server integration performs regular synchronization and keeps track of changes at the source of the synced data.
  • QuickBooks SQL Server integration enables handy visual editors for fast data migration, allowing for precise mapping adjustment.
  • Perform fast operations with data integration in simple GUI editors and wizards.
  • QuickBooks SQL Server connection enables big data sharing to optimize CRM, ERP, and accounting data in databases.
  • Activates data migration and data export from the accounting program to Microsoft Server.

Use Cases of Connecting QuickBooks to MS SQL Server

  1. Centralized Data Management: Combine QuickBooks financial data with other business data for a unified view of operations.
  2. Custom Reporting: Generate advanced, customized financial and operational reports using SQL Server’s querying capabilities.
  3. Data Backup: Securely store and backup QuickBooks data in SQL Server for enhanced data reliability and recovery.
  4. Integration with BI Tools: Enable seamless integration with business intelligence tools for better analytics and decision-making.
  5. Automation of Workflows: Automate tasks like invoice processing or financial forecasting by leveraging SQL Server’s processing power.

Also, take a look at how you can setup the step-by-step integration from QuickBooks to Google BigQuery and QuickBooks to Snowflake.

You can also read more about:

Conclusion

  1. QuickBooks generates a large amount of data; the existing data on the MS SQL Server database must be modified.
  2. This includes new and revised records, among other things. You will need to check QuickBooks regularly for changed data and, if necessary, replicate the process that was previously defined during data updating.
  3. To update the existing rows, UPDATE statements are generated.

Hevo is the only real-time ELT No-code Data Pipeline platform that cost-effectively automates data pipelines that are flexible to your needs. Hevo caters to 150+ data sources (including 60+ free sources) like QuickBooks and can seamlessly load data into SQL Server in real-time.

Sign up for a 14-day free trial and simplify your data integration process. Check out the pricing details to understand which plan fulfills all your business needs.

FAQ on QuickBooks to MS SQL Server

1. Can QuickBooks be used on a server?

Yes, QuickBooks can be used on a server, but it will require setup and configuration to ensure proper functionality and access for multiple users.

2. How to transfer QuickBooks to a new server?

To transfer it to a new server, you need to install QuickBooks on the new server and then restore the backup files to the new server.

3. What is ODBC in QuickBooks?

ODBC (Open Database Connectivity) in QuickBooks refers to a feature that allows external applications and programming languages to connect to the QuickBooks database.

4. What language does QuickBooks use?

The desktop version of QuickBooks (QuickBooks Desktop) is primarily written in C++ for its core functionality and performance-sensitive components. Additionally, it also uses SQL for database interactions.

5. Is QuickBooks an ERP?

QuickBooks is not a full-fledged ERP (Enterprise Resource Planning) system.

Davor DSouza
Research Analyst, Hevo Data

Davor DSouza is a data analyst with a passion for using data to solve real-world problems. His experience with data integration and infrastructure, combined with his Master's in Machine Learning, equips him to bridge the gap between theory and practical application. He enjoys diving deep into data and emerging with clear and actionable insights.