First page of Microsoft's 100,000-partner directory, sorted by responsiveness Microsoft Solutions Partner — Security, Modern Work, Infrastructure, App Innovation Microsoft partner since 2006 1,100+ organizations under management
Home/Services/QuickBooks Online + Microsoft 365 Integration
API Integration

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.

Timeline 1 weekService owner Alex PiloffQuickBooks OnlineMicrosoft 365Microsoft Power Automate

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

01The scoping session produces an agreed scenario list — reporting, Teams notifications and approvals, CRM sync, SharePoint filing — with QuickBooks plan features, Intuit developer prerequisites, and Microsoft licensing verified per scenario before build.
02A production QuickBooks connection exists under your own Intuit developer account: the app is registered, Intuit's app assessment questionnaire is completed, production keys are issued, and tokens are stored under the agreed secret-handling pattern rather than in a flow someone owns personally.
03Where scoped, the agreed QuickBooks entities and reports refresh into the staging store on schedule, and the Power BI report reconciles to QuickBooks for an agreed test period — the receivables aging total in Power BI matches the QuickBooks report for the same day.
04Where scoped, Teams notification and approval flows fire for the agreed events with tested error paths, a named connection owner, and an approval record you can audit.
05Where scoped, customer records synchronize between QuickBooks and Dataverse or Dynamics 365 Sales per the agreed system-of-record rules, with duplicate handling proven on test data before production.
06Where scoped, invoice and document PDFs land in the agreed SharePoint library with the agreed metadata, and the finance team can find a given invoice without opening QuickBooks.
07Administrators receive handover notes covering connection ownership, token renewal behavior, Intuit throttling, monitoring, and known limits.

What you receive

Integration scoping summary: the scenario set, per-scenario QuickBooks plan and Microsoft licensing prerequisites, the number of QuickBooks companies in scope, and the agreed build order.
Intuit developer readiness: an app registered under your Intuit developer account with OAuth 2.0 configured, a sandbox company for testing, the app assessment questionnaire completed with you, and production keys issued — the app and its keys are yours, not ours.
The QuickBooks connection layer: a Power Platform custom connector defined over Intuit's Accounting API, or an Azure Function or Logic App integration for unattended and higher-volume jobs — with token refresh, retry and back-off for Intuit throttling, secret storage in Azure Key Vault or a connector connection under a named service identity, and logging.
Reporting pipeline (where scoped): scheduled extraction of the agreed entities and Reports-endpoint outputs into SharePoint or OneDrive files, Dataverse, or Azure SQL, plus a Power BI semantic model and starter report covering receivables aging, invoicing, and cash receipts. Larger dashboard programs continue under our Power BI development service.
Teams automation (where scoped): notification flows for the agreed QuickBooks events, and approval flows built on Teams Approvals that create the QuickBooks record only after approval — with thresholds, approvers, and escalation as your finance policy defines them.
CRM synchronization (where scoped): QuickBooks customers mapped to Dataverse accounts and contacts or Dynamics 365 Sales, with the mapping document, system-of-record rules, conflict handling, and — where agreed — the won-opportunity-to-QuickBooks path for customer, estimate, or invoice creation.
SharePoint filing (where scoped): flows that file invoice, estimate, and sales-receipt PDFs and their attachments into the agreed library with metadata such as customer, document number, date, and amount, and optionally attach SharePoint documents back to QuickBooks transactions.
Test results or UAT acceptance record for every implemented scenario, and administrator handover notes with a pilot-group quick start.

How the work unfolds

Discovery and scenario scoping

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.

Intuit developer and Microsoft readiness

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 the QuickBooks connection layer

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.

Build the scoped scenarios

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.

Reconcile, UAT, and hand over

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

A QuickBooks Online subscription with company-administrator access; features such as custom fields and built-in workflows vary by QuickBooks plan, and we confirm what your plan supports during scoping rather than assume it.
An Intuit developer account owned by your organization — we create and administer the app with you, but the app, its keys, and the authorization belong to you.
A Microsoft 365 tenant with Power Automate premium licensing for the users who own custom-connector flows, Power BI licensing for the people who will consume the reports, a Dataverse environment or Dynamics 365 Sales where CRM synchronization is scoped, and an Azure subscription where Azure Functions, Logic Apps, or Key Vault are the chosen components.
A named finance owner who can answer 'which number is the right one' during reconciliation and validate the reports against QuickBooks.
Written approval policies where approvals are scoped: thresholds, approvers, delegation, and escalation.
Security or compliance sign-off for an integration identity that reads accounting data — the QuickBooks Accounting API scope covers the whole company file — and for the data flows into Microsoft 365.
Identified pilot users, Teams channels, SharePoint libraries, and representative test data in the sandbox company before build begins.

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

