← All guides
Guide · 7 min read

Xero report codes: mapping, bulk import and the code list

Xero report codes (reporting codes) map accounts to practice report templates and Workpapers. How to map and bulk import them, and where to find the code list.

Reportpost emails your Xero reports on a schedule, as PDF, Excel or CSV. 14 days free.

Every account in a Xero chart of accounts can carry a report code, a short dotted code such as REV.TRA.GOO or ASS.CUR.REC.TRA that tells Xero where the account belongs in a practice's report templates. This guide covers who can see report codes, how to map and bulk-import them, where to find the list of codes, and the usual mapping problems. It is based on Xero Central, Xero's API specification and Xero Product Ideas, read in October 2026.

Reportpost is independent and not affiliated with Xero.

Quick answer

  • Report codes are a tool for accounting and bookkeeping practices. Xero's help centre says partner practice users can see which code each client account is mapped to.
  • You map them under Reporting > Reporting settings > Report codes: tick the accounts, choose Edit Mapping and pick a code.
  • For bulk changes, use Export on the same screen, fill in the Report Code column in the CSV, then Import it.
  • Xero doesn't publish a master list of codes that we could find. The code tree under Edit Mapping is the list.

What a report code is

Xero calls them report codes on screen. The API calls the same field ReportingCode, with a read-only ReportingCodeName next to it, so you will see both "report codes" and "reporting codes". They are not the same as:

  • Account codes, the code you give each account in the chart of accounts (200 for Sales, for example).
  • Tax rates, which control how an account is treated for GST or VAT.
  • Workpapers report codes in classic Workpapers, which can predict its own codes from account names instead of using the client's Xero report codes.

