QuickBooks Online + Microsoft 365 Integration — Power BI, Teams, Dataverse & SharePoint
QuickBooks Online + Microsoft 365 Integration connects the ledger your finance team runs with the platform everyone else works in — invoice, payment, and receivables data landing in Power BI on a schedule, approval and notification flows in Microsoft Teams driven by QuickBooks events, customers kept in step between QuickBooks and Dataverse or Dynamics 365 Sales, and invoice PDFs and supporting documents filed into SharePoint. Two facts shape every scenario: Microsoft retired its QuickBooks Online connector from Power BI in 2025, and there is no Microsoft-published QuickBooks Online connector for Power Automate — so this is real integration work against Intuit's Accounting API, registered under your own Intuit developer account, not a toggle. Billed by the hour at $175, with a standard engagement planned at one week; each scenario below can also be delivered on its own.
What this engagement is
Most small and mid-sized businesses on Microsoft 365 keep their books in QuickBooks Online, and the two worlds rarely talk. Finance lives in QuickBooks; everyone else lives in Teams, Outlook, and SharePoint. Management wants a receivables dashboard and gets a screenshot pasted into an email. Bills get approved in a reply-all thread nobody can find later. Sales keys the same customer into the CRM and into QuickBooks and the two drift apart within a quarter. Invoice PDFs go out by email and the only copy lives in someone's Sent Items. None of that is a QuickBooks problem or a Microsoft 365 problem — it is the gap between them, and closing it is integration work. The honest technical landscape comes first, because it changed recently. Microsoft retired its QuickBooks Online connector from Power BI in 2025, so the old 'Get Data → QuickBooks Online' path is gone and reports built on it stopped refreshing. There has never been a Microsoft-published QuickBooks Online connector for Power Automate. What Intuit does provide is a mature REST Accounting API: OAuth 2.0 authorization, entities for customers, invoices, payments, bills and attachments, a Reports endpoint that returns the same aged receivables, profit and loss, and balance sheet reports you see in QuickBooks, PDF endpoints for invoices and estimates, and webhooks that notify an endpoint when records change. So the family discipline we apply everywhere — first-party building blocks first, custom work only where they stop — resolves here into one decision: build a single, secure, reusable QuickBooks connection, and hang every scenario on it. That connection is either a Power Platform custom connector (which we can also deliver as its own fixed-price piece through our custom connector service) or, for higher volumes and unattended jobs, an Azure Function or Logic App with the tokens in Azure Key Vault. On top of that connection sit the four scenarios this page is built around. Reporting: a scheduled extraction of the agreed entities and reports into a staging store — SharePoint or OneDrive files for a small firm, Dataverse or Azure SQL where volume or history matters — with Power BI refreshing from there and a starter report for receivables aging, invoicing, and cash receipts. Teams: notifications when an invoice is created, paid, or falls overdue, and approval flows that route a request through Teams Approvals before the record is created in QuickBooks, so nothing posts unapproved. CRM: customers synchronized between QuickBooks and Dataverse or Dynamics 365 Sales under explicit system-of-record rules, with an optional path from a won opportunity to a QuickBooks customer and estimate or invoice. Documents: invoice, estimate, and sales-receipt PDFs and their attachments filed into a SharePoint library with metadata, where retention and permissions already exist. Two boundaries are stated up front so nobody is surprised later. We do not give accounting advice — chart of accounts, revenue recognition, and the month-end close are your accountant's domain, and our flows move data the way finance tells us it should move. And we do not migrate QuickBooks to Dynamics 365 Business Central or any other ERP: if the real problem is that your business has outgrown QuickBooks, that is an ERP implementation run by a Business Central partner, and we will say so rather than sell you an integration you would throw away in a year.
Success criteria
What you receive
How the work unfolds
Confirm which QuickBooks Online plan you run and how many companies are in scope, the entities and reports finance actually needs, the approval policies to encode, and the CRM landscape. Verify per-scenario prerequisites on both sides and agree the build order.
Register the app under your Intuit developer account, set up the sandbox company, complete Intuit's app assessment questionnaire together, and obtain production keys. On the Microsoft side, confirm Power Automate premium licensing, Power BI licensing, the Dataverse environment where CRM sync is scoped, and the Azure subscription where Functions, Logic Apps, or Key Vault are chosen.
Build and test the custom connector or Azure integration against the sandbox company: authorization, token refresh, throttling behavior, error handling, and logging. This is the component every scenario reuses.
Implement the agreed scenarios in the agreed order — reporting extraction and the Power BI starter report, Teams notification and approval flows, CRM synchronization, SharePoint filing — each tested against the sandbox company before it touches production data.
Run the reporting pipeline in parallel with QuickBooks' own reports until totals reconcile, complete UAT on approvals and sync with finance, switch notifications to production audiences, and deliver handover documentation and a quick start for the pilot group.
Prerequisites
Who does what
IT Partner
- Lead discovery, confirm per-scenario feasibility against your QuickBooks plan and the Intuit API, and put prerequisites in the scoping summary before build.
- Set up the Intuit developer app with you, walk through the app assessment questionnaire, and obtain production keys.
- Build the connection layer and the scoped scenarios with least-privilege identities, agreed secret handling, and documented connection ownership.
- Reconcile reporting outputs to QuickBooks with your finance owner and remediate in-scope defects during the agreed validation window.
- Support UAT for approvals, synchronization, and filing, and tune notification noise to what people will actually read.
- Provide handover documentation: connection ownership, token behavior, throttling limits, monitoring, and known limitations.
Your team
- Assign a finance owner, a Microsoft 365 administration contact, and — where CRM sync is scoped — a CRM owner who can decide system-of-record questions.
- Provide QuickBooks administrator access, the Intuit developer account, and Microsoft 365, Dataverse, and Azure access or working sessions as scoped.
- Confirm and provide the licensing on both sides: your QuickBooks plan, Power Automate premium, Power BI, Dataverse, and Azure consumption where used.
- Define approval policies, the reports that matter, the SharePoint library structure, and customer-matching rules for synchronization.
- Complete UAT with timely feedback, including reconciliation sign-off from finance.
- Own the integration after handover — connection renewals, approver changes, and QuickBooks user administration — with the documentation we leave behind.
What's not included
Limitations & technical notes
Frequently asked questions
What is the QuickBooks Online + Microsoft 365 Integration service?
An umbrella integration engagement that connects QuickBooks Online to the Microsoft 365 stack through Intuit's Accounting API: scheduled invoice, payment, and receivables data into Power BI, notification and approval flows in Microsoft Teams, customer synchronization with Dataverse or Dynamics 365 Sales, and automated filing of invoice PDFs and documents into SharePoint. We scope the scenarios that earn a place, build one secure QuickBooks connection under your own Intuit developer account, implement the agreed scenarios on it, and hand over documented configuration. Billed hourly at $175; each scenario is also available as its own smaller engagement.
Is there a native QuickBooks Online connector for Power BI?
Not any more. Microsoft retired the QuickBooks Online connector from Power BI in 2025 — it was removed from the service and from Power BI Desktop — so reports built on it stopped refreshing and 'Get Data → QuickBooks' is no longer a path. What works now is a pipeline: a scheduled job pulls the entities and reports you need from Intuit's API into a staging store, and Power BI refreshes from that store. That is exactly what the reporting scenario on this page builds. Licensed third-party connectors exist too; where one fits better, we say so and you license it.
Is there a QuickBooks Online connector in Power Automate?
There is no Microsoft-published QuickBooks Online connector. The options are a Power Platform custom connector defined over Intuit's REST API (the route we usually take, and one we can also deliver as a fixed-price piece through our custom connector service), an Azure Function or Logic App for unattended and higher-volume jobs, or a third-party connector you license. All of these are premium capabilities from a Power Automate licensing standpoint, which we confirm during scoping.
What can we actually see in Power BI?
Whatever finance needs and the API exposes — in practice: receivables aging by customer and bucket, invoices issued and paid by period, cash receipts, open estimates, and the outputs of QuickBooks' own reports through Intuit's Reports endpoint, such as profit and loss and balance sheet. The starter report covers receivables, invoicing, and cash receipts; anything larger — a finance dashboard program, blended reporting across QuickBooks and your CRM or operations data — continues under our Power BI development service. Everything reconciles to QuickBooks before anyone relies on it.
How do approvals in Teams work with QuickBooks?
Two patterns, and we are candid about which is which. Notification flows tell a channel or a person when something happens in QuickBooks — an invoice over a threshold is created, a payment lands, an invoice goes overdue. Approval flows go the other way: a request is raised in Microsoft 365 (a form, a Teams message, a SharePoint item), routed through Teams Approvals with your thresholds and approvers, and only then does the flow create the record in QuickBooks. The approval sits in front of the posting, not after it. If your QuickBooks plan includes built-in workflows, we look at those first and only build what they do not cover.
Can QuickBooks customers sync with Dynamics 365 Sales or Dataverse?
Yes, with rules agreed before anything syncs. For every field we decide which system is the source of truth — usually the CRM for names and contacts, QuickBooks for balances, terms, and payment status — and how conflicts and duplicates are handled. The common shape is one-way creation of a QuickBooks customer, estimate, or invoice when an opportunity is won, plus balance and overdue status flowing back into the CRM so sales can see it. Two-way synchronization of everything is possible but rarely wise, and we will say so when it is not.
Can invoices be filed to SharePoint automatically?
Yes. Intuit's API returns invoice, estimate, and sales-receipt PDFs, and exposes attachments on transactions, so a flow can file each document into a SharePoint library with metadata — customer, document number, date, amount — where your retention policies and permissions already apply. The reverse works too: a document approved in SharePoint can be attached to the QuickBooks transaction. Finance gets a searchable record without opening QuickBooks, and the copy in Sent Items stops being the system of record.
Do we need a developer account with Intuit?
Yes, and it should be yours. We register the integration app under an Intuit developer account your organization owns, test against a sandbox company, and complete Intuit's app assessment questionnaire with you — Intuit requires it before issuing production keys, even for a private app used by one company. The result is that the app, its keys, and the authorization to your books belong to you; if you ever change providers, nothing about the connection depends on us.
What does the integration have access to, and how is that secured?
Intuit's Accounting API scope covers the whole company file — there is no read-only or per-entity scope — so we treat the integration identity as a control. Secrets live in Azure Key Vault or in a connector connection owned by a named service identity rather than a person, flow editing is restricted, Intuit's short-lived access tokens and rotating refresh tokens are handled in the connection layer, and on the Microsoft 365 side we operate under least-privilege, time-bound access you approve. Your security or compliance owner signs off on the design before production keys are used.
What licensing do we need?
On the Microsoft side: Power Automate premium licensing for the users who own custom-connector flows, Power BI licensing for the people consuming reports, a Dataverse environment or Dynamics 365 Sales where CRM synchronization is scoped, and Azure consumption where Functions, Logic Apps, or Key Vault are used. On the Intuit side: your existing QuickBooks Online plan, noting that custom fields and built-in workflows vary by tier, plus a developer account. The scoping summary lists the per-scenario prerequisites in writing before you commit; we sell neither QuickBooks nor bundled connector subscriptions, and Microsoft licensing is at Microsoft's published prices.
We are outgrowing QuickBooks. Can you move us to Dynamics 365 Business Central?
No — and we would rather tell you that now. A QuickBooks-to-Business Central move is an ERP implementation: chart-of-accounts redesign, opening balances, inventory and posting setup, and functional consulting that belongs with a Business Central implementation partner. Integrating a ledger you are about to leave is money spent twice. If you are already on Business Central and need it connected to other systems, that is different work, and our Business Central integration service covers it.
Do you provide accounting advice as part of this?
No. We are integration engineers, not accountants. Which account a transaction posts to, how revenue is recognized, and what the close process looks like are decisions for your finance team and CPA; we encode those decisions faithfully in flows and reports, and we ask a lot of questions to make sure we have understood them, but we do not make them.
We run several QuickBooks companies. Does that change the scope?
Each QuickBooks Online company is a separate authorization and connection with its own throttling allowance, so multi-entity setups add effort roughly per company for the connection layer and for any consolidated reporting. It is a common situation and well handled — the scoping summary states the per-company work explicitly rather than surprising you mid-build.
How is the service priced, and how long does it take?
Billed hourly at $175, with total effort scoped per project. A standard umbrella engagement covering several scenarios is planned at about one week; a single-scenario engagement — the reporting pipeline only, or one approval flow — is smaller. Intuit's app assessment review adds elapsed time we do not control. You approve the scope in writing, and out-of-scope work is never started without your written approval.