QuickBooks Online Integration
Via ZapierAgencyPro connects to QuickBooks Online through Zapier, not a built-in integration. Two Zaps cover most agencies: one creates the QuickBooks customer and invoice when you create an invoice in AgencyPro, the other records the payment when the AgencyPro invoice changes to paid. QuickBooks Desktop is not supported.
Connects via Zapier
AgencyPro connects with QuickBooks Online through Zapier, not a native built-in integration. You build automated workflows ("Zaps") with the AgencyPro app on Zapier, which has triggers for clients, requests, tickets, invoices, payments and order forms. You need the AgencyPro Plus plan and a Zapier account. Zapier's Free plan runs two-step Zaps; multi-step Zaps and premium apps need a paid Zapier plan.
Browse AgencyPro ZapsWhy connect QuickBooks Online with AgencyPro
If your accountant works in QuickBooks Online, two Zaps remove most of the re-keying between AgencyPro and your books. The steps below are a reference setup built from the data AgencyPro sends to Zapier and the QuickBooks Online actions listed on Zapier. Run it with one test invoice before you rely on it.
What AgencyPro sends. The AgencyPro app on Zapier has Invoice Created, Invoice Updated, Invoice Deleted and Payment Created triggers (AgencyPro on Zapier). Invoice events carry the invoice number, issue date, due date, status, currency, subtotal, discount amount, tax amount, total, paid date, and the client's name and email. Invoice Created fires when the invoice is first saved, as a draft, and the line items may not be in that first event, so build the QuickBooks invoice from the totals rather than line by line. Payment Created fires when a payment record is created; for online checkout that is when the client starts paying, with status pending, so it is not a reliable paid signal. Use Invoice Updated filtered to status paid instead.
Sales tax. AgencyPro calculates tax on its own invoice. QuickBooks calculates tax again from the tax code you map, and US companies on QuickBooks' automated sales tax get a rate based on the customer's address. Send the line amount before tax (subtotal minus discount), choose the tax code that matches the rate you charged, and compare the QuickBooks total with the AgencyPro total on your test invoice. Do not add AgencyPro's tax amount into the line amount, or the client is taxed twice in your books.
Retries and reconciliation. AgencyPro sends each event to Zapier when it happens. If Zapier does not accept it within 30 seconds, AgencyPro tries twice more, 1 and 5 minutes later, then stops. A step that fails inside Zapier, such as a QuickBooks validation error, shows in Zap history, where you can replay it; Zapier's autoreplay, on its Professional plan and up, retries up to 5 times over about 10.5 hours (Zapier: replay Zap runs). Zaps do not backfill old invoices or copy later edits. Once a month, export invoices from AgencyPro (Exports > Invoices, CSV) and compare totals and paid status with QuickBooks.
Plans. QuickBooks Online is a premium app on Zapier, so you need a paid Zapier plan (from $19.99 a month) as well as the AgencyPro Plus plan. The two Zaps use about four Zapier tasks per invoice: two to create it, two to record the payment. AgencyPro has no time entry or expense triggers, so time and expenses do not flow to QuickBooks this way.
QuickBooks Desktop: Zapier does not support it. Intuit does publish a QuickBooks Desktop SDK and Web Connector for developers, but AgencyPro has no Desktop connector. Desktop users can export invoices from AgencyPro and enter them in QuickBooks, or use the AgencyPro API (Plus plan) with a third-party Desktop connector.
Key features
Benefits for your agency
How agencies use QuickBooks Online with AgencyPro
Invoices into your books
Invoice Created in AgencyPro finds or creates the QuickBooks customer and creates the invoice from the AgencyPro totals, with your tax code applied.
Payments applied to the right invoice
When an AgencyPro invoice changes to paid, the Zap finds the QuickBooks invoice by number and records the payment against it, ready to match with the bank feed.
A month-end check for your accountant
Compare AgencyPro's invoice export with the QuickBooks invoice list once a month. Differences point to a failed Zap run or an edit made in only one system.
How to set up QuickBooks Online with Zapier
- Before you start: AgencyPro on the Plus plan, a paid Zapier plan, and in QuickBooks Online a service item for agency work (for example Agency services) and the account client payments are deposited to.
- Zap 1 trigger: AgencyPro, Invoice Created.
- Zap 1 action: QuickBooks Online, Find or Create Customer. Search by the client email from the trigger; create with the client name and email if no match is found.
- Zap 1 action: QuickBooks Online, Create Invoice. Customer: the customer from the previous step. Invoice date: issue date. Due date: due date. One line using your agency services item, with amount = subtotal minus discount amount (add a Formatter number step if you give discounts) and description "AgencyPro invoice" plus the invoice number. Tax code: the code for the rate you charge. If you map the invoice number, QuickBooks keeps it only when custom transaction numbers are on in its sales settings. Do not let QuickBooks email the invoice; AgencyPro already sends it.
- Zap 2 trigger: AgencyPro, Invoice Updated. Add a Filter step: status exactly matches paid.
- Zap 2 actions: QuickBooks Online, Find Invoice by invoice number; a Filter that continues only if that QuickBooks invoice still shows an open balance, so a later edit to a paid invoice does not record the payment twice; then Create Payment for that customer, amount = total, date = paid date, linked to the found invoice and deposited to your payments account.
- Optional Zap 3: AgencyPro, Invoice Deleted, then QuickBooks Online Find Invoice and Void Invoice, so drafts you delete in AgencyPro do not stay open in QuickBooks.
- Test with a small invoice to a test client: check the customer, line, tax and total in QuickBooks, mark the AgencyPro invoice paid, check the payment is applied, then turn the Zaps on.
Frequently asked questions
Does this work with QuickBooks Desktop?
No. Zapier supports QuickBooks Online only. Intuit offers a Desktop SDK and Web Connector, but AgencyPro does not have a Desktop connector. Desktop users can enter invoices manually or build on the AgencyPro API with a third-party connector.
Which plans do I need?
AgencyPro Plus for Zapier access, and a paid Zapier plan because QuickBooks Online is a premium app on Zapier. The setup on this page uses multi-step Zaps, which also need a paid Zapier plan.
Does it sync past invoices?
No. Zaps run on new events after you turn them on. Enter older invoices manually or with QuickBooks' own import, using AgencyPro's invoice export (Exports > Invoices) as the source.
How is sales tax handled?
QuickBooks recalculates tax from the tax code in your Zap. Send the pre-tax amount (subtotal minus discount), pick the tax code that matches the rate AgencyPro charged, and compare the totals on a test invoice. If they differ, fix the tax setup in QuickBooks rather than adding AgencyPro's tax amount to the line.
Why not use Payment Created to record payments?
Because AgencyPro creates the payment record when a client starts an online checkout, with status pending, and the AgencyPro Zapier app has no trigger for the later change to succeeded. Invoice Updated filtered to status paid only runs once the invoice is actually paid.
What if the two systems get out of step?
AgencyPro retries delivery to Zapier twice (after 1 and 5 minutes). After that, check Zap history for failed runs and replay them. Edits made later in only one system are not synced, so reconcile with AgencyPro's invoice export at month end.
More Accounting integrations
Ready to get started?
See how QuickBooks Online fits into your AgencyPro setup, or ask us which plan you need.