Xero account codes: what the chart of accounts list is for
A Xero account code is the numeric identifier for each account in your chart of accounts, telling Xero where to post each line of a sales invoice or supplier bill.
A Xero account code is the numeric identifier assigned to each entry in Xero's chart of accounts - the master list of financial accounts your business uses to categorize every transaction. When you raise a sales invoice, each line is posted to a revenue account: in the UK default chart, code 200 (Sales) covers standard trading income and code 260 (Other Revenue) handles non-recurring income such as grants or one-off asset sales. When a supplier invoice arrives, each line is posted to a cost account - typically codes 310-325 for direct costs such as goods, materials, and subcontractors, or codes 400-500 for overhead expenses such as rent and salaries.
How account codes build your financial reports
The chart of accounts is the structure that sits beneath every financial statement Xero produces. Revenue codes (200-270) feed the income section of your Profit & Loss report. Direct cost codes (310-325) sit immediately below that, giving you gross margin. Overhead codes (400-500) then produce operating profit. The code on each invoice line determines exactly where that figure appears in those calculations.
Xero's UK default chart is pre-populated with standard accounts covering the account types most businesses need - 69 accounts in the default demo company, grouped across assets, liabilities, equity, revenue, and expenses. You can add custom codes at any point: a business that wants to track labour income separately from materials income might keep code 200 for materials and add code 201 for labour. Each account code also carries a default VAT treatment, so correct coding keeps your VAT return aligned with HMRC requirements at the same time.
Why mapping your quoting system once changes what your reports tell you
A quoting or job management system that integrates with Xero needs to know which account code to assign to each invoice line it creates. If every line defaults to code 200 regardless of what it represents, your Profit & Loss reporting will show total revenue correctly but will tell you nothing about where your margin comes from. Labour, materials, and subcontract costs all end up in the same bucket, and there is no clean way to tell which product lines or service types are most profitable.
The more useful approach is to map your product and service categories to specific account codes once, at the integration setup stage. A promotional merchandise business might map blank goods to code 200, decoration charges to a custom code 201, and freight recovery to code 325. A building contractor might map materials to code 310 and direct labour to code 320. From that point forward, every quote that converts to an invoice creates a correctly coded Xero transaction without any manual work - and your Profit & Loss begins to reflect actual margin by category rather than just a single revenue total.
Map at category level, not product level
Assigning Xero account codes to your product or service categories rather than to individual products means that new products inherit the correct code automatically. You only need to revisit the mapping when your business model changes - not every time you add a product.