Xero · For admins
Match your records to Xero
Which of your clients, projects, staff, roles and items need a Xero record, how the auto-match works, and confirming before anything can be pushed.
Once Xero is connected, this is where you match your clients, projects, staff, roles and items to the records that already exist in your Xero — all on the one Xero screen — and where you confirm those matches before anything can be pushed. You need to be an administrator of your HoursEasy organisation to open this screen.
Mapping lives here only
A client's or worker's Xero record is not set on the Clients or Staff screens. A client's page shows only whether its Xero contact is Mapped or Not mapped, with a link back to this screen, and the Staff list's Xero column shows Mapped or nothing the same way. Editing a client's or a worker's own details can no longer touch that value by accident, which used to be possible when the same box doubled as free text and a Xero mapping.
What each section matches
Clients map to a Xero contact, and this is required: an invoice cannot be raised for a project whose client has no Xero contact. Projects map to an option of whichever Xero tracking category you have chosen below — optional, and an unmapped project still invoices, it just does not appear in that tracking report. Items map to a Xero item, also optional; an unmapped item invoices against the default revenue account instead.
Staff map to a Xero employee and Roles map to a Xero earnings rate. Both are required for a payroll timesheet to be built, and both sections only appear if you granted Xero payroll access when you connected — see connecting to Xero.
Two settings for the whole connection
Changing the tracking category saves the WHOLE form the moment you pick one, without a separate press of Save — every mapping showing on the screen at that instant, including a suggestion you have not checked yet. Check every section before you change it, not just the projects it fills in.
The default revenue account is where every invoice line without a mapped item is coded. The tracking category decides which Xero tracking category your projects report against; choosing one saves the form immediately and fills the projects section in with that category's options — review those new options once they appear, the same as anything else on this screen.
Reading a row
A suggested match is marked Auto-matched — save to keep it — it is not stored until you save the form. Matching is exact name only, deliberately: a near-miss match is how a fortnight of hours could land against the wrong person, and that mistake would stay invisible until somebody reads a payslip. Check every suggestion before you save, and correct any that are wrong.
An unmatched row reads Not mapped. A row whose stored Xero record no longer exists — a contact archived in Xero, say — reads Its Xero record has gone and needs a fresh choice.
When Xero has nothing to map to
If Xero itself holds none of a kind — no contacts, no employees, no earnings rates, no items, no tracking categories — the section says so and names exactly where to add one in Xero. If instead you have nothing of your own to offer — no active clients, projects, staff, roles or items — it says that and links to where you add one in HoursEasy. Either way, add the missing record and reload this page; nothing here can be filled in until both sides have something to match.
Confirming
Selecting a match in a dropdown does not save it. Check every selection first, then press Save mappings. Once the page has reloaded, press Confirm these mappings — its disabled state is read from what is actually stored, not from what the form currently shows, so an unsaved selection leaves it disabled even though the row looks matched.
The button is disabled until every client, worker and role that both sides can offer is matched — the records still needing one are named above it. Confirming is a record that somebody has read the matches, not a lock: everything stays editable afterwards, and a record added later that still needs matching shows as a warning here rather than blocking silently.
Confirming removes this screen's own gate, but it does not by itself guarantee a push succeeds: an invoice still needs its client mapped to a Xero contact, and a payroll timesheet still needs payroll access granted on the connection plus every worker and role it covers mapped.
Still stuck? Email hello@hourseasy.com. All help articles