⟷
Xero Connector
Module 9 · MCP server · bidirectional sync · audit-logged · quarantine on mismatch (no silent failures)
Events (24h)
15
across all integrations
Success rate
100.0%
15/15 events
Connection
✓ Live
OAuth refresh in 47m
Quarantined
0
requires human resolution
🪄 AI on standby: classifies quarantined records, suggests partner_id matches, retries with rate-limit backoff, escalates to ops if >1h stuck.
✦AI Resolve: classify quarantined records
✦Match Xero contacts to Odoo partners
✦Force rate-cache refresh now
Sync events · last 24h
Customer master · invoices · pay-item rates · timesheets · pay-run results · green OK · red quarantined
| When | Event | Records | Status | Detail |
|---|---|---|---|---|
| 2026-05-13 07:53 | → Timesheets tagged | 52 | OK | completed |
| 2026-05-13 07:29 | ← Pay-run result | 276 | OK | completed |
| 2026-05-13 06:24 | ← Pay-item rate cache | 283 | OK | completed |
| 2026-05-13 06:20 | ← Customer master sync | 49 | OK | completed |
| 2026-05-13 01:43 | → Invoice push | 180 | OK | completed |
| 2026-05-12 14:59 | ← Customer master sync | 287 | OK | completed |
| 2026-05-12 14:19 | ← Pay-item rate cache | 116 | OK | completed |
| 2026-05-12 09:50 | → Invoice push | 75 | OK | completed |
| 2026-05-12 09:28 | ← Pay-item rate cache | 99 | OK | completed |
| 2026-05-11 13:50 | ← Customer master sync | 7 | OK | completed |
| 2026-05-11 13:15 | ← Customer master sync | 94 | OK | completed |
| 2026-05-11 11:08 | ← Pay-run result | 272 | OK | completed |
| 2026-05-11 01:50 | ← Customer master sync | 207 | OK | completed |
| 2026-05-10 22:26 | ← Pay-item rate cache | 89 | OK | completed |
| 2026-05-10 21:57 | ← Pay-run result | 2 | OK | completed |
In-scope syncs
- Customer master — bidirectional (Odoo ↔ Xero Contacts)
- Invoices — Odoo → Xero (Odoo operational, Xero AR book-of-record)
- Bills — Xero → Odoo (visibility) + Odoo → Xero (AP from M13 OCR)
- Chart of Accounts + tax rate mapping — one-time config
- Bank feed reconciliation status — Xero is SoR, Odoo reads
- Employee master — bidirectional with Xero Payroll
- Pay-item rate cache refresh — Xero Payroll → Odoo (daily + on-demand)
- Tagged timesheet export — Odoo → Xero Payroll (per pay period)
- Pay-run results read-back — Xero Payroll → Odoo (drives variance check)
Out of BBN's scope (Xero owns)
- Pay-run execution + payslip generation
- STP Phase 2 lodgement to ATO
- SuperStream + super clearance
- BAS submission
- Bank reconciliation
Xero remains the financial + payroll book of record. BBN never independently sets a wage.