Help Centre

Connect Xero

Connect Mucka to Xero — your contacts, invoices and customer payments push across automatically.

Walkthrough coming soon
90-second video. We're recording these now.

Connecting Mucka to Xero means your clients, invoices and customer payments flow straight into Xero — no more typing the same numbers twice into two systems. Mucka stays the place you raise an invoice; Xero is where your bookkeeper sees it land seconds later.

Heads up: connecting is two parts. Signing in to Xero links the two, and then Mucka asks three quick questions, one per screen: which account your sales go to (and the tax rate), how payments should reach Xero, and whether to send the invoices you've already raised. Contacts sync the moment you connect; invoices flow as soon as you've answered.

Connect your Xero org

Head to Settings → Connections → Integrations → Xero and tap Connect Xero.

Xero asks you to sign in and pick which organisation (org) you want to link. Approve the permissions Mucka asks for:

  • Accounting contacts, invoices, payments and settings — so Mucka can push your clients in and (soon) your invoices
  • Your email address — so Mucka can show "connected by ryan@ryansplumbing.co.uk" on the panel

Approve and Xero bounces you back to Mucka, which opens Set up Xero straight away. If you close it before the end, nothing is lost: the Xero panel says No invoices are going to Xero yet, and Finish setting up takes you back in.

Already have clients in Xero? Bring them in

If you're coming to Mucka with an established Xero org, you don't have to re-type your contacts. Tap Import from Xero on the panel to pull your existing clients (and, if you want, their invoice history) straight into Mucka — matched against your Mucka clients first so nothing is duplicated. Full walkthrough: Import your existing clients.

One Xero org per Mucka workspace

If you run multiple businesses through separate Xero orgs, you need a separate Mucka workspace for each. Mucka pins each workspace to one Xero org so the right contacts and invoices land in the right place.

What flows across automatically