Codes are layered, read from left to right. The first part matches the account type (ASS, LIA, REV, EXP in Xero's examples), and each further part narrows it down. These examples appear in Xero's own help and API documentation:

CodeWhere Xero uses it as an example
ASSAssets (API example, with the name "Assets")
EXPExpense (API example and Xero Central)
REV.TRA.GOOMapped to account 200, Sales, in the API's chart of accounts setup example
ASS.CUR.REC.TRAMapped to account 610, Accounts Receivable, in the same example
LIA.CUR.PAYMapped to account 800, Accounts Payable, in the same example
ASS.CUR.REC.PREPrepayments, in Xero's classic Workpapers help
ASS.NCA.DIRLoans to directors, in Xero's classic Workpapers help

Be careful copying codes from screenshots in Xero's help: one example there, a travel code for "interplanetary" trips, is made up to show how a new code would appear.

Who can see and edit report codes

Xero Central says: "If you're part of a partner practice, you can view which report code is mapped to each account in your client's chart of accounts." Since September 2024 the chart of accounts has had a Report code column for practice users, and since July 2025 an Edit Report Code Mappings button that takes you to the mapping screen. Xero's help doesn't say which practice user roles can change mappings, so if the screen is missing, check your practice role first.

Partner Hub chart of accounts templates come pre-mapped to report codes. Xero's partner blog lists them for the UK, New Zealand and Australia. We found no Xero source on whether organisations in other regions have report codes today.

How to map accounts to report codes

  1. Open the client's organisation, then Reporting > Reporting settings > Report codes. (Older guides give the path as Settings > General Settings > Reporting > Report Codes.)
  2. Tick the accounts you want to map. You can map several accounts to one code in one go.
  3. Click Edit Mapping and work down the code tree, one level at a time, reading the description of each code on the right.
  4. Click OK.

Xero's advice is to map as deep as you can: "The deeper the mapping you choose, the more flexible your reporting will be." An account left on a top-level code like EXP gives a report template less to work with than one mapped further down the tree.

You can't type a code straight into the chart of accounts. A request for that (45 votes) is marked Completed, but what shipped was the Report code column and the button to the mapping screen. Users had asked for inline editing, and the button doesn't give them that.

Bulk changes with export and import

  1. On the Report codes screen, click Export. Xero downloads a CSV of the accounts and their current codes.
  2. Enter the codes in the Report Code column.
  3. Back on the Report codes screen, click Import, choose the file and import it.

Xero's help says the import "looks for a match between the account code and the account name", so to be safe, don't rename accounts between the export and the import.

The same route handles new codes you don't need: Xero's help says that to ignore new report codes that aren't relevant to your practice, you can export your existing report codes and re-import them.

Where is the list of Xero report codes?

We couldn't find a published master list or downloadable file of every report code in Xero Central or Xero's developer documentation. Two practical ways to see them:

  • The Edit Mapping tree on the Report codes screen shows every code with its description, level by level.
  • The Export CSV shows the code currently mapped to each account in that organisation.

Xero also adds codes from time to time (in July 2025 Xero said it had more UK codes in the works), so a list copied from somewhere else can go out of date.

Common report code problems

  • Account type mismatches. The account's type has to match the type of the report code, so an expense account goes to a profit and loss code like EXP. Xero's help warns that mismatches can cause errors in reports.
  • New accounts get a broad default. If an account hasn't been mapped, Xero gives it a high-level code and marks it with a yellow dot for review.
  • The For Review tab. Accounts land there when the chart of accounts hasn't been mapped yet, when a new account is added, or when Xero introduces new report codes. Existing mappings stay as they are until you change them.
  • New codes from Xero. Accounts mapped to the parent of a new code are flagged. Accounts already mapped at the same level as the new code aren't.
  • Renamed accounts aren't flagged. If you change what an account is for, Xero has no way to know its code no longer fits. Update the mapping when you rename or repurpose an account.
  • Missing balances in Workpapers. Workpapers pick up accounts by report code, so a new account that was never mapped properly can leave a balance out of a workpaper. Xero is working on highlighting such accounts in the new Workpapers.
  • One code per account. Each account maps to exactly one code. Some practices map accounts to unrelated codes to get the grouping they want. One practice on Xero's ideas forum pointed out that other features, such as the IR10 import into Xero Tax, run off the standard codes, so they'd rather not do that.

What report codes are used for

  • Practice report templates. Xero's help: "With the report code mapping complete, you're ready to use a report template in a client's organisation." The template places each account by its code, so one template works across clients with different charts of accounts.
  • Workpapers. In classic Workpapers, each workpaper includes or excludes accounts by report code, set under Settings > Xero Report Code Defaults or Workpaper Report Code Defaults, with an option to apply the change to existing workpaper packs. You can also edit the Xero report codes from a pack's trial balance and click Refresh from Xero. In the new Workpapers (beta), Xero sets the mapping automatically when you activate it, and Xero's help says you can't change it yet.
  • Account reporting names. Practices can also give an account a different name that only shows on reports built from report templates.

Can you create your own report codes?

No. Xero's help is direct: "You can't add new report codes or change the details of existing codes." The request "Reporting - Ability to create own report code structure" has 207 votes and is marked Not in pipeline. In July 2025 Kelly Munro, a Xero community manager, pointed to mapping several accounts to one code and bulk export and import, said more UK codes were coming, and wrote that "creating a fully bespoke solution like what's asked here is not in the pipeline" (Xero Product Ideas). See the most requested Xero reporting features for the rest of that list.

Report codes in the API

In Xero's OpenAPI specification for the Accounting API, each Account has ReportingCode and ReportingCodeName, both "Shown if set". Only the name is marked read-only. The example for the POST /Setup endpoint, which sets up a chart of accounts, sends accounts with report codes. We haven't confirmed whether updating an account through /Accounts accepts a report code, and some third-party connector documentation describes the field as read-only, so test against a real organisation before you build on it.

Sending the reports every month

Report codes decide how your accounts are grouped in reports. Sending those reports is a separate job, and Xero's standard report screens have no schedule option. Reportpost sends Xero's standard reports, such as the Profit and Loss, Balance Sheet and Trial Balance, to you or your clients by email as PDF, Excel or CSV on the day you choose. It works from Xero's standard report layouts, not practice report templates. See automating month-end packs for many Xero clients, or try the demo.

Related: Xero management reports and report packs, the Xero year-end checklist and emailing the trial balance at month end.

More guides

Let next month's pack send itself.

Reportpost emails your Xero reports on a schedule, as PDF, Excel or CSV. 14 days free.