New Zealand · Free cheat sheet template

NZ Xero GST Rates: Which Codes Are Valid on Which Accounts (Free)

A free reference of New Zealand Xero GST rates and the five CanApplyTo flags that decide which GST codes are valid on each account class.

By ExpenseFlow team
· 25 June 2026

Free download · no email required

CSV: every Xero NZ GST rate with the five CanApplyTo flags showing which account classes it is valid on.

Download the GST rate list (CSV)

If Xero has ever told you “invalid tax code” on a New Zealand transaction, this reference explains why and shows which codes are actually valid on which accounts. It lists every default New Zealand Xero GST rate with the five flags Xero uses to decide where a rate can apply, so you can see at a glance why a code is accepted on one account and refused on another.

A short list, by design

New Zealand keeps GST simple: a flat 15% with no reduced rate. A standard Xero organisation reflects that with just five rates. Two carry the 15% (one for the income side, one for the expense side), and three sit at 0% or no tax. There is deliberately no Exempt rate in the New Zealand default set, which trips up anyone arriving from a UK or Australian file where Exempt exists. Here, exempt supplies such as bank fees and residential rent are coded No GST.

The rule behind “invalid tax code”

It is not the individual account that decides which codes it accepts, it is the account’s class, checked against flags on each tax rate. Every Xero rate carries five booleans:

  • CanApplyToAssets
  • CanApplyToEquity
  • CanApplyToExpenses
  • CanApplyToLiabilities
  • CanApplyToRevenue

Each account rolls up to one of those classes. Direct Costs, Overhead and Expense accounts are Expenses; Sales and Revenue accounts are Revenue; Bank and Fixed Asset accounts are Assets, and so on. A rate is valid on an account only where its flag for that class is set. If it is not, Xero refuses it. The download shows the full Yes/No grid for all five New Zealand rates.

Why a sales code is refused on a cost account

This is the split that catches everyone. 15% GST on Income has CanApplyToRevenue set and CanApplyToExpenses clear, so it only works on revenue accounts. 15% GST on Expenses is the mirror image and only works on cost accounts. Xero names the 15% rate twice for exactly this reason: to route the right side of each transaction to the right box of the GST return. The flags turn that into a hard rule, which is why you cannot drop an income rate onto a purchase line.

The five rates, and where they apply

  • 15% GST on Income: the standard rate on the revenue side.
  • 15% GST on Expenses: the standard rate on the cost side.
  • Zero Rated: 0%, for exports, going concerns and other zero-rated supplies; valid on both sales and purchases.
  • GST on Imports: records GST charged at the border on imported goods; an expense-side rate.
  • No GST: outside the scope, and the home for exempt supplies too since there is no Exempt rate; valid on every class.

One default, many valid codes

An account stores a single default rate that prefills the line, but across transactions it legitimately uses several codes, any that are valid for its class. A sales account books standard 15% supplies and the occasional zero-rated export; a software account books local 15% subscriptions and zero-rated charges from an overseas vendor. The default is the common case, and the actual code is chosen per line by the nature of the supply and where the supplier sits. That is why the chart of accounts pairs each default with the other codes used.

A reference, not an import

Xero has no CSV import for tax rates, unlike the chart of accounts. They arrive as your organisation’s defaults plus anything you add manually or via the API. So treat this file as a guide to which codes are valid where, and a handy aid when migrating between systems. The flag values shown are Xero’s standard New Zealand defaults; confirm against your own organisation, which may carry custom rates.

How to use it

  1. When a code is refused, check the account’s class and the rate’s flag for that class in the grid.
  2. On a revenue account use 15% GST on Income; on a cost account use 15% GST on Expenses.
  3. Pair this with the NZ chart of accounts for Xero, which sets a sensible default per account and lists the alternatives.

ExpenseFlow applies a valid code for each supply as it reads a receipt or bill and posts it into Xero, so you avoid invalid-tax-code errors at the line. On QuickBooks? See the NZ QuickBooks GST codes reference.

Questions, answered

Common questions

How many GST rates does a New Zealand Xero organisation have by default?

Five: 15% GST on Income, 15% GST on Expenses, GST on Imports, Zero Rated and No GST. There is no default Exempt rate, which is the main difference from a UK or Australian file. Exempt supplies are coded No GST.

Why does Xero say invalid tax code?

Because the rate you applied is not allowed on that account's class. Every Xero tax rate carries five CanApplyTo flags (Assets, Equity, Expenses, Liabilities, Revenue) and the account belongs to one class. If the rate's flag for that class is off, Xero rejects it. The other common cause is a rate that has been archived in your organisation.

What does GST on Imports actually do?

It records the GST that Customs charges on imported goods over NZ$1,000 without grossing up the cost of the goods. The rate shows as 0% because the GST amount comes from the customs entry, not a percentage of the supplier's invoice. You claim it against the import documentation.

Can I import tax rates into Xero?

No. Unlike the chart of accounts, Xero has no CSV import for tax rates. They are your organisation's defaults plus any you add manually or through the API. This file is a reference for which codes are valid where, useful when migrating or building an integration.

Keep exploring

Stop filling in spreadsheets by hand

A template is a starting point. ExpenseFlow captures receipts, reads the tax automatically, and posts the cleaned record to Xero or QuickBooks Online, so the log keeps itself.

Start free trial