Xero logoFreshbooks logoXero to Freshbooks
AvailableNative · XeroNative · Freshbooks

Connect Xero to Freshbooks with Well

Move Xero bills and contacts through Well and into Freshbooks as expenses and bills, with the audit trail kept on every record.

About Xero and Freshbooks

Xero logo
Xero
Source

The Xero integration connects Well to your accounting platform for bidirectional data flow.

Freshbooks logo
Freshbooks
Target

The FreshBooks connection delivers extracted documents into FreshBooks through its email-in address.

Why this pair

Connect Xero to Freshbooks through Well so records flow without manual rework.

What Well does between Xero and Freshbooks

  • One-way: Xero into Well into Freshbooks
  • Sync mode: Real-time MCP push
  • Events arrive in seconds
Xero logo
Trigger from Xero
5 events · pick one
Well engine·recipe·When a Xero invoice is read
Source
from upload · live webhook
Datadog Sarl
via Xero
Invoice
When a Xero invoice is read
INV-2026-04-100 · 22 Apr 2026€1,284.00
Extract
6 fields read from Xero
6 fields read
  • VendorDatadog Sarl
  • Invoice numberINV-2026-04-100
  • Issue date22 Apr 2026
  • Total€1,284.00
  • Tax€256.80
Enrich
against your historical record graph
5 fields added
  • Legal entityDatadog Sarl
  • Tax idFR12830146588
  • Domaindatadog.com
  • Ledger account6156 · Monitoring
Confidence97%
<55% refused5585% review85% auto-posts
Post
post as expenses and bills
Create a bill in FreshBooks (Select plan)
auto-posted
posted
  • TypeBill
  • VendorDatadog Sarl
  • Amount€1,284.00
  • Ledger6156 · Monitoring
  • Source docattached
  • Confidence97%
audit linkto Freshbooks
Freshbooks logo
Action in Freshbooks
3 compatible with this trigger
Create a bill in FreshBooks (Select plan)Create an expense in FreshBooksResolve a FreshBooks merchant from the receipt

12 signals and actions across Xero and Freshbooks

  • When a Xero bank transaction is read

    Captures spent and received money transactions reconciled in Xero with amount and account code.

    Trigger·Transaction
  • When a Xero payment is read

    Reads the payment applied to a Xero invoice or bill with method, account, and amount.

    Trigger·Payment method
  • When a Xero bank account is read

    Pulls the bank-type accounts from the Xero chart of accounts with currency and account number.

    Trigger·Account
  • When a Xero purchase order is read

    Pulls Xero purchase orders with supplier, line items, and totals to match against the arriving bill.

    Trigger·Invoice
  • When a Xero credit note is read

    Captures Xero credit notes with contact, totals, and tax so refunds reconcile against the original invoice.

    Trigger·Invoice
  • When a Xero invoice is read

    Pulls Xero sales and purchase invoices with contact, line items, totals, and tax.

    Trigger·Invoice
  • When a Xero invoice attachment is read

    Picks up the source PDF attached to a Xero invoice as a document.

    Trigger·Document
  • When a Xero contact is read

    Pulls Xero contacts with name, trading address, and tax number to match against your companies.

    Trigger·Company
  • Create an expense in FreshBooks

    Well forwards the receipt PDF to your FreshBooks email-in address; FreshBooks creates an expense with merchant, total, and tax populated.

    Action·Transaction
Reference
Field mapping for XeroFreshbooks
16 fields across 3 record types, open to see the full table.

Invoice fields

8 fields flow from Xero into Freshbooks.

Xero fieldFreshbooks field
Invoice.Total.totalamount
Invoice.CurrencyCode.currencycurrency_code
Invoice.Date.issue_datecreate_date
Invoice.DueDate.due_datedue_date
Invoice.InvoiceNumber.invoice_numberinvoice_number
Invoice.TotalTax.taxvat_amount
Invoice.SubTotal.subtotalsubtotal
Invoice.InvoiceID.idexternal_id

Transaction fields

5 fields flow from Xero into Freshbooks.

Xero fieldFreshbooks field
BankTransaction.Total.amountamount
BankTransaction.CurrencyCode.currencycurrency_code
BankTransaction.Date.createddate
BankTransaction.Reference.descriptionnote
BankTransaction.BankTransactionID.transaction_idexternal_id

Company fields

3 fields flow from Xero into Freshbooks.

Xero fieldFreshbooks field
Contact.Name.nameorganization
Contact.TaxNumber.tax_idvat_number
Contact.ContactID.idclient_id

