Skip to main content

Use the Ezus × QuickBooks integration

If your agency uses QuickBooks for its accounting, you can connect the two tools via the Ezus API. Each tool keeps its own role:

  • Ezus remains the reference for your commercial data: customers, suppliers, projects, quotes, margins and invoices.

  • QuickBooks remains the reference for accounting and cash: general ledger, VAT, bank reconciliation and financial reporting.

The connection relies on a connector (custom development or an integration platform) that moves data between the two tools.

What is synchronized

From Ezus to QuickBooks:

  • your customers and suppliers;

  • your sales invoices and credit invoices;

  • your supplier invoices, with their PDF.

From QuickBooks to Ezus:

  • payments received from your customers;

  • payments made to your suppliers.

💡 Each invoice is linked to its Ezus project. Your projects can therefore be matched to projects or classes in QuickBooks to track profitability per file.

Sales: from finalized invoice to payment

  1. In Ezus: you finalize a sales invoice or a credit invoice on a project.

  2. The connector retrieves the invoice: lines, VAT, totals, PDF link and customer details.

  3. In QuickBooks: the customer is matched (or created), then the invoice is posted with its PDF attached.

  4. In Ezus: payments received appear on the project and the invoice switches to paid.

Purchases: from supplier invoice to payment

  1. In Ezus: you attach a supplier invoice PDF to its project and supplier.

  2. The connector retrieves the invoice: amounts, due date, PDF link and supplier details.

  3. In QuickBooks: the supplier is matched (or created), then the supplier invoice is posted as a bill with its PDF.

  4. In Ezus: payments made in QuickBooks update the supplier invoice.

For integrators: technical details

Each flow relies on existing Ezus API routes:

Flow

Direction

QuickBooks object

Ezus routes

Customers

To QuickBooks

Customer

GET /clients then GET /client

Invoices and credit invoices

To QuickBooks

Invoice, CreditMemo

GET /invoices then GET /invoice

Customer payments

To Ezus

Payment

POST /deposits-create

Suppliers

To QuickBooks

Vendor

GET /suppliers then GET /supplier

Supplier invoices

To QuickBooks

Bill + Attachable

GET /invoices-supplier then GET /invoice-supplier

Supplier payments

To Ezus

BillPayment

POST /invoices-supplier-payments-create

💡 To retrieve an invoice, use two calls. The plural route (/invoices) returns the list of invoices and lets you identify the ones to transmit, for example with the ?stage=completed filter. The singular route (/invoice) then returns the full details of an invoice: lines, VAT, totals, PDF link.

The same logic applies to supplier invoices, customers and suppliers.

Reverse flows are also possible: customers, suppliers and supplier invoices can be created from QuickBooks using the matching upsert routes.

On the sales side, the invoice status is updated via PUT /invoices-update.

Design principles:

  • Sync at your own pace: real time, scheduled or triggered by an event, following the frequencies described earlier in this article.
    ​

  • No duplicates: every write is an upsert on a reference of your choice, with strict create and update modes.
    ​

  • Long-lived access: in addition to the API key, refresh tokens are valid for 90 days and rotated on each use.
    ​

  • Linked records: QuickBooks IDs can be stored in Ezus custom fields on customers, suppliers and invoices.
    ​

  • Documentation: public reference at api.ezus.io.

Setup

  1. Scoping: identify your QuickBooks edition, the flows to enable and your VAT and currency rules.
    ​

  2. API access: get your credentials from Settings > Developers.
    ​

  3. Build and test: map your accounts and VAT codes, then test the flows on real projects.
    ​

  4. Go live: enable synchronization on your production account and carefully review your first month-end close.

💡 Coming soon: several API improvements are planned to make this type of connector easier to build. They include one-click OAuth authorization, delta synchronization, new signed webhooks, allocation of a payment to a specific invoice, accounting and VAT codes per line, multi-currency support and a sandbox environment. We will update this article as they become available.

Did this answer your question?