Accounting, bookkeeping, tax, or audit advice. Chart-of-accounts design, revenue recognition, reconciliation rules, and the close process are your accountant's domain; we build the flows the way finance tells us the data should move.
QuickBooks Online to Dynamics 365 Business Central — or any other ERP — migration. This is deliberately out of scope: outgrowing QuickBooks is an ERP implementation run by a Business Central partner, and we will tell you so honestly rather than integrate a system you are about to leave. Our Business Central integration service is integration development for organizations already running it.
QuickBooks Desktop and QuickBooks Enterprise. They use a different integration model (QBXML and the Web Connector) and are quoted separately if needed; this page is QuickBooks Online only.
QuickBooks Online subscriptions, Intuit developer or app fees, and Intuit Payments — purchased by you from Intuit; we do not resell QuickBooks.
Microsoft licensing: Power Automate premium, Power BI, Dataverse capacity, Dynamics 365 Sales, and Azure consumption are billed by Microsoft; we name exactly what is needed before you commit.
Third-party connector or iPaaS subscriptions. Where a licensed third-party QuickBooks connector is genuinely the better route for a scenario, we say so and you license it; we do not bundle vendor subscriptions into hourly work.
Single sign-on or automated user provisioning into QuickBooks Online from Microsoft Entra ID. QuickBooks user administration is Intuit's, and this service does not promise an identity integration Intuit does not expose for your plan.
Two-way accounting synchronization — posting bills, journal entries, or payments into QuickBooks from Microsoft 365 beyond the agreed create scenarios. General-ledger posting from external systems is separately scoped work with its own controls, not a notification flow.
Cleanup of existing QuickBooks customer lists, duplicate merging, or historical re-keying unless separately scoped; synchronization is designed around the data quality you have, and the scoping summary says what that means.
24/7 support, continuous monitoring, and ongoing maintenance are not included by default; they are available as optional extra-cost add-ons delivered through IT Partner's NOC, third-party support partnerships, and a Microsoft Premier Support agreement.

Limitations & technical notes

!Power BI reporting on QuickBooks Online data runs through a staging store, not a live connector: Microsoft retired its QuickBooks Online connector from Power BI in 2025, and Intuit's API is not something Power BI can query directly on a scheduled refresh without an intermediate layer. Reports refresh on the schedule the extraction runs — hourly or daily is typical — not in real time.
!There is no Microsoft-published QuickBooks Online connector for Power Automate. Flows use a custom connector or an Azure integration, both of which count as premium capabilities, so the users who own those flows need Power Automate premium licensing; we verify this in scoping.
!Intuit throttles the Accounting API — 500 requests per minute per company and a small number of concurrent requests are Intuit's published limits at this writing — so bulk extractions are batched and paced, and webhook notifications arrive in aggregated batches rather than instantly. 'Near real time' here means minutes, and we say so in the design.
!Intuit requires an app assessment questionnaire before production keys are issued, including for private, single-company apps. It is a planned step in the engagement, but Intuit's review time is Intuit's, not ours.
!The QuickBooks Accounting API scope grants access to the whole company file — there is no read-only or per-entity scope — so the integration identity, its secrets, and who can edit the flows are treated as controls, not conveniences. Intuit's token behavior (short-lived access tokens, rotating refresh tokens) is handled in the connection layer and documented at handover.
!Feature availability tracks your QuickBooks plan: custom fields, built-in workflows, and some reporting options differ between tiers, and each additional QuickBooks company is a separate authorization and connection. The scoping summary states what your plan supports before build, not after.
!The service is billed hourly at the published rate; a standard umbrella engagement is planned at one week, and the final timeline depends on how many scenarios are in scope. A single-scenario engagement — the reporting pipeline only, or one approval flow — is smaller and estimated accordingly.

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.

Didn’t find your question?

Ask it here. A real engineer answers by email within one business day — and if it’s a good one, it becomes part of this page so the next person finds it.

Answered by a person, one time, to your inbox. Nothing you type here is published without a human reviewing and anonymizing it first.

Often combined with