Shop & Products·4 min read·

How do I connect Xero to sync orders and contacts to my accounting?

Authorize your Xero organisation once, and every completed order creates an ACCREC invoice with a matching Xero contact — free instead of paying for the official accounting-sync plugin.

The Xero connector keeps your accounting current without manual entry: every completed order creates an ACCREC (accounts receivable) invoice in your Xero organisation, with a matching Xero contact for the customer. It's a free alternative to the $109/year official accounting-sync plugin.

Step 1 — Install the plugin

Go to Admin → Plugins → Marketplace, find Xero, and click Install. This adds a settings panel at Admin → Plugins → Xero.

Step 2 — Authorize your Xero organisation

Open the Xero panel and click Connect. This is an OAuth flow — you sign in to Xero, approve access to your organisation, and you're redirected back with the panel showing Connected. There's no API key to copy or paste.

If you see a notice that the connector isn't configured instead of a Connect button, that's a platform-level setup step your VeloCMS instance hasn't completed — not something you can fix from this panel. Contact support if you're self-hosted and want it enabled.

What happens after an order

  • VeloCMS looks up the customer's email in your Xero contacts. If a match exists, it's reused; otherwise a new Xero Contact is created for them.
  • An ACCREC invoice is then created in Xero for the order, linked to that contact.
  • If the contact lookup or creation fails for any reason, the invoice is still created using the customer's email directly — a contact hiccup never stops the invoice from syncing.

If Xero is briefly unreachable or your authorization has expired, the sync attempt fails quietly in the background — it never blocks or delays the order itself.

Disconnecting

Click Disconnect in the panel to revoke access. Invoices and contacts already created in Xero stay there; no further invoices are created after disconnecting.