Back to the JournalATO & compliance

Single Touch Payroll Phase 2 — a practitioner's reference for what changed and what to check

Disaggregation of gross, income types, the six-character tax treatment code, and the migration checks every practice should re-run before BAS lodgement.

DH
Daniel Hu
Compliance lead · 17 Feb 20266 min read
Last reviewed against current ATO guidance: 20 May 2026. Always confirm current thresholds, rates, and dates at ato.gov.au.

STP Phase 2 has been mandatory long enough that "we're still on Phase 1" isn't a defensible position in an audit. Most practices have migrated, but migration quality varies — and a sloppy Phase 2 implementation now shows up directly in BAS reconciliation, because the ATO uses STP data to pre-fill and cross-check W1.

This is a short reference for what Phase 2 actually changed, what to verify in a client's payroll setup, and the three checks every practice should run before lodging a BAS for a client with employees.

All claims below are sourced to current ATO guidance — links inline. STP rules evolve; confirm at ato.gov.au before relying on a specific point.

What Phase 2 actually changed

The ATO's Phase 2 guidance is explicit that Phase 2 doesn't change what you report — it changes how. The same payments still go into the STP feed; they just need to be reported in more structured, more granular form. Three components are worth understanding.

1. Disaggregation of gross

Under Phase 1, you reported a single "gross wages" figure per employee per pay event. Under Phase 2, that figure is broken into its components. Per the ATO disaggregation page:

STP Phase 2 has introduced the disaggregation of gross. As part of disaggregation of gross, all allowances need to be separately reported.

The disaggregated components include ordinary time earnings, overtime, allowances (each tagged to a category — see below), bonuses and commissions, directors' fees, paid leave, and lump sums. Each component has its own tax and super treatment.

2. Income types

The ATO's income types page introduces income type as a required field per amount paid:

Each amount you pay to an employee will be assigned to an income type, and you can report amounts assigned to multiple income types throughout the year. The reporting of income types helps identify when the employee's income may be taxed differently (such as for working holiday makers); you are using a concessional reporting arrangement (such as for closely held payees); or there may be other factors influencing the amounts you are reporting.

In practice, most amounts will be the standard "salary or wages" income type. The cases where you need a different income type are signalled by the employee's situation: working holiday maker, closely-held payee, foreign employer arrangement, and a few other specialised categories.

3. The six-character tax treatment code

The ATO's Phase 2 reporting page explains the tax treatment code:

Tax treatment code is a six-character code that has been developed to provide information about factors that can influence the amount that you withhold.

Each position in the code carries specific meaning — for example, "R" can denote a regular employee and "T" can denote a tax-free threshold claim. Not every combination of positions is valid (the ATO notes that, for example, a Medicare levy full exemption and a Medicare levy reduction can't both apply). The payroll system generates the code from the employee's TFN declaration; the practitioner's job is to verify the code reflects the declaration.

For the full position-by-position structure (employment status, residency, STSL flag, Medicare levy treatment, seniors/pensioners offset, tax-free threshold claim), see the ATO's Tax Treatment position paper — it's the most complete published reference.

The three checks to run on every client

For each client with employees, before signing off on a BAS:

1. Disaggregation is real, not lumped

The most common Phase 2 implementation issue: the payroll system was migrated, but every earning type still reports under a single category (typically OTE). This works mechanically but it isn't compliant. Overtime should report as overtime. Allowances should report against their specific allowance category, not as a generic line. Bonuses should report as bonuses.

The check: pull an STP summary report from the payroll platform for any pay run in the last quarter. If everything is in OTE, the migration was incomplete.

2. Allowances are categorised, not free-text

The ATO publishes a closed list of allowance categories. Each active allowance in the payroll system must be tagged to one of them rather than appearing as a generic free-text descriptor.

The check: in the payroll system's allowance setup, every active allowance should have a Phase 2 category assigned. The "other" category exists and is valid, but a payroll system where everything is in "other" is a configuration problem, not a compliant setup.

3. Tax treatment codes match the TFN declaration

The six-character tax treatment code is generated by the payroll system from the employee's TFN declaration. If a TFN declaration was completed before the practice migrated to Phase 2 and the declaration data hasn't been re-validated against the new code structure, the code can be silently wrong.

The check: for any employee onboarded before the practice's Phase 2 migration, confirm the tax treatment code in the payroll system reflects what the TFN declaration actually says. The most common drift point is the STSL (study and training support loan) flag — an employee with a HELP debt who's been on tax-free threshold without the STSL flag is under-withholding.

Why this matters at BAS time

The ATO uses STP data to pre-fill W1 (Total salary, wages and other payments) on the BAS. If your Phase 2 implementation reports clean data, the W1 figure is the right number and BAS lodgement is unremarkable. If the implementation is sloppy — wrong income types, miscategorised allowances, incorrect tax treatment codes — the W1 pre-fill is wrong, and the BAS lodgement either reports the wrong number or sits in a review state until the underlying data is reconciled.

In other words: the time spent fixing a Phase 2 setup pays back at every quarterly BAS. The fix is upstream.

What we're not covering here

Specific payroll-platform implementations vary, and the quality of a given platform's Phase 2 support changes over time. We don't recommend taking platform-specific guidance from a third-party article (including this one) as authoritative — each vendor has its own Phase 2 implementation notes, and the ATO publishes a list of STP-enabled software you can cross-reference.


This article was last reviewed against ATO guidance on the date shown in the frontmatter. STP Phase 2 reporting rules continue to evolve — always confirm specific requirements at ato.gov.au before relying on a particular detail. This article is general guidance, not specific tax advice; for client-specific questions, consult a registered tax agent or your payroll software vendor.

Run your practice on ReconLink.

Bank reconciliation that codes itself, BAS export ready for your tool of choice, and a client portal that ends the email chain.