Skip to main content

Full integration capabilities for Xero

Understand exactly what data syncs between your CRM and Xero, and in which direction.

Written by Heather

What is Xero?

Xero is a cloud accounting platform used by small and medium-sized businesses to manage invoicing, bills, bank reconciliation, payroll and reporting. Prospect CRM integrates tightly with Xero so your sales team and finance team always work from the same customer, product and order data.

What data do we sync?

Rather than syncing a few basic fields, the integration runs a continuous layer that pulls customer, product, stock, order, invoice and credit note data from Xero into the CRM, and pushes new customers, products and confirmed orders back to Xero. Your reps quote and confirm orders in the CRM; your accounts team works in Xero; the two stay in lockstep without any manual re-entry.

The sync runs continuously and picks up any records modified since the previous run. Most changes are visible in the CRM within a few minutes of being made in Xero.

Some actions trigger an immediate sync rather than waiting for the next scheduled pass:

  • Creating a new customer in the CRM pushes it to Xero straight away.

  • Confirming an order in the CRM creates the Xero invoice immediately.

  • Creating a new product via the Product Creator pushes it to Xero when the first order containing it is confirmed.

Customers

Feature

What it does

Customer account code

The Xero Contact ID becomes the Sales Ledger ID in the CRM. The Xero account number (if set) is used as the Display Description so reps can find customers by whichever code they know. You can choose whether the CRM shows the Xero account number or the customer name via a system option.

Company name

Imported from the Xero Contact name on sync. The same name populates the Company, Division and Sales Ledger records in the CRM.

Company phone number

Imported from the Xero contact’s primary (DEFAULT) phone number, with country code, area code and number combined. Fax numbers import separately from the FAX-typed phone.

Company type

Set automatically to Customer or Supplier based on the Xero Contact’s IsCustomer and IsSupplier flags. Contacts that are both are imported as Customers.

Email address

Imported from the Xero contact’s primary email address.

Postal address

Imported from the Xero POBOX address (Address Lines 1–5, Country, Postcode).

Default currency

Imported from the contact’s default currency in Xero. Used for quoting and order creation.

Sales tax type

Imported from the contact’s default accountsReceivableTaxType. Drives tax handling on quotes and orders.

VAT registration number

Imported from the contact’s Tax Number.

Discount

Any default discount percentage set on the Xero contact is imported as the Overall Discount on the CRM Sales Ledger.

On stop status

If a Xero contact is Archived, the CRM marks the matching Sales Ledger as On Stop, which prevents new orders from being confirmed.

Customer balance

The customer’s outstanding accounts-receivable balance (including any overdue portion) is synced from Xero, so reps can see who’s overdue at a glance.

Contacts

When a Xero contact is imported, the CRM creates a Contact record using the First Name, Last Name, Email and primary phone. Where a Xero contact has multiple Contact Persons, the primary one is used.

Suppliers

Xero contacts marked as IsSupplier are imported into the CRM as Purchase Ledgers, including address, phone, email, fax and website.

Products

Feature

What it does

Product SKU

The Xero item Code is imported as the CRM Product Item ID.

Product name and description

The Xero item Name becomes the CRM Product Description. The Xero item description becomes the CRM Extended Description, which can be pulled into Word quote tables.

Selling price

The Xero Sales Unit Price is continuously synced and used on CRM quotes.

Cost price

The Xero Purchase Unit Price is synced as the CRM Cost Price.

Sales account code

The item’s default Sales Account Code is imported as the CRM Sales Analysis field, driving how revenue is categorised when an order is invoiced in Xero.

Purchase account code

The item’s default Purchase Account Code is imported as the CRM Purchase Analysis field.

Sales tax type

The item’s default Sales Tax Type is imported as the CRM VAT Code.

Tracked inventory

If the Xero item is set to track inventory, the CRM marks the product as Stocked and imports stock on hand on each routine sync.

Sold and purchased flags

Items marked as Sold in Xero are imported as Sellable and not Obsolete. Items not marked as Sold are marked Obsolete to keep your product list clean.

Stock levels

For tracked items, the Xero quantityOnHand is imported as both Free Stock and Physical Stock against the single default warehouse. On-Order and allocated quantities are not available in Xero’s API, so those fields are not populated.

📌 Note: Xero’s Item record doesn’t include barcodes, units of measure, product groups or product images. If you need those fields, you can either use an inventory management system such as Unleashed or Cin7 alongside Xero, or manage them directly in the CRM.

Sales orders and invoices

Feature

What it does

Sales invoices

All Xero ACCREC (sales) invoices are imported into the CRM as a Sales Order Header and Sales Transaction lines, linked by the Xero Invoice ID for consistent re-imports.

Invoice status mapping

AUTHORISED and PAID invoices come through as confirmed Invoices. DRAFT and SUBMITTED invoices come through as Pending. DELETED and VOIDED invoices are flagged accordingly and filtered out of reports.

Invoice lines

Every Xero invoice line becomes a Sales Transaction row, including product, description, quantity, unit price, tax-exclusive and tax-inclusive values, home-currency equivalents and account code.

Paid status and date

Fully paid invoices are flagged as paid in the CRM and the paid date is recorded. Zero-total invoices are also treated as paid.

Customer reference

The Xero invoice Reference field is imported as the CRM Customer Reference.

Due dates

Both the invoice date and the due date are imported, enabling overdue analysis and reporting.

Confirmed CRM orders

When a quote is confirmed in the CRM, a new ACCREC invoice is created in Xero immediately with all line items, currency, tax handling and a back-link to the originating CRM quote. The invoice is created as Draft by default, ready for your accounts team to review and authorise.

Custom description handling

The CRM can optionally combine the product Description and Extended Description when sending lines to Xero. Useful if your product names are short codes but customers expect the full description on the invoice. Controlled by a system option.

Delivery charges

Where a CRM order has a delivery charge, an extra line is added to the Xero invoice.

Credit notes

Feature

What it does

ACCRECCREDIT credit notes

All Xero customer credit notes are imported into the CRM as Sales Transaction rows with a Transaction Type of “C” (Credit) and negative amounts, so they net correctly against invoice totals in reports.

Status and paid flag

Paid credit notes are flagged accordingly. DELETED and VOIDED credit notes are filtered out of reports.

Purchase orders

Feature

What it does

Xero purchase orders

Xero Purchase Orders are imported as Purchase Order Headers and Purchase Transaction lines, giving buyers and account managers visibility of incoming goods alongside the customer pipeline.

Purchase order status

BILLED orders are marked as Order Completed. DELETED orders are marked as Obsolete.

📌 Note: The integration doesn’t import Xero Bills (ACCPAY invoices). For full spend analysis on suppliers, you’d typically pair Xero with an inventory or procurement system.


Tax rates and currencies

Feature

What it does

Tax rates

All active Xero Tax Rates are imported. For each rate the CRM generates the relevant combinations of country type (Home, EU registered, EU unregistered, Non-EU) and transaction type (Sales/Purchase) so the right tax applies to the right scenario.

Currencies

All currencies enabled in your Xero organisation are imported. Because Xero doesn’t expose live exchange rates via its API, the CRM pulls rates from a separate rates service so multi-currency quoting works correctly. Currency import can be turned off via a system option if you prefer to manage currencies manually.

Did this answer your question?