QuickBooks Online is the backbone of financial management for millions of small and medium-sized businesses. It handles invoicing, payroll, bank reconciliation, inventory, and accounts payable reliably. But when it comes to analysis, customisation, and executive-level reporting, it consistently falls short.
That gap is exactly where Power BI steps in. By connecting QuickBooks Online to Power BI through a reliable connector, our team at Versich has helped businesses move from static exports and manual spreadsheets to fully automated, interactive dashboards that update on a defined schedule. In this blog, we walk through how to build custom Power BI reports using a QuickBooks connector, the methods available, what changed after Microsoft deprecated its native connector in August 2025, and how we structure these solutions for long-term reliability. If you want a broader look at how we approach the integration itself, our guide on connecting Power BI to QuickBooks Online covers the foundational steps in detail.
Why QuickBooks Online Reporting Falls Short for Growing Businesses
QuickBooks Online is built for bookkeeping, not for business intelligence. Its standard reports cover the basics: a profit and loss statement, balance sheet, accounts receivable aging, and a handful of transaction summaries. That is sufficient when a business is small and reporting needs are simple.
As businesses grow, reporting needs change. Finance teams start needing to compare performance across departments, regions, or product lines. Operations teams want to monitor cash flow trends week over week. Leadership wants a single dashboard that pulls together revenue, costs, and KPIs without waiting for the finance team to compile a spreadsheet.
QuickBooks Online cannot deliver any of this natively. Its custom report builder is limited. Its export function sends data to Excel, which then requires manual work to format, update, and distribute. There is no scheduling, no live refresh, and no drill-through. For growing businesses, this creates a recurring bottleneck every time a decision needs data to support it.
What a QuickBooks Connector for Power BI Actually Does
A QuickBooks connector for Power BI creates a bridge between your QuickBooks Online company data and the Power BI data model. Instead of manually exporting reports and uploading them, the connector queries the QuickBooks API on a defined schedule and loads the results into Power BI automatically.
Depending on the connector you use, you get access to some or all of the following data objects:
- Invoices and invoice line items
- Bills and bill payments
- Profit and loss by class, location, or customer
- Balance sheet accounts and their movements
- Journal entries and general ledger transactions
- Customer and vendor records
- Bank transaction feeds and reconciliation data
- Payroll summaries (where available)
Once that data is in Power BI, you can model it, build relationships between tables, write DAX measures, and design reports that go far beyond what QuickBooks can produce natively.
The Deprecation of Microsoft's Native QuickBooks Connector and What It Means
If your organisation previously relied on the built-in QuickBooks Online connector inside Power BI Desktop, you need to know that Microsoft fully deprecated it in August 2025. Scheduled refreshes in Power BI Service using this connector stopped working at that point. Manual refreshes in Power BI Desktop still function but cloud-based automation does not.
Microsoft has not announced any plans to release a replacement. This means businesses that built dashboards on the native connector are now either refreshing data manually or running stale reports. Neither option is acceptable for organisations that rely on their Power BI dashboards for daily or weekly decisions.
The practical impact for our clients has been to move to third-party connectors or custom API-based pipelines, both of which we cover in the sections below. The good news is that these approaches are often more robust than the native connector was, because they give us direct control over the schema, refresh frequency, and error handling.
Current Methods for Connecting QuickBooks Online to Power BI
With the native connector no longer viable for cloud-scheduled refreshes, there are three main approaches our team uses depending on the client's scale, technical environment, and budget.
| Method | Best For | Refresh Frequency | Technical Complexity |
|---|---|---|---|
| Third-party connector (e.g. CData, Coupler.io) | SMBs needing quick setup | Every 15 minutes to daily | Low |
| Custom QuickBooks API to Azure SQL pipeline | Enterprise clients, multi-company | Near real-time or scheduled | High |
| Power Automate export to SharePoint or OneDrive | Workaround for basic needs | Triggered or scheduled | Medium |
| OAuth Direct Query via third-party ODBC driver | Power users who need live data | Live / DirectQuery | High |
For most of our SMB and mid-market clients, a third-party connector combined with an intermediate SQL database is the most reliable path. The connector handles the QuickBooks API authentication and data extraction. The SQL layer gives us a stable, queryable source that Power BI connects to natively without any connector deprecation risk.
Setting Up a Third-Party QuickBooks Connector With Power BI
The setup process varies slightly by connector, but the core steps are consistent across all of the tools we use with clients. Here is how we typically configure a new connection.
Step 1: Choose your connector and authenticate.
Select a connector that has confirmed QuickBooks Online API support and stable Power BI compatibility. Authenticate using OAuth 2.0 credentials from your QuickBooks Online company settings. If you have multiple QuickBooks companies, most enterprise-grade connectors allow you to select more than one company in the same connection.
Step 2: Select the data entities you need.
Most connectors present the available QuickBooks data objects as a table list. Select only what your report requires. Common selections for financial dashboards include the profit and loss summary table, accounts receivable aging, bank transactions, invoices, and vendor bills. Limiting your selection reduces API call volume and speeds up refresh times.
Step 3: Configure the destination.
If you are using an ETL-style connector that writes to a database, point the output to an Azure SQL Database or SQL Server instance. This becomes the stable data source that Power BI connects to. If you are using a DirectQuery connector, your Power BI report queries QuickBooks data live at report load time.
Step 4: Set the refresh schedule.
Configure your connector to refresh on the frequency your reports require. Daily is sufficient for most financial dashboards. If your team needs intraday updates, for example for sales or cash flow monitoring, a 15-minute refresh is available on most platforms. Align this with your Power BI dataset refresh schedule so the two stay in sync.
Step 5: Build your Power BI data model.
Once data is flowing, open Power BI Desktop and connect to your SQL source or use your connector's Power BI integration. Build relationships between tables, write your DAX measures, and set up your report pages. This is where the real customisation work happens.
Custom Reports Our Team Builds With QuickBooks Data in Power BI
The most common request we receive from finance teams is a set of operational dashboards that they can share with leadership without manual preparation. For fully customised solutions, the scope goes deeper than standard report builders can support.
Here are the report types we most commonly build for clients using QuickBooks Online as the data source:
| Report Type | Data Source in QuickBooks | Key Metrics |
|---|---|---|
| Profit and Loss Dashboard | P&L summary, journal entries | Revenue, gross margin, operating expenses, net income by period |
| Accounts Receivable Aging | Invoices, customer records | Outstanding balances by age bucket, days sales outstanding, overdue by customer |
| Cash Flow Monitor | Bank transactions, bill payments | Opening vs closing cash, cash in vs out, rolling 13-week trend |
| Budget vs Actual | P&L + imported budget data | Variance by category, percentage vs target, forecast to year-end |
| Multi-Company Consolidation | Multiple QBO company files | Consolidated P&L and balance sheet, intercompany eliminations |
| Vendor Spend Analysis | Bills, vendor records | Spend by vendor, category, and period; top 10 vendors by cost |
Multi-Company Reporting Using the QuickBooks Connector
One of the most common reasons clients come to us for a custom Power BI solution is multi-company or multi-entity reporting. When a business operates across multiple QuickBooks Online company files, getting a consolidated view is nearly impossible inside QuickBooks itself.
A connector that supports multiple QuickBooks company connections solves this at the data level. Here is how we typically structure it:
- Each QuickBooks company file is authenticated separately within the connector.
- Data from each company is extracted into separate tables in an Azure SQL Database, with a CompanyID column added to every row.
- Power BI connects to the SQL database and uses DAX measures to aggregate across companies or filter to a single entity using a slicer.
- Intercompany transactions are flagged using a reference table and excluded from consolidated totals.
This approach lets finance teams see a consolidated P&L or cash position across the whole group, or drill into any individual entity within the same report. Our broader guide on connecting QuickBooks Online to SQL Server goes deeper into the SQL layer setup that makes this possible.
Data Modelling Best Practices for QuickBooks and Power BI
A connector handles the extraction. The quality of your Power BI report depends on how well the data model is built once the data arrives. These are the modelling principles we apply on every QuickBooks Power BI project.
- Use a star schema. Keep fact tables like invoices and bill payments at the centre. Relate them to dimension tables like customers, vendors, accounts, and dates. Avoid putting everything in one flat table.
- Build a proper date table. QuickBooks date fields are text strings in the API. Transform them to proper date types and relate them to a date dimension table that supports period comparisons in DAX.
- Separate the class and location dimensions. QuickBooks class and location tracking fields are extremely useful for departmental reporting but need to be extracted and modelled as separate dimensions rather than embedded text in the fact table.
- Avoid DirectQuery where possible. DirectQuery sends every visual's query directly to QuickBooks at report load time. For large datasets or complex visuals, Import mode with a scheduled refresh gives much faster report performance.
- Version your data model. Keep the Power BI .pbix file in a source control repository. When you update the connector schema or add new measures, changes are tracked and rollback is straightforward.
Security and Access Considerations When Using a QuickBooks Connector
Any connector that accesses your QuickBooks Online company data holds OAuth tokens that grant read access to your financial records. Handling these tokens properly is not optional.
Here is how we handle security on every client engagement:
- OAuth tokens are stored in a secrets manager, not in plain text configuration files or environment variables accessible to multiple users.
- Connector service accounts are granted read-only access to QuickBooks. Write access is never required for reporting and should not be granted.
- Power BI row-level security is configured wherever reports are shared across teams with different data access levels, for example a regional manager who should only see their own entity's data.
- Scheduled refresh credentials in Power BI Service are stored in the gateway or service credential store, not in the report file itself.
- Token expiry monitoring is set up so that connector authentication failures are caught before they cause silent stale data issues in reports.
Common Mistakes When Building a QuickBooks Power BI Connector Solution
After running these implementations for many clients, we see the same mistakes come up repeatedly. Knowing them in advance saves a significant amount of troubleshooting time.
- Relying on the deprecated native connector. As covered earlier, Microsoft's built-in QuickBooks Online connector in Power BI no longer supports cloud refresh. If you are still using it, your data is either stale or refreshed manually. Switch to a supported third-party solution.
- Pulling all QuickBooks tables without selection. Extracting every available entity adds significant load time and storage cost. Pull only the tables your reports actually need.
- Not accounting for QuickBooks API rate limits. The QuickBooks Online API has request rate limits. Refreshing too frequently across too many entities can trigger throttling errors. Work within the limits and batch your requests sensibly.
- Mixing fiscal and calendar year logic. QuickBooks supports custom fiscal year start months. If your Power BI date table assumes a January start and your client runs April to March, your period comparisons will be wrong.
- Skipping the SQL staging layer. Connecting Power BI directly to a connector endpoint without a SQL staging layer makes your reports dependent on the connector's uptime. A database staging layer decouples Power BI from the connector and protects your reports during connector outages.
How Versich Structures QuickBooks and Power BI Projects
Our approach to every QuickBooks Power BI connector project follows a consistent structure that we have refined over many implementations. Understanding this structure helps clients know what to expect and what decisions need to be made before we begin.
Discovery and scoping. We start by understanding which QuickBooks entities the reports need, how many companies are involved, what the refresh frequency should be, and who will access the reports. This shapes every subsequent decision about connector choice, architecture, and security.
Connector selection and setup. We select the connector based on the client's environment, whether they are on Azure or on-premise, and what their IT policies allow. We configure authentication, entity selection, and the destination database.
Data model build. We build the Power BI data model in Power BI Desktop, including all table relationships, calculated columns, and DAX measures. We design the model to support the specific reporting questions the client has, not just generic financial summaries.
Report and dashboard development. We build the report pages according to the agreed layout, with navigation, slicers, and drill-through configured so that end users can explore data without needing help from the analytics team.
Deployment and training. We publish the report to Power BI Service, configure scheduled refresh, set up row-level security where needed, and run a training session so the team can manage filters, export to PDF or PowerPoint, and share with stakeholders correctly.
Conclusion
QuickBooks Online remains a strong accounting platform, but its native reporting capabilities are not designed for the kind of analysis that growing businesses need. By connecting it to Power BI through a reliable QuickBooks connector, you replace manual exports and static spreadsheets with automated dashboards that refresh on schedule and give every stakeholder access to accurate, current financial data.
The deprecation of Microsoft's native connector in August 2025 was disruptive for many organisations, but it also created an opportunity to move to more robust, purpose-built connection methods that give greater control over the data pipeline. Whether that means a managed cloud connector, a custom API-to-SQL pipeline, or a DirectQuery setup, the right approach depends on your scale, your environment, and the reports you need to produce.
If you want to explore what a custom Power BI solution built on your QuickBooks data would look like for your organisation, contact the Versich team and we will walk you through the options.

