Techmatic Xero Connector | Odoo ↔ Xero Two-Way Sync
Connect Odoo to Xero's cloud accounting platform over the official OAuth 2.0 flow and sync both ways — Contacts, Products, Customer Invoices, Vendor Bills, Credit Notes, Sale Orders (Quotes) and Purchase Orders, plus Accounts, Taxes and Currencies. Duplicate-safe matching, per-record push, bulk wizards, master-data mapping and a full audit log keep Odoo and Xero perfectly in step.
Secure OAuth 2.0 Connection with Auto Token Refresh
Connect over Xero's official OAuth 2.0 authorization-code flow; access tokens refresh automatically so the link never lapses. Multi-company aware and compatible with Odoo 19 Community and Enterprise.
Duplicate-Safe Two-Way Sync
Import and export Contacts, Products, Customer Invoices, Vendor Bills, Credit Notes, Sale Orders (Quotes) and Purchase Orders. Records are matched by natural key (email, product code, document number), so re-running a sync never creates duplicates.
Master-Data Mapping, Logs & Audit Trail
One-click import of the Xero chart of accounts, tax rates and currencies with automatic mapping. Every request is logged with one-click retry, and each record carries a Xero tab, a sync-origin tag and a chatter note for a complete history.
Set Up Your Xero App Credentials
Create a connection, paste the Client ID and Client Secret from your Xero app, and copy the generated Redirect URI into developer.xero.com. Then click Connect to Xero to start the secure authorisation.
Secure OAuth 2.0 Authorisation
Approve access on Xero's own consent screen. The connector uses the official OAuth 2.0 authorization-code flow, so your credentials never touch Odoo and access can be revoked from Xero at any time.
Connect & Test Your Xero Organisation
Once connected, click Test Connection to confirm Odoo has reached your Xero organisation. The connection is multi-company aware and shows live sync counts for Contacts, Items, Invoices and Bills.
Manage User Access & Permissions
Control who can configure and run the Xero connection. Assign the appropriate access rights so only authorised users can manage credentials, trigger syncs and view synced data.
One-Click Master Data Import
Import Master Data pulls your Xero chart of accounts, tax rates and currencies into Odoo in a single click — ready to be used when invoices and bills are synced.
Import the Xero Chart of Accounts
Pull Accounts imports every Xero account into Odoo as a real account.account record, matched by code so nothing is duplicated.
Imported Accounts Carry a Xero Tab
Each imported account gets a Xero tab showing its origin, Xero Account ID, connection and last sync time — a clear link back to Xero on every record.
Import Xero Tax Rates
Pull Tax Rates brings your Xero taxes into Odoo as account.tax records, with sales / purchase usage inferred from the Xero tax type.
Imported Taxes with Sync Details
Every imported tax shows a Xero tab with its origin, Xero Tax Type and last sync, so you always know which Xero rate it came from.
Import Xero Currencies
Pull Currencies activates and links the matching Odoo currency for every currency your Xero organisation is subscribed to.
Imported Currencies with Sync Details
Linked currencies carry the same Xero tab, recording the Xero currency code, connection and last sync.
Account, Tax & Currency Mapping
Choose the Sales, Purchase and Payment journals used on import, decide how contacts are matched, and review the automatically-built mapping between each Xero account code and its Odoo account so documents always post to the right ledger.
Pull Contacts from Xero
Pull Contacts imports your Xero customers and vendors, matching existing Odoo contacts by email or name so duplicates are never created.
Imported Contacts, Tagged & Linked
Imported contacts show a green Imported from Xero ribbon and a Xero tab with the origin, Xero Contact ID, connection and last sync.
Every Import Logged on the Connection
Each pull posts a summary to the connection's chatter — how many records were fetched, created and updated — and updates the live sync counters at the top.
Pull Products from Xero
Pull Items imports Xero items as Odoo products, matched by internal reference so existing products are updated rather than duplicated.
Imported Products with a Xero Tab
Every product keeps a Xero tab with its sync origin, Xero Item ID and last sync, plus a stat button to push it back at any time.
Pull Customer Invoices
Pull Invoices imports Xero customer invoices into Odoo as draft invoices, resolving the contact, account and tax on every line through the mapping.
Imported Invoices as Ready-to-Review Drafts
Each imported invoice carries a Xero tab with its origin, Xero Invoice ID, connection and last sync, and a Push to Xero button in the header.
Pull Vendor Bills
Pull Bills imports Xero vendor bills as Odoo draft bills, filed in your chosen purchase journal with accounts and taxes mapped automatically.
Imported Bills with Full Sync Details
Vendor bills carry the same Xero tab and sync-origin tag, so their link to Xero is always visible.
Pull Credit Notes
Pull Credit Notes imports both customer and vendor credit notes from Xero into Odoo as draft credit notes.
Imported Credit Notes, Linked to Xero
Credit notes keep their Xero tab with origin, Xero ID and last sync for a complete two-way trail.
Pull Quotes as Sale Orders
Pull Quotes → SO imports Xero quotes into Odoo as draft sale orders, with lines mapped to the matching products and taxes.
Imported Quotes with a Xero Tab
Sale orders show a Xero tab with the origin, Xero Quote ID and last sync, plus a Push to Xero button to send them back.
Pull Purchase Orders
Pull Purchase Orders imports Xero purchase orders into Odoo as draft purchase orders, matched by number so re-runs never duplicate them.
Imported Purchase Orders, Linked to Xero
Purchase orders carry the Xero tab with origin, Xero Purchase Order ID and last sync, completing the two-way order flow.
Bulk Import in One Step
The Bulk Import wizard brings everything across at once — master data, contacts, items, invoices, bills, credit notes, quotes and purchase orders — as ready-to-review drafts.
Bulk Import Summary & Activity
When the import finishes, a per-type summary is shown and each operation is recorded in the connection's chatter for a full, timestamped history.
Per-Record Push to Xero
Every synced record gets a Push to Xero button and a Xero tab. Push a single Contact, Product, Invoice or Order straight from its form.
Export Tags & Audit Notes
After a push, an Exported to Xero ribbon appears, the Xero ID is stored on the record, and a note recording the Xero ID is posted to the chatter.
Export to Xero from Any List
Select records in a list view and choose Actions → Export to Xero to push them in bulk. This action is available across all supported models — Customers & Vendors, Products, Sale Orders, Purchase Orders, Customer Invoices, Vendor Bills and Credit Notes — not only the Contacts shown in this example.
Connection Activity Log
Every import and export is posted to the connection's chatter, giving a running, timestamped history of every sync operation right on the Xero connection.
Full Audit Log with Retry
Every API call is recorded in the Xero Logs with its type, subject, status code and response summary. Failed operations show the exact Xero reason and can be retried in one click.
Everything Under the Xero Menu
Connections and Operations (Bulk Import and Logs) live under a single Xero app menu, keeping the whole integration a click away.
Releases
Two-way Odoo ↔ Xero connector for Odoo 19 with OAuth 2.0 and automatic token refresh. Duplicate-safe sync of Contacts, Products, Customer Invoices, Vendor Bills, Credit Notes, Sale Orders (Quotes) and Purchase Orders; one-click master-data import and mapping for Accounts, Taxes and Currencies; per-record push, a list-view Export to Xero action, a bulk import wizard, sync-origin tags, chatter notes and a full audit log with retry. Compatible with Community and Enterprise.
Our Services
Odoo Customization
Odoo Implementation
Odoo Support
Hire Odoo Developer
Odoo Integration
Odoo Migration
Odoo Consultancy
Odoo Implementation
Odoo Licensing Consultancy
Contact Us
+91 7995411325
info@techmaticsys.com
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Contacts (contacts)
• Discuss (mail) • Invoicing (account) • Purchase (purchase) • Sales (sale_management) |
| Lines of code | 2700 |
| Technical Name |
techmatic_xero_connector |
| License | LGPL-3 |
| Website | https://www.techmaticsys.com |
Please log in to comment on this module