Contacts. Every client you create in Mucka — through the app, voice, WhatsApp or the CSV importer — is pushed into Xero contacts in a few seconds. Mapped fields:

  • Name (residential = first + last; commercial = company name)
  • Email (uses the client's email, falling back to company email)
  • Phone (primary phone goes in as Default)
  • Address and postcode
  • VAT number (if set, appears as Tax Number in Xero)

Update a client in Mucka and the changes flow through to Xero too.

Invoices. When you raise an invoice in Mucka, it lands in Xero as a draft (Mucka draft) or authorised invoice (anything sent). Line items, reference number, due date and tax all carry across. Xero's Reference box gets the job number when the invoice was raised against a job, and the customer's PO number when there is one: both, if it has both (J-014 · PO 4471). With neither, it gets the invoice description. Edit the invoice in Mucka and the Xero side updates next time the engine syncs.

Invoice numbers. Mucka's numbering wins, on purpose. Your customer already has a PDF with INV-001 on it, so letting Xero rename the invoice afterwards would leave the copy in their inbox disagreeing with your accounts. Mucka sends its own number over and Xero uses it.

If you've been trading on Xero for years, you don't want Mucka starting again at 1. When you connect, Mucka reads what your last Xero invoice was numbered and carries straight on from it, so you've got one unbroken run of numbers across both. The last step of Set up Xero says what your next invoice will be. You can change it later in Settings → Business → Workspace.

This matters for more than tidiness. Xero refuses an invoice number it has already used, so a Mucka invoice numbered INV-001 won't go across if an old Xero one already has that number. If that happens, the Xero panel tells you which invoice it was and what to do.

Open any invoice and you'll see, next to the status, whether it has reached your accounts: In Xero once it's across, or Not in Xero yet if it hasn't. On the rare occasion Xero numbered it something else, that chip tells you what: In Xero as INV-0433. That usually only happens on an invoice raised before you connected.

Customer payments. If your customer pays you directly through Xero (bank feed, Stripe etc.), Xero pings Mucka and the invoice ticks over to Paid automatically — no double entry, no setup. Going the other way, a payment you record in Mucka can also push into Xero against the same invoice, but only if you chose Mucka writes them into Xero during setup — see below. Plenty of people match off their bank feed in Xero instead.

Voids. Voiding a draft invoice in Mucka removes the draft from Xero. Voiding a sent invoice that's already authorised in Xero pops up a choice on the void dialog: Issue a matching credit note in Xero (recommended — Mucka creates a credit for the same amount and allocates it against the original so the Xero balance zeros out), or Just unlink — leave Xero alone (the Xero invoice stays exactly as it is, you reconcile it manually).

Set up Xero — three questions

Set up Xero opens by itself once you've signed in, and asks one thing per screen. Nothing goes to Xero until you press Start sending to Xero on the last question, and a summary down the side shows what Mucka is about to do as you answer.

  1. Where do your sales go? Pick the sales account your invoice income lands in (often "200 Sales", but plumbers split into 200 Boiler Service, 201 Installations etc.) and the tax rate for every invoice line. 20% (VAT on Income) is the usual UK pick; not VAT registered, pick No VAT. If your Xero has tracking categories you can tag every line with one too, useful for splitting reports by engineer or type of work.
  2. When a customer pays you, how should Xero hear about it? See below.
  3. What about invoices you've already raised? Send the last 90 days pushes anything from the last 90 days that isn't in Xero yet. Only invoices from today sends nothing from before, useful mid-year when your accountant has closed the period.

The last screen confirms it's set up and lists your answers, each with Change beside it. It says what your next invoice number will be if Mucka is following Xero's, and offers two next steps: bring your Xero customers into Mucka, or raise an invoice and watch it land.

To change an answer later, tap Change setup on the Xero panel. Every question is a tap away on the bar at the top, and Save changes is on each one.

How payments reach Xero

This is about payments you take or record in Mucka: card, bank transfer, cash. Mucka asks you to choose, and it only asks once:

  • I match them off my bank feed in Xero. Everything works exactly as it does now: your invoices sync, the money lands in your bank feed, and you match it in Xero the way you always have. Mucka won't mention it again.
  • Mucka writes them into Xero. Pick the account your customers' money goes into, usually your business current account, and every payment goes into Xero against its invoice, so there's nothing to match. If there's only one bank account in your Xero, Mucka picks it for you.

If Mucka writes them into Xero is greyed out, we can't see a bank account on your Xero organisation at all. Add one in Xero — Accounting → Chart of accounts → Add Bank Account — and it'll be there next time you open Change setup. You don't need to tick anything on the account, and there is no Enable payments to this account box on a bank account in Xero. If we ever told you there was, that was our mistake.

Either way, the other direction always works: when a customer pays you through Xero, Mucka sees it within a few minutes and the invoice ticks over to Paid on its own.

If you match off your bank feed and then take a payment in Mucka — a card payment on a job, or marking an invoice paid — Mucka will tell you. The invoice itself says In Xero, payment isn't, with the amount, and your Xero panel in Settings totals up anything waiting. Neither is a fault to fix: it's there so you can see which payments are waiting for you to match. Carry on matching them off your bank feed and you can ignore both.

Card payments usually want their own account

Once you've picked where payments go, a second box appears: Card payments go into. Leave it on The same account and nothing changes.

It's worth setting if you take card as well as bank transfer, because the two arrive differently. A bank transfer really does land in your account, so it turns up in your feed and matches off against the payment one for one. Card money doesn't: it goes to the card company and comes back days later as a single payout covering several jobs, with the fees taken off. If every card payment has already been written into your current account, your books count that money once as the payments and again as the payout, and you're unpicking it by hand.

The usual answer is a holding account in Xero (often called Undeposited Funds, or one you set up per card provider). Card payments go in there, and when the payout lands you move it across in one go, fees and all. Bank transfers carry on going straight to your current account.

Set it up in Xero at Accounting → Chart of accounts. If you make it a bank account (Add Bank Account), it appears in the Card payments go into list straight away. If you'd rather it were a plain current-asset account, open it, tick Enable payments to this account, and save — that tick is what makes a non-bank account usable for payments, and it's the only place you'll see it.

If you only take bank transfers, ignore this box.

Chose Only invoices from today and changed your mind? Sync invoices now on the panel pulls the last 90 days across whenever you like.

"Sync contacts now" + "Sync invoices now" — manual backfills

If you've got hundreds of clients in Mucka already, the first connect pushes them all across in the background. You can re-trigger the same sweep from the panel any time using Sync contacts now — useful if you've imported a big CSV and want to nudge Xero to catch up.

Sync invoices now does the same for invoices created in the last 90 days that don't have a Xero link yet — handy if Xero was down or setup wasn't finished when an invoice was raised. It only enables once you've finished Set up Xero; until then the button is greyed out.

Mucka skips records that are already in Xero, so you can tap either Sync button without worrying about duplicates. Both are rate-limited to one tap every 30 seconds per workspace, so a stuck finger can't blow through Xero's API limits.

Automatic retry — Mucka catches up on its own

Mucka runs a quiet retry sweep every hour (at quarter-to). If anything failed to push to Xero in the previous hour — bad timing, Xero hiccup, network blip — the sweep retries the last 24 hours of contacts and invoices for any connection still showing an error. Most of the time you'll never notice the failure happened; you only ever need to tap Sync now manually for big imports.

Ask Mucka about Xero — voice and chat

Once Xero's connected, you can ask Mucka questions about your accounting position in plain English. Mucka pulls the numbers live from Xero and reads them back. Example asks:

  • "What's outstanding in Xero?" — lists invoices still owing, oldest first
  • "Anything over 90 days overdue?" — pulls aged receivables and reads the worst offenders
  • "Who owes me money?" — same as above, ranked by amount
  • "What was my month?" / "How did Q1 look?" — pulls the Profit & Loss for the period
  • "Push that invoice to Xero" — when an invoice didn't sync automatically (rare) or you want to force a retry, Mucka stages a one-tap approval card
  • "Draft that quote as a Xero invoice" — turns an accepted quote into a draft invoice in both Mucka and Xero, ready for your bookkeeper to finalise

The query tools fire instantly; the push tools always wait for a one-tap confirmation in the app — Mucka never sends data to Xero (or money around) without an explicit owner approval.

Permission needed to connect

Only people with the manage billing permission can connect or disconnect Xero. Engineers see the connection state on the panel ("Xero is connected to Ryan's Plumbing Ltd") but can't change it.

This is the same rule as the rest of the billing tab — the people who can change your subscription are the ones who can wire Xero in.

Disconnect

The Disconnect Xero button revokes Mucka's access on Xero's side and stops any new contacts, invoices or payments from flowing across. Existing records that have already pushed stay in Xero as accounting records — Xero doesn't allow Mucka to delete those (and you wouldn't want it to — they're your audit trail).

The disconnect sheet offers a default-on tick: Also clear the Xero badges from Mucka clients and invoices. Leave it ticked unless you specifically want Mucka to keep showing the old "synced to Xero" markers on entities whose Xero link is no longer active. The Xero side is untouched either way.

Troubleshooting

"Connection expired" — Xero sessions time out after a long pause. Tap Reconnect on the panel and approve again; Mucka catches up on anything missed during the gap.

"Access revoked" — happens when somebody on the Xero side removes Mucka from connected apps. Same fix: tap Reconnect.

"Needs reconnect" — the panel shows this when Xero starts refusing Mucka outright, which usually means the Mucka connection has been removed at the Xero end (often by whoever tidies up connected apps). It is not something that fixes itself with time, so Mucka stops retrying and tells you instead of quietly falling behind. Tap Reconnect and approve again; nothing is lost, and Mucka catches up on anything that happened while the connection was down.

"Your plan doesn't include Xero sync" — accounts sync is part of the paid plans. On the free tier the connection stays put and your invoices keep building up in Mucka, but nothing is sent to Xero until you're on a paid plan. Nothing is lost: everything raised in the meantime goes across once you upgrade.

A client didn't sync — Mucka shows the last sync error on the Xero panel. Tap Sync contacts now to retry. If a client has a bad email format Xero rejects, fix the email on the client record and the next push goes through.

What's coming next

  • Subcontractor bills + CIS — pay subbies in Mucka, push to Xero as bills with the right CIS deduction (riding with the Subcontractor skill)

Watch for the next release notes — you don't need to do anything to opt in, the engine extends as we ship each phase.

Want your sales split?

Everything Mucka sends over lands in the one account you picked above. If you'd rather see installations and servicing separately in your profit and loss, you can give each its own — see Split your sales across more than one account. Optional, and off unless you turn it on.

Last updated

Still stuck? Talk to a human — we answer every one.