Skip to main content

Xero two-way sync

Understand exactly what Prospect CRM pushes back to Xero, and what it doesn’t.

Written by Heather

Most of what people associate with the Xero integration is the import; bringing customers, products, stock, invoices and credit notes from Xero into the CRM so reps can quote against accurate data. The integration is also two-way: alongside the import, the CRM pushes selected changes back to Xero so your accounts team doesn’t have to re-enter anything.

What gets pushed to Xero

There are three outbound flows from the CRM to Xero.

What’s pushed

How it works

Customer creation and updates

When a new customer is created in the CRM, or an existing customer’s details change, the corresponding Xero Contact is created or updated. This includes name, email, default currency, contact status, tax type, tax number, phone, address and contact name. Newly created Xero contacts also inherit accounting defaults from a template ledger; branding theme, payment terms, default account codes and tracking categories, so they’re ready for use without manual setup.

Product creation and updates

When a new product is created in the CRM, or an existing product’s price or description changes, the corresponding Xero item is created or updated. Code, name, description, sales unit price, sales account code, sales tax type, purchase unit price and purchase account code are all pushed.

Order confirmation to Xero invoice

When a quote is confirmed in the CRM, a new ACCREC invoice is created in Xero immediately. The invoice includes the customer, currency, customer reference and a line for each quote line (product, description, quantity, unit price, tax, discount and account code). If the order has a delivery charge, an extra line is added. The invoice is created as Draft so your accounts team can review and authorise.

When the push happens

Customer and product updates run as part of the same routine sync that drives imports. In day-to-day use, changes are reflected in Xero within a few minutes.

Order confirmation is different: when you confirm a quote in the CRM, the resulting Xero invoice is created immediately rather than waiting for the next routine pass.

What doesn’t push to Xero

What’s missing

Why

Real-time field-level sync

Unlike the Unleashed integration, the Xero integration doesn’t push field changes instantly. Changes flow on the routine sync rather than in real time. For most workflows, this is fine; if you need instant push-back of every field change, Unleashed is a better fit.

Payment receipts

If customers pay through the CRM, for example via Stripe, the receipt is recorded in the CRM but isn’t pushed to Xero as a payment. Your accounts team reconciles these in Xero as they would any other bank transaction.

Obsolete product archiving

When you mark a product as obsolete in the CRM, it’s removed from new quotes but isn’t archived in Xero. If you want the matching Xero item archived, do that in Xero directly.

Bills and purchase invoices

Bills (ACCPAY invoices) are managed entirely in Xero. The CRM doesn’t read or write them.


The template ledger

A beneficial part of the outbound push is the template ledger. When the CRM creates a new customer in Xero, it doesn’t just push the basics (name, email, address), it also copies a set of accounting defaults from a Xero contact you nominate as your template:

  • Branding theme: so the customer’s invoices use the right logo and design.

  • Payment terms: so due-date calculations work automatically.

  • Sales tracking categories: so revenue lands in the right tracking buckets.

  • Default sales account code: so revenue posts to the right account.

  • Default purchase account code: for completeness.

  • Default discount percentage: if you want new customers to start with a standard discount.

Set the template ledger to a Xero contact whose accounting setup represents a typical new customer for your business. New customers created from the CRM will arrive in Xero fully configured.

📌 Note: The template ledger only applies on customer creation. When the CRM updates an existing Xero contact, it doesn’t overwrite tracking categories, payment terms, branding theme or discount, those stay as your accounts team set them.


Practical implications

If your accounts team manages tracking categories in Xero

They can keep doing exactly that. The CRM doesn’t touch tracking categories on existing Xero contacts. New contacts inherit categories from the template ledger; everything else is left alone.

If your accounts team manages contact-level discounts

The CRM only sets a discount on customer creation and never overwrites it on update. Discounts set on existing customers by your accounts team stay in place.

If you confirm a quote that turns out to be wrong

Because invoices are created as Draft in Xero, your accounts team has the chance to catch problems before they’re sent. If you spot the issue in the CRM, void the order. If your accounts team spots it in Xero, they can void or edit the Draft invoice. Voided invoices flow back to the CRM on the next sync flagged as Status “D”, so CRM-side reporting stays consistent.

Did this answer your question?