QuickBooks Online
Every setting on the QuickBooks connection, what it does, and how your documents appear in your company file.
This page covers everything specific to QuickBooks Online: connecting, every setting on the connection page, how your documents look inside QuickBooks, and the QuickBooks rules the integration handles for you. For how the accounting export works in general (what triggers an export, account mapping, closed periods, history import), start with the accounting overview.
Before you connect
QuickBooks Online shows as available on request while Intuit's review of our app completes. Use the Request access button on the integration card and we will enable it for your account.
You need a QuickBooks Online company and a login that can approve app connections for it. Nothing needs to be configured inside QuickBooks first: the integration reads your chart of accounts, items and tax codes after connecting.
Connecting
- Go to Settings, then Integrations, and select Connect on the QuickBooks Online card.
- Sign in to QuickBooks. QuickBooks asks which company to connect; each connection binds to exactly one company.
- You land back on the connection page, connected. The connection is named after your QuickBooks company; rename it any time with the pencil next to the name.
Need a second company? Use Add another connection on the same card. Each connection gets its own page and its own settings. Add another connection always makes a new one: if a connection is disconnected or has an error and you want that same company back, open its page and use Reconnect instead, which keeps its account mapping and routing.
To try the integration against a QuickBooks sandbox company instead of a real one, choose "Connect to the QuickBooks Online sandbox instead" under the Connect button. Sandbox connections post to Intuit's sandbox servers, so real books are never touched. While your account is still in its trial test phase, every connection is a sandbox connection automatically and the link does not appear.
You can connect several companies at once. Two company files for two legal entities is a supported setup; each connection keeps its own account mapping, routing and settings. See billing entities for how documents are split between them.
If a connection stops working, the page shows Reconnect. Reconnecting refreshes access and keeps your settings and mappings.
Finishing setup
A newly connected QuickBooks connection cannot export anything yet, so the page opens as a two step checklist:
- Choose which billing entities export here. A document belongs to one billing entity and must reach one set of books. If you run a single entity, tick it and move on.
- Map the required accounts. Revenue and Payments received have no sensible default; money lands where you choose, nowhere else.
The full configuration page appears once both steps are done.
Where each amount lands
The account mapping grid pairs each part of an invoice with something in your QuickBooks company. The pickers list what is actually in your company file, read when you connect. If an account you just created in QuickBooks is missing from a picker, use Reconnect on the connection page to re-read your chart of accounts; your settings and mappings are kept.
- Revenue (required): the income account your invoice lines post to. QuickBooks bills every invoice line through a product or service rather than against an account directly, so the export finds the product or service whose income account is the one you picked and bills the line through that. If nothing in your QuickBooks posts to that account, the export stops and names the account, rather than letting QuickBooks file the revenue wherever its own default lands. Create a product or service in QuickBooks whose income account is the one you mapped, then retry.
- Payments received (required): the bank or clearing account payments are deposited to. Without an explicit deposit account, QuickBooks files payments under Undeposited Funds, where they sit until someone moves them by hand. Mapping this is how a payment lands where your reconciliation expects it.
- Tax rate: which of your QuickBooks tax codes an invoice's tax total files under. Leave it blank and QuickBooks uses its own defaults; the amounts still cross exactly.
- Discounts: discounts post as their own negative line against this account, so they never net against revenue and understate it.
- Prepaid credit: where a customer spending balance they already paid for draws from. See wallets for how prepaid balance works.
- Credit notes: where credits you issue are recognised. A credit note posts as a QuickBooks credit memo. See credit notes.
- Everything else: the catch-all product or service for anything not mapped above, so a partly configured connection exports rather than failing. On QuickBooks this is also the simplest way to satisfy every row at once, because it is already a product or service and needs no lookup.
Under Overrides you can point one product at a different account, or route payments from one gateway or one currency to their own deposit account, so a Stripe payout and a bank transfer reconcile separately. The most specific route wins.
How your documents appear in QuickBooks
- An invoice you finalise becomes a QuickBooks invoice; a payment becomes a payment applied to that invoice; a credit note becomes a credit memo. See the invoice lifecycle for when each of those happens.
- Line amounts arrive exactly as invoiced. The integration deliberately sends each line's amount rather than a unit price, because QuickBooks recomputes lines from unit prices and would replace your figures with its own arithmetic. What your customer saw is what your books show, to the penny.
- Invoice numbers longer than 21 characters are shortened, because that is QuickBooks' limit on document numbers. Your invoice numbering is unaffected here; only the copy in QuickBooks is trimmed.
- A taxable invoice can carry at most 750 lines in QuickBooks. Documents beyond that fail with a clear reason rather than posting half an invoice.
- Each exported customer carries a note with its yRecurring ID, so an accountant can trace any record back to its source.
Customers and names
QuickBooks requires every display name to be unique across customers, vendors and employees, and forbids colons, tabs and line breaks in names. The integration cleans forbidden characters automatically.
Two situations are handled for you:
- The name already exists as a customer. This usually means the record is one we created under an earlier connection. The integration adopts the existing record and updates it, instead of failing forever on a duplicate. If the QuickBooks record was deleted, its name stays reserved; the integration restores it, because a deleted customer cannot take documents.
- The name belongs to a vendor or employee. That is a genuine clash the integration will not touch, because attaching your invoices to a vendor record would be worse than failing. Rename one side and retry.
Currencies
A QuickBooks company starts single currency. In that state, a customer or invoice in any currency other than the company's home currency cannot exist there, and the export refuses it up front with the fix named rather than silently booking foreign amounts as home currency.
If you bill in more than one currency, turn on Multi Currency in QuickBooks first: the gear icon, then Account and settings, Advanced, Currency. Documents in your home currency export either way.
A customer has one currency, in both systems. A customer billed in two currencies is not something either side can represent.
Tax
QuickBooks takes one tax total per invoice and spreads it across the tax code you mapped under Tax rate. Your tax figures cross exactly as charged; QuickBooks is told not to recompute them. Lines that carry tax are flagged taxable, untaxed lines are flagged exempt, so QuickBooks' own tax engine never invents tax you did not charge. See how tax is applied for where the figures come from.
Importing your history
Import history on the connection page brings your existing ledger into QuickBooks: issued invoices, then the payments that settled them, then credit notes, in that order, so every invoice is credited with its payment. QuickBooks' generous API allowance means a large history typically completes in about an hour. Progress shows in Activity as a single summary row; anything skipped or failed sits behind a drill-in with its reason.
If a connection is deleted and set up again
QuickBooks has no field for storing our own identifier on an invoice, so the document number is the only handle. If the link between our record and yours is ever lost, the export searches QuickBooks for a document with that number before creating anything, and updates it when the customer and amount match.
That matters more on QuickBooks than on Xero, because QuickBooks does not require document numbers to be unique unless you turn on custom transaction numbers. Without the search, setting a connection up again would quietly post a second copy of every invoice you had already sent.
If the number turns out to belong to a genuinely different document, the export stops and names it rather than overwriting somebody else's invoice.
Keeping your books honest
The integration re-checks documents it has already sent and reports drift: a record deleted in QuickBooks, one whose total was edited there, or an invoice someone voided (QuickBooks keeps a voided invoice with its amounts zeroed; the integration reads that as voided, not as a total that drifted to zero). It reports only. It never rewrites something your bookkeeper changed on purpose.
Limits and quirks, in one place
- Document numbers are trimmed to 21 characters in QuickBooks.
- A taxable document holds at most 750 lines.
- Names lose colons, tabs and line breaks.
- Foreign currency documents need Multi Currency enabled in QuickBooks first.
- Payments without a mapped deposit account would land in Undeposited Funds, which is why Payments received is required.
- Invoice lines bill a product or service, never an account directly. Accounts you map are matched to the product or service that posts to them, and an account with nothing behind it stops the export instead of letting QuickBooks file the revenue under its own default.
- Voiding and refunding do not sync yet, in either direction. A refund you issue here needs a matching entry in QuickBooks by hand. See refunds.
- Credit memos carry no tax. Every line goes across flagged non taxable, so QuickBooks adds none of its own and the tax on the original invoice is not reversed. Credit a tax-charged invoice for its full total including tax, or it will keep showing the tax portion as owed, and adjust the tax in QuickBooks by hand.