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:
CanApplyToAssetsCanApplyToEquityCanApplyToExpensesCanApplyToLiabilitiesCanApplyToRevenue
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
- When a code is refused, check the account’s class and the rate’s flag for that class in the grid.
- On a revenue account use 15% GST on Income; on a cost account use 15% GST on Expenses.
- 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.