Connect Xero and Freshbooks in three steps.

  1. Xero logo1

    Connect Xero

    Click Connect with Xero; Well's OAuth proxy handles Xero authorisation through Dynamic Client Registration. Xero's MCP server registers a read-scoped Well client through DCR; no credential paste, no shared secret.

    • AuthOAuth 2.0
  2. 2

    Map your accounts

    Well discovers Xero's bills, contacts, tracking categories, and tax types read over Xero's MCP server and the the FreshBooks expense or bill queue. Match candidates are scored on counterparty, amount, date, and reference; above 85% confidence the link posts automatically, below it the candidate set queues for sign-off.

    • Auto-post above85% confidence
    • Overridemanual anytime
  3. Freshbooks logo3

    Connect Freshbooks

    Click Connect with FreshBooks; FreshBooks asks for the account to authorise and returns a refresh token and authorise read-only discovery of your existing records so Well can match against them when forwarding documents. Access tokens are exchanged and refreshed automatically before they expire, and the grant is revocable from your FreshBooks.

    • AuthConnect
    • First syncup to an hour

How Xero and Freshbooks stay secure with Well

Well connects to Xero through its MCP server, which issues short-lived access tokens via Dynamic Client Registration. Well never holds a long-lived Xero secret; the server refreshes its own tokens on each session. Well's storage region is configured per workspace regardless of where Xero and Freshbooks host theirs.

MCP server authStorage region per workspaceGDPR-aligned
Scopes Well requestswellapp.ai/v1/mcps/xero/mcp
  • Read Xero records

    Scoped to bills, contacts, tracking categories, and tax types read over Xero's MCP server. No access to anything else in your Xero account.

    granted
  • Deliver documents to your Freshbooks inbox

    Well forwards the extracted document to your Freshbooks email-in address; Freshbooks reads expenses (or bills on the Select plan) via email-in, with merchant, total, and tax populated from it and you review and post. No write credential to Freshbooks is requested.

    granted
  • Modify or delete Xero records

    Not granted. Xero is read-only on Well's side; the source of truth never moves.

    refused
  • Read other workspaces' data

    Encryption keys are per-workspace; another tenant's records are inaccessible by design.

    refused
Disconnect any time from Well settings or Xero’s admin panel.

Frequently asked questions about Xero and Freshbooks on Well

01Will every Xero record post to Freshbooks automatically?
Not always. Within seconds of Xero firing the event, Well scores the record on field completeness, counterparty strength, and policy fit. Above the 85% default auto-link threshold Well forwards the reconciled document to your Freshbooks email-in address and Freshbooks drafts the record from it for you to confirm. Between 55% and 85% the record waits in the review queue with the alternative matches ranked. Below the 55% default review threshold the record is refused and the candidate list kept so you can pin the right entry by hand.
02What happens to historical Xero data when I first connect to Freshbooks?
Xero exposes seven years of accounting history through its API on a connected account. The window Well actually pulls is configurable from the integration settings page; each record is matched against your existing Freshbooks ledger, and re-running the backfill is safe because Well tracks the Xero record IDs and updates existing Freshbooks entries instead of duplicating them.
03How does Well prevent duplicates when posting Xero records to Freshbooks?
Xero sends each event with a stable resource ID that Well tracks against the Freshbooks ledger. Webhook replays (which Xero can issue for delivery retries) are recognised by ID and either skipped or used to update the existing Freshbooks entry. Distinct records that look similar are caught by Well before posting, with the candidates surfaced in the review queue when confidence is ambiguous.
04Can I customise which Xero fields are sent to Freshbooks?
The default mapping covers every Xero field your Freshbooks chart of accounts accepts (counterparty, amount, currency, reference, tax). From the integration settings page you can override mappings field-by-field, attach computed values from your connected data (GL code, project tag, tax bucket), or ignore fields Freshbooks does not need. Custom mappings are versioned and apply only to records reconciled after the change, so anything you have already reviewed and posted in Freshbooks is left exactly as it stands.
05What happens if I disconnect Xero or Freshbooks?
Disconnecting Xero stops the flow at the source. Well asks the Xero MCP server to revoke the access token; Xero returns confirmation and stops streaming events the moment it is acknowledged. Anything you already reviewed and posted in Freshbooks is Freshbooks's own record and is untouched; Well never held a write credential to it. Records held for review in Well remain in the queue so you can finish them by hand. Reconnecting later resumes from the last successful sync, not from scratch.
06How does Well authenticate with Xero and Freshbooks?
Xero's MCP server handles authorisation directly; Well receives an access token through Dynamic Client Registration and never sees raw user credentials. For the delivery side, Well forwards the reconciled document to your Freshbooks email-in address once it clears the matching threshold; Freshbooks creates the draft record from it and you confirm and post it. Well holds no write credential to Freshbooks. Tokens are encrypted at rest and in transit under TLS 1.3. Xero and Freshbooks together cover multiple regions; Well's storage region is configured per workspace.
Xero logoFreshbooks logo

Connect Xero to Freshbooks

Start routing data between Xero and Freshbooks through Well in minutes.

  • Read-only scopes on Xero
  • AES-256 at rest, TLS 1.3 in transit
  • GDPR-aligned
  • Revocable Freshbooks access in one click