QuickBooks and Xero via Zapier

Keito’s native Xero and QuickBooks Online integrations are part of the Business plan. On the Solo and Pro plans you can still keep your accounting software up to date with Keito by connecting both through Zapier, which is available on every Keito plan. This page shows how, what it covers, and where the native integrations go further.

Note: Zapier moves data one Zap run at a time and does not link Keito and your accounting records afterwards. Test every Zap with a test client and a small invoice before enabling it for real clients.

Requirements

  • A Keito workspace on any plan, connected to Zapier as described in the Zapier integration overview.
  • A QuickBooks Online or Xero account connected to Zapier through Zapier’s own QuickBooks Online or Xero app.
  • A Zapier plan that allows multi-step Zaps and Filter steps. Check Zapier’s pricing for task limits and app availability.
  • Customers or contacts in the accounting app named the same as your Keito clients, or a Find or Create step in the Zap to create them.

What You Can Automate

Keito event Accounting result QuickBooks Online steps Xero steps
An invoice is issued (state becomes open) An invoice with the same number, dates, and lines Find or Create Customer, Find Invoice, Create Invoice Find or Create Contact, Find Invoice, Create Sales Invoice
An invoice is paid in Keito (state becomes paid) A payment applied to that invoice Find Invoice, Create Payment Find Invoice, Create Payment
A client is created A customer or contact Find or Create Customer Create/Update Contact
A customer is created in accounting A Keito client New Customer trigger, then Keito Find or Create Client New Contact trigger, then Keito Find or Create Client
An expense is recorded in Keito An expense or bank transaction Create Expense Create Bank Transaction

Everything below the table uses the step names shown in Zapier’s QuickBooks Online and Xero apps at the time of writing; the Zap editor is the final reference.

Copy Issued Invoices To Accounting

Trigger on the invoice becoming open, not on creation: a new Keito invoice is a draft with a placeholder DRAFT- number, and the final number is assigned when it is sent.

  1. Keito → Updated Invoice. Optionally limit it to one client.
  2. Filter by Zapier. Only continue if State exactly matches open.
  3. Find or create the customer. QuickBooks: Find or Create Customer with Client Name. Xero: Find or Create Contact with Client Name. Map the result into the invoice step so the customer never has to exist first.
  4. Guard against duplicates. Updated Invoice fires again when an open invoice is edited, so look the invoice up first: QuickBooks Find Invoice by invoice number, or Xero Find Invoice by number, with the option to continue when nothing is found. Add a Filter that only continues when the search found nothing.
  5. Create the invoice. QuickBooks: Create Invoice with the customer, Number as the invoice number, Issue Date, Due Date, Currency, and the line items. Xero: Create Sales Invoice with the contact, Number as the invoice number or reference, dates, and line items; set the status (draft or approved) and the account code the step asks for.
  6. Map the line items from Keito’s Line Items group: Description, Quantity, Unit Price. Keito’s Kind (service or product) and Project ID can go into the item or description fields.

Tax. Keito applies tax as invoice-level percentages with a taxed flag on each line, while QuickBooks and Xero want a tax code or tax type per line. Choose the default tax code or tax type in the accounting step. If some lines are untaxed, add a Paths by Zapier split on the Keito Taxed flag, or send the invoice total as a single line when you only need the totals to match.

Discounts and second tax. A Keito discount or second tax rate is not a line, so add it as its own line in the accounting step or leave it to be entered by hand.

Credit lines. A Keito line with Effect credit reduces the total; send it as a negative line or a discount line according to the accounting app’s rules.

Record Keito Payments In Accounting

When a Keito invoice is marked paid (a recorded payment, a Stripe payment, or a manual status change), apply the payment to the accounting invoice you created earlier.

  1. Keito → Updated Invoice.
  2. Filter by Zapier. Only continue if State exactly matches paid.
  3. Find the accounting invoice. QuickBooks Find Invoice or Xero Find Invoice by Keito’s Number.
  4. Apply the payment. QuickBooks Create Payment, linked to the found invoice, with Amount and Paid At. Xero Create Payment against the found invoice with the amount, the payment date, and the bank account the step asks for.

Keito’s paid state means the invoice is fully paid; partial payments and the payment method are not exposed to Zapier. Use Amount as the payment amount and check the first few payments in your accounting software.

Record Accounting Payments In Keito

There is no Zapier step to record a payment in Keito, so a payment entered in QuickBooks or Xero does not mark the Keito invoice paid automatically. You can:

  • Record the payment in Keito and let the Zap above copy it to accounting, so Keito is the source of truth for payment status.
  • Use a QuickBooks New Payment or Xero New Payment trigger to notify your team (Slack, email) that an invoice needs marking paid in Keito.
  • Use the Business plan’s native integration, which reconciles payments from QuickBooks Online every two hours and keeps Xero payment status aligned.

Keep Customers And Clients Aligned

  • Keito → New Client, then QuickBooks Find or Create Customer or Xero Create/Update Contact, mapping Name, Address, and Currency.
  • The other direction: QuickBooks New Customer or Xero New Contact, then Keito → Find or Create Client with the customer name, so a client created in accounting exists in Keito before you invoice it.

Matching is by name in both directions, so keep client names identical in both systems.

Native Integration Or Zapier?

Native Xero or QuickBooks (Business plan) Zapier (any plan)
Invoice copy One click or automatic per invoice, with sync status on the invoice A Zap per invoice transition, tracked in Zap history
Customers Created or linked from Keito clients, with import for QuickBooks Find or Create by name in each Zap
Tax and accounts Default tax codes, revenue accounts, items, classes, and tracking categories configured once Chosen in each Zap step; per-line tax needs Paths
Invoice numbering Keito numbering can align with Xero Keito number copied as the accounting number or reference
Payments QuickBooks reconciliation every two hours; Xero payment status kept aligned; optional payment copying Keito paid state copied to accounting; nothing flows back
Retries and errors Stored on each invoice and retried from Keito Zapier retries and Zap history
Time and expenses QuickBooks time activity and expense sync where enabled Time and expense triggers into any accounting step you map
Cost Included in Business Zapier tasks per run; QuickBooks Online and Xero availability depends on your Zapier plan

If you invoice a handful of clients a month, the Zapier route keeps your books current with a few Zaps. If you rely on payment status flowing back into Keito, per-line tax handling, or many invoices, the native integration on the Business plan removes the manual reconciliation. Plans and prices are on the pricing page.

Limits To Plan For

  • Polling. Zapier checks Keito on your plan’s schedule, so an invoice reaches accounting minutes after it is sent, not instantly.
  • Duplicates. Without the Find Invoice guard, an edit to an open invoice creates a second accounting invoice. Keep the guard in every invoice Zap.
  • Numbers must be unique. QuickBooks and Xero reject or renumber a duplicate invoice number depending on their settings; keep Keito as the numbering source or use the accounting number and store Keito’s number in the reference field.
  • Currency. Map Keito’s Currency when the accounting company uses multi-currency; otherwise invoice in the company currency only.
  • Voided or closed invoices. Keito’s voided and closed states are visible to Updated Invoice, but voiding in accounting is a separate step (QuickBooks Void Invoice); add it only if you need it.
  • Edits after copying. Line changes in Keito after the invoice was copied do not update the accounting invoice unless you add an Update Invoice or Update Sales Invoice Zap keyed on the invoice number.

Troubleshooting

Issue What to check
The invoice Zap never runs The Filter uses State exactly open; Updated Invoice must be the trigger, not New Invoice, because a new invoice is a draft.
Two accounting invoices for one Keito invoice The Find Invoice guard is missing, or the Filter after it continues when an invoice was found.
Customer not found Names differ between Keito and accounting; use Find or Create Customer or Contact and map the Keito client name.
Tax totals differ The accounting step applies a different tax code than Keito’s percentage; adjust the default tax code or split lines with Paths.
Payment applied to the wrong invoice Find Invoice matched by date or reference instead of number; map Keito’s Number and check the search’s match field.
Payment does not appear in Keito Expected: Zapier cannot record payments in Keito. Record it in Keito or use the Business plan’s native sync.

Need help mapping a specific workflow? Contact us with the Zap steps you have in mind.