Australian take-home pay, PAYG withholding, income tax, HELP, super and GST from the ATO's formulas
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Australian income tax for a whole financial year and the likely refund or bill: tax at resident or foreign rates, low income tax offset, seniors and pensioners tax offset, Medicare levy with low-income and family reductions, Medicare levy surcharge and compulsory HELP/study loan repayments, compared with the tax withheld. Use it for tax return estimates and questions involving deductions, other income, overtime, bonuses, couples and families, seniors or private health cover. For per-pay take-home figures use take_home_pay. Supports 2025-26, 2026-27 and 2027-28 (an estimate with no refund). estimatedRefund is positive for a refund and negative for a bill. AUD. Read-only and deterministic.
Salary or wages for the year from one employer (AUD), excluding super, overtime and bonuses.
Bonuses paid in the year (AUD).
Eligible for the seniors and pensioners tax offset, with this status.
Spouse and dependent children, for the Medicare levy family reduction and surcharge thresholds.
Financial year. Default 2026-27.
Overtime earnings for the year (AUD).
Has a HELP, VSL, SSL or other study and training support loan. Default false.
Tax deductions (AUD).
Other taxable income with no tax withheld, e.g. interest (AUD).
Employee gave their tax file number. Default true. False applies the no-TFN rate.
How often the salary is paid, for tax withheld. Default fortnightly.
Foreign resident for tax purposes. Default false.
Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job.
salary is a package including the 12% super guarantee.
Has private patient hospital cover all year. Default true (no Medicare levy surcharge).
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http au-compliance-kit https://aftertaxau.com/mcp
Tool list last changed Nov 13, 2026.
Australian income tax for a whole financial year and the likely refund or bill: tax at resident or foreign rates, low income tax offset, seniors and pensioners tax offset, Medicare levy with low-income and family reductions, Medicare levy surcharge and compulsory HELP/study loan repayments, compared with the tax withheld. Use it for tax return estimates and questions involving deductions, other income, overtime, bonuses, couples and families, seniors or private health cover. For per-pay take-home figures use take_home_pay. Supports 2025-26, 2026-27 and 2027-28 (an estimate with no refund). estimatedRefund is positive for a refund and negative for a bill. AUD. Read-only and deterministic.
| Argument | Type | Description |
|---|---|---|
| bonus | number | Bonuses paid in the year (AUD). |
| sapto | string | Eligible for the seniors and pensioners tax offset, with this status. |
| family | object | Spouse and dependent children, for the Medicare levy family reduction and surcharge thresholds. |
| salary* | number | Salary or wages for the year from one employer (AUD), excluding super, overtime and bonuses. |
| taxYear | string | Financial year. Default 2026-27. |
| overtime | number | Overtime earnings for the year (AUD). |
| studyLoan | boolean | Has a HELP, VSL, SSL or other study and training support loan. Default false. |
| deductions | number | Tax deductions (AUD). |
| otherIncome | number | Other taxable income with no tax withheld, e.g. interest (AUD). |
| tfnProvided | boolean | Employee gave their tax file number. Default true. False applies the no-TFN rate. |
| payFrequency | string | How often the salary is paid, for tax withheld. Default fortnightly. |
| foreignResident | boolean | Foreign resident for tax purposes. Default false. |
| taxFreeThreshold | boolean | Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job. |
| salaryIncludesSuper | boolean | salary is a package including the 12% super guarantee. |
| privateHospitalCover | boolean | Has private patient hospital cover all year. Default true (no Medicare levy surcharge). |
{
"type": "object",
"required": [
"salary"
],
"properties": {
"bonus": {
"type": "number",
"minimum": 0,
"description": "Bonuses paid in the year (AUD)."
},
"sapto": {
"enum": [
"single",
"couple",
"illness-separated"
],
"type": "string",
"description": "Eligible for the seniors and pensioners tax offset, with this status."
},
"family": {
"type": "object",
"properties": {
"spouse": {
"type": "boolean"
},
"dependants": {
"type": "integer",
"minimum": 0,
"description": "Dependent children."
},
"spouseIncome": {
"type": "number",
"minimum": 0,
"description": "Spouse's taxable income (AUD)."
}
},
"description": "Spouse and dependent children, for the Medicare levy family reduction and surcharge thresholds.",
"additionalProperties": false
},
"salary": {
"type": "number",
"minimum": 0,
"description": "Salary or wages for the year from one employer (AUD), excluding super, overtime and bonuses."
},
"taxYear": {
"enum": [
"2025-26",
"2026-27",
"2027-28"
],
"type": "string",
"description": "Financial year. Default 2026-27."
},
"overtime": {
"type": "number",
"minimum": 0,
"description": "Overtime earnings for the year (AUD)."
},
"studyLoan": {
"type": "boolean",
"description": "Has a HELP, VSL, SSL or other study and training support loan. Default false."
},
"deductions": {
"type": "number",
"minimum": 0,
"description": "Tax deductions (AUD)."
},
"otherIncome": {
"type": "number",
"minimum": 0,
"description": "Other taxable income with no tax withheld, e.g. interest (AUD)."
},
"tfnProvided": {
"type": "boolean",
"description": "Employee gave their tax file number. Default true. False applies the no-TFN rate."
},
"payFrequency": {
"enum": [
"weekly",
"fortnightly",
"monthly"
],
"type": "string",
"description": "How often the salary is paid, for tax withheld. Default fortnightly."
},
"foreignResident": {
"type": "boolean",
"description": "Foreign resident for tax purposes. Default false."
},
"taxFreeThreshold": {
"type": "boolean",
"description": "Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job."
},
"salaryIncludesSuper": {
"type": "boolean",
"description": "salary is a package including the 12% super guarantee."
},
"privateHospitalCover": {
"type": "boolean",
"description": "Has private patient hospital cover all year. Default true (no Medicare levy surcharge)."
}
},
"additionalProperties": false
}PAYG tax to withhold from a bonus, commission or other one-off payment made with a regular Australian pay, using ATO Schedule 5 Method A, for 2025-26 or 2026-27. Use it for 'how much tax comes out of my bonus'. Returns the tax on the bonus only, never more than 47% of it; work out the regular pay's withholding separately with payg_withholding. Amounts in AUD. Read-only and deterministic.
| Argument | Type | Description |
|---|---|---|
| bonus* | number | The bonus or commission amount (AUD). |
| period* | string | Pay period. |
| payDate | string | Pay date (YYYY-MM-DD). |
| taxYear | string | Australian financial year (1 July to 30 June) whose withholding tables to use. Default 2026-27. |
| earnings* | number | Regular gross earnings for the pay period the bonus is paid with (AUD), excluding the bonus. |
| studyLoan | boolean | Has a HELP, VSL, SSL or other study and training support loan. Default false. |
| tfnProvided | boolean | Employee gave their tax file number. Default true. False applies the no-TFN rate. |
Adds 10% Australian GST to a price, or works out the GST included in a GST-inclusive price (the price divided by 11). Returns the price excluding GST, the GST and the price including GST, rounded to the cent. Use it for invoices, quotes and receipts. It doesn't decide whether an item is GST-free or input-taxed. AUD. Read-only and deterministic.
| Argument | Type | Description |
|---|---|---|
| amount* | number | The price in AUD, e.g. 110. |
| includesGst | boolean | true if amount already includes GST (to take it out). Default false (GST is added). |
{
"type": "object",
"required": [
"amount"
],
"properties": {
"amount": {
"type": "number",
"minimum": 0,
"description": "The price in AUD, e.g. 110."
},
"includesGst": {
"type": "boolean",
"description": "true if amount already includes GST (to take it out). Default false (GST is added)."
}
},
"additionalProperties": false
}Checks an Australian Business Number (ABN), Australian Company Number (ACN) or tax file number (TFN) with the official check-digit algorithms, or the format of a BSB or bank account number. Returns valid true or false, with the normalised form or the reason it fails. Use it before storing or submitting an identifier. It confirms the number is well formed, not that it is registered or belongs to anyone: use the ABR's ABN Lookup for registration. Runs locally; nothing is sent anywhere.
| Argument | Type | Description |
|---|---|---|
| type* | string | Which identifier: abn, acn, tfn, bsb or bank_account. |
| value* | string | The number, with or without spaces or dashes, e.g. "51 824 753 556". |
{
"type": "object",
"required": [
"type",
"value"
],
"properties": {
"type": {
"enum": [
"abn",
"acn",
"tfn",
"bsb",
"bank_account"
],
"type": "string",
"description": "Which identifier: abn, acn, tfn, bsb or bank_account."
},
"value": {
"type": "string",
"description": "The number, with or without spaces or dashes, e.g. \"51 824 753 556\"."
}
},
"additionalProperties": false
}Exact PAYG tax an Australian employer must withhold from one pay (weekly, fortnightly, monthly or quarterly) under ATO Schedule 1 (NAT 1004), with Schedule 8 for study loans and Schedule 9 for seniors, for 2025-26 or 2026-27. Use it in payroll code or when declaration details matter: tax-free threshold, TFN, residency, HELP, Medicare levy exemption or family variation, tax offsets. Returns whole dollars to withhold, take-home for the pay, the tax scale and a breakdown. For a whole-salary summary use take_home_pay; for a bonus or commission use bonus_withholding. Working holiday makers aren't supported and return an error. Read-only and deterministic.
| Argument | Type | Description |
|---|---|---|
| period* | string | Pay period. |
| payDate | string | Pay date (YYYY-MM-DD). Picks the financial year's tables; overrides taxYear. |
| seniors | string | Claims the seniors and pensioners tax offset with this status (uses Schedule 9). |
| taxYear | string | Australian financial year (1 July to 30 June) whose withholding tables to use. Default 2026-27. |
| earnings* | number | Gross earnings for this pay period in AUD, including taxable allowances and overtime, e.g. 3076.92 for a fortnight. |
| studyLoan | boolean | Has a HELP, VSL, SSL or other study and training support loan. Default false. |
Works backwards from the take-home pay someone wants to the gross annual salary they need in Australia, for 2025-26 or 2026-27. Give the target take-home per week, fortnight, month or year; returns the salary needed (excluding super), the take-home and tax withheld for each pay period, and the employer's super on top. Use it for salary negotiations and questions like 'what do I need to earn to take home $1,500 a week'. It uses the same ATO withholding formulas as take_home_pay. AUD. Read-only and deterministic.
| Argument | Type | Description |
|---|---|---|
| per* | string | The period takeHome is for. |
| taxYear | string | Australian financial year (1 July to 30 June) whose withholding tables to use. Default 2026-27. |
| takeHome* | number | Take-home pay wanted, in AUD, for the period in 'per', e.g. 1500. |
| studyLoan | boolean | Has a HELP, VSL, SSL or other study and training support loan. Default false. |
| foreignResident | boolean | Foreign resident for tax purposes. Default false. |
| taxFreeThreshold | boolean | Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job. |
Australian superannuation guarantee (12%) an employer must pay on ordinary time earnings, or the split of a total package that includes super into base salary and super (package divided by 1.12). Use it for 'how much super is paid on $X' or 'what is the base salary in a $X package'. Returns AUD amounts. Doesn't apply the maximum super contribution base. Read-only and deterministic.
| Argument | Type | Description |
|---|---|---|
| amount* | number | Earnings (AUD), or the total package if includesSuper is true. |
| includesSuper | boolean | amount is a package that includes super. Default false. |
{
"type": "object",
"required": [
"amount"
],
"properties": {
"amount": {
"type": "number",
"minimum": 0,
"description": "Earnings (AUD), or the total package if includesSuper is true."
},
"includesSuper": {
"type": "boolean",
"description": "amount is a package that includes super. Default false."
}
},
"additionalProperties": false
}Take-home pay in Australia for a salary or hourly rate, for 2025-26 or 2026-27. Returns gross pay, PAYG tax withheld, net pay and the employer's 12% super for each week, fortnight and month and for the year, plus a basic estimate of the year's tax and refund that assumes no deductions or other income. Use it for questions like 'how much do I take home on $85,000'. For one specific pay with declaration details use payg_withholding; for a tax return estimate with deductions, other income, family or seniors offsets use annual_tax_estimate; to go from a target take-home to a salary use salary_for_take_home. Amounts in AUD. Read-only and deterministic; no network calls.
| Argument | Type | Description |
|---|---|---|
| salary | number | Annual salary in AUD, excluding super unless salaryIncludesSuper is true, e.g. 85000. Give salary or hourlyRate, not both. |
| taxYear | string | Australian financial year (1 July to 30 June) whose withholding tables to use. Default 2026-27. |
| studyLoan | boolean | Has a HELP, VSL, SSL or other study and training support loan. Default false. |
| hourlyRate | number | Hourly rate in AUD excluding super, including any casual loading, e.g. 35.5. |
| tfnProvided | boolean | Employee gave their tax file number. Default true. False applies the no-TFN rate. |
| hoursPerWeek | number |
Official Australian individual tax rates and thresholds for 2025-26, 2026-27 or 2027-28: resident and foreign resident brackets, low income tax offset, Medicare levy and surcharge thresholds, HELP repayment thresholds, seniors offset and the 12% super guarantee. Use it to quote or check rates, for example the 15% rate from 1 July 2026 and 14% from 1 July 2027. To calculate tax on an amount, use take_home_pay, payg_withholding or annual_tax_estimate rather than applying the brackets by hand. Read-only.
| Argument | Type | Description |
|---|---|---|
| taxYear | string | Financial year. Default 2026-27. |
{
"type": "object",
"properties": {
"taxYear": {
"enum": [
"2025-26",
"2026-27",
"2027-28"
],
"type": "string",
"description": "Financial year. Default 2026-27."
}
},
"additionalProperties": false
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 13, 2026.
What changed in this server's tools since we started watching, newest first. Each change is scanned again.
Check an Australian Business Number (ABN), Australian Company Number (ACN) or tax file number (TFN) with the official check-digit algorithms, or check the format of a BSB or bank account number. Returns the normalised form or the reason it's invalid.
Adds 10% Australian GST to a price, or works out the GST included in a GST-inclusive price (the price divided by 11). Returns the price excluding GST, the GST and the price including GST, rounded to the cent. Use it for invoices, quotes and receipts. It doesn't decide whether an item is GST-free or input-taxed. AUD. Read-only and deterministic.
Official Australian individual tax rates and thresholds for a2025-26, financial2026-27 year:or 2027-28: resident and foreign resident brackets, low income tax offset, Medicare levy and surcharge thresholds, HELP repayment thresholds, seniors offset and the super12% guaranteesuper rate.guarantee. Use it to check figures instead of relyingquote onor memorycheck (therates, 16%for bracketexample becamethe 15% onrate from 1 July 2026 and 14% from 1 July 2027).2027. To calculate tax on an amount, use take_home_pay, payg_withholding or annual_tax_estimate rather than applying the brackets by hand. Read-only.
Checks an Australian Business Number (ABN), Australian Company Number (ACN) or tax file number (TFN) with the official check-digit algorithms, or the format of a BSB or bank account number. Returns valid true or false, with the normalised form or the reason it fails. Use it before storing or submitting an identifier. It confirms the number is well formed, not that it is registered or belongs to anyone: use the ABR's ABN Lookup for registration. Runs locally; nothing is sent anywhere.
Australian superannuation guarantee (12%) an employer paysmust pay on ordinary time earnings, or the split of a total package that includes super into base salary and super.super (package divided by
IncomeAustralian taxincome owedtax for ana Australianwhole financial year and the likely refund or bill against tax withheld:bill: tax at resident or foreign rates, low income tax offset, seniors and pensioners tax offset, Medicare levy (includingwith and Medicare levy and compulsory HELP/study loan Supports 2025-26, 2026-27 and 2027-28 (an no refund).
PAYG tax to withhold from a bonus, commission or similarother one-off payment made with a regular payAustralian inpay, Australiausing (ATOATO Schedule 5,5 Method A),A, for 2025-26 or 2026-27. Use it for 'how
Exact amountPAYG tax an Australian employer must withhold from one pay under(weekly, thefortnightly, ATO'smonthly PAYGor withholdingquarterly) under ATO Schedule 1 (NAT 1004), with Schedule for 2025-26 or 2026-27. Medicare levy family tax and or
Works backwards from the take-home pay someone wants to the gross annual salary they need in Australia, for 2025-26 or 2026-27. Give the target take-home per week, fortnight, month or year; returns the salary needed (excluding super), the take-home and tax withheld for each pay period, and the employer's super on top. Use it for salary negotiations and questions like 'what do I need to earn to take home $1,500 a week'. It uses the same ATO withholding formulas as take_home_pay. AUD. Read-only and deterministic.
Take-home pay in Australia for a salary or hourly rate:rate, for 2025-26 or 2026-27. Returns gross pay, PAYG tax withheld, net pay and employerthe employer's 12% super for each week, fortnight and month and for the year, plus a basicthe tax for for from
| periodsCovered | integer | Pay periods the bonus relates to, if less than a year. |
| foreignResident | boolean | Foreign resident for tax purposes. Default false. |
| taxFreeThreshold | boolean | Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job. |
{
"type": "object",
"required": [
"earnings",
"bonus",
"period"
],
"properties": {
"bonus": {
"type": "number",
"minimum": 0,
"description": "The bonus or commission amount (AUD)."
},
"period": {
"enum": [
"weekly",
"fortnightly",
"monthly",
"quarterly"
],
"type": "string",
"description": "Pay period."
},
"payDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Pay date (YYYY-MM-DD)."
},
"taxYear": {
"enum": [
"2025-26",
"2026-27"
],
"type": "string",
"description": "Australian financial year (1 July to 30 June) whose withholding tables to use. Default 2026-27."
},
"earnings": {
"type": "number",
"minimum": 0,
"description": "Regular gross earnings for the pay period the bonus is paid with (AUD), excluding the bonus."
},
"studyLoan": {
"type": "boolean",
"description": "Has a HELP, VSL, SSL or other study and training support loan. Default false."
},
"tfnProvided": {
"type": "boolean",
"description": "Employee gave their tax file number. Default true. False applies the no-TFN rate."
},
"periodsCovered": {
"type": "integer",
"minimum": 1,
"description": "Pay periods the bonus relates to, if less than a year."
},
"foreignResident": {
"type": "boolean",
"description": "Foreign resident for tax purposes. Default false."
},
"taxFreeThreshold": {
"type": "boolean",
"description": "Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job."
}
},
"additionalProperties": false
}| tfnProvided | boolean | Employee gave their tax file number. Default true. False applies the no-TFN rate. |
| medicareFamily | object | Medicare levy variation declaration (lower withholding for low-income families). |
| annualTaxOffset | number | Total annual tax offsets claimed on the withholding declaration (AUD). |
| foreignResident | boolean | Foreign resident for tax purposes. Default false. |
| taxFreeThreshold | boolean | Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job. |
| medicareExemption | string | Medicare levy exemption claimed. Default none. |
{
"type": "object",
"required": [
"earnings",
"period"
],
"properties": {
"period": {
"enum": [
"weekly",
"fortnightly",
"monthly",
"quarterly"
],
"type": "string",
"description": "Pay period."
},
"payDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Pay date (YYYY-MM-DD). Picks the financial year's tables; overrides taxYear."
},
"seniors": {
"enum": [
"single",
"couple",
"illness-separated"
],
"type": "string",
"description": "Claims the seniors and pensioners tax offset with this status (uses Schedule 9)."
},
"taxYear": {
"enum": [
"2025-26",
"2026-27"
],
"type": "string",
"description": "Australian financial year (1 July to 30 June) whose withholding tables to use. Default 2026-27."
},
"earnings": {
"type": "number",
"minimum": 0,
"description": "Gross earnings for this pay period in AUD, including taxable allowances and overtime, e.g. 3076.92 for a fortnight."
},
"studyLoan": {
"type": "boolean",
"description": "Has a HELP, VSL, SSL or other study and training support loan. Default false."
},
"tfnProvided": {
"type": "boolean",
"description": "Employee gave their tax file number. Default true. False applies the no-TFN rate."
},
"medicareFamily": {
"type": "object",
"properties": {
"spouse": {
"type": "boolean"
},
"children": {
"type": "integer",
"minimum": 0
}
},
"description": "Medicare levy variation declaration (lower withholding for low-income families).",
"additionalProperties": false
},
"annualTaxOffset": {
"type": "number",
"minimum": 0,
"description": "Total annual tax offsets claimed on the withholding declaration (AUD)."
},
"foreignResident": {
"type": "boolean",
"description": "Foreign resident for tax purposes. Default false."
},
"taxFreeThreshold": {
"type": "boolean",
"description": "Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job."
},
"medicareExemption": {
"enum": [
"none",
"half",
"full"
],
"type": "string",
"description": "Medicare levy exemption claimed. Default none."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"takeHome",
"per"
],
"properties": {
"per": {
"enum": [
"weekly",
"fortnightly",
"monthly",
"year"
],
"type": "string",
"description": "The period takeHome is for."
},
"taxYear": {
"enum": [
"2025-26",
"2026-27"
],
"type": "string",
"description": "Australian financial year (1 July to 30 June) whose withholding tables to use. Default 2026-27."
},
"takeHome": {
"type": "number",
"minimum": 0,
"description": "Take-home pay wanted, in AUD, for the period in 'per', e.g. 1500."
},
"studyLoan": {
"type": "boolean",
"description": "Has a HELP, VSL, SSL or other study and training support loan. Default false."
},
"foreignResident": {
"type": "boolean",
"description": "Foreign resident for tax purposes. Default false."
},
"taxFreeThreshold": {
"type": "boolean",
"description": "Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job."
}
},
"additionalProperties": false
}| Hours a week for hourlyRate. Default 38 (full time). |
| foreignResident | boolean | Foreign resident for tax purposes. Default false. |
| taxFreeThreshold | boolean | Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job. |
| salaryIncludesSuper | boolean | The salary is a total package that includes the 12% super guarantee. Default false. |
{
"type": "object",
"properties": {
"salary": {
"type": "number",
"minimum": 0,
"description": "Annual salary in AUD, excluding super unless salaryIncludesSuper is true, e.g. 85000. Give salary or hourlyRate, not both."
},
"taxYear": {
"enum": [
"2025-26",
"2026-27"
],
"type": "string",
"description": "Australian financial year (1 July to 30 June) whose withholding tables to use. Default 2026-27."
},
"studyLoan": {
"type": "boolean",
"description": "Has a HELP, VSL, SSL or other study and training support loan. Default false."
},
"hourlyRate": {
"type": "number",
"minimum": 0,
"description": "Hourly rate in AUD excluding super, including any casual loading, e.g. 35.5."
},
"tfnProvided": {
"type": "boolean",
"description": "Employee gave their tax file number. Default true. False applies the no-TFN rate."
},
"hoursPerWeek": {
"type": "number",
"maximum": 168,
"minimum": 0,
"description": "Hours a week for hourlyRate. Default 38 (full time)."
},
"foreignResident": {
"type": "boolean",
"description": "Foreign resident for tax purposes. Default false."
},
"taxFreeThreshold": {
"type": "boolean",
"description": "Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job."
},
"salaryIncludesSuper": {
"type": "boolean",
"description": "The salary is a total package that includes the 12% super guarantee. Default false."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"earnings",
"period"
],
"properties": {
"period": {
"enum": [
"weekly",
"fortnightly",
"monthly",
"quarterly"
],
"type": "string",
"description": "Pay period."
},
"payDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Pay date (YYYY-MM-DD). Picks the financial year's tables; overrides taxYear."
},
"seniors": {
"enum": [
"single",
"couple",
"illness-separated"
],
"type": "string",
"description": "Claims the seniors and pensioners tax offset with this status (uses Schedule 9)."
},
"taxYear": {
"enum": [
"2025-26",
"2026-27"
],
"type": "string",
"description": "Australian financial year (1 July to 30 June) whose withholding tables to use. Default 2026-27."
},
"earnings": {
"type": "number",
"minimum": 0,
"description": "Gross earnings for the pay period in AUD, including taxable allowances and overtime."
},
"studyLoan": {
"type": "boolean",
"description": "Has a HELP, VSL, SSL or other study and training support loan. Default false."
},
"tfnProvided": {
"type": "boolean",
"description": "Employee gave their tax file number. Default true. False applies the no-TFN rate."
},
"medicareFamily": {
"type": "object",
"properties": {
"spouse": {
"type": "boolean"
},
"children": {
"type": "integer",
"minimum": 0
}
},
"description": "Medicare levy variation declaration (lower withholding for low-income families).",
"additionalProperties": false
},
"annualTaxOffset": {
"type": "number",
"minimum": 0,
"description": "Total annual tax offsets claimed on the withholding declaration (AUD)."
},
"foreignResident": {
"type": "boolean",
"description": "Foreign resident for tax purposes. Default false."
},
"taxFreeThreshold": {
"type": "boolean",
"description": "Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job."
},
"medicareExemption": {
"enum": [
"none",
"half",
"full"
],
"type": "string",
"description": "Medicare levy exemption claimed. Default none."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"earnings",
"period"
],
"properties": {
"period": {
"enum": [
"weekly",
"fortnightly",
"monthly",
"quarterly"
],
"type": "string",
"description": "Pay period."
},
"payDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Pay date (YYYY-MM-DD). Picks the financial year's tables; overrides taxYear."
},
"seniors": {
"enum": [
"single",
"couple",
"illness-separated"
],
"type": "string",
"description": "Claims the seniors and pensioners tax offset with this status (uses Schedule 9)."
},
"taxYear": {
"enum": [
"2025-26",
"2026-27"
],
"type": "string",
"description": "Australian financial year (1 July to 30 June) whose withholding tables to use. Default 2026-27."
},
"earnings": {
"type": "number",
"minimum": 0,
"description": "Gross earnings for this pay period in AUD, including taxable allowances and overtime, e.g. 3076.92 for a fortnight."
},
"studyLoan": {
"type": "boolean",
"description": "Has a HELP, VSL, SSL or other study and training support loan. Default false."
},
"tfnProvided": {
"type": "boolean",
"description": "Employee gave their tax file number. Default true. False applies the no-TFN rate."
},
"medicareFamily": {
"type": "object",
"properties": {
"spouse": {
"type": "boolean"
},
"children": {
"type": "integer",
"minimum": 0
}
},
"description": "Medicare levy variation declaration (lower withholding for low-income families).",
"additionalProperties": false
},
"annualTaxOffset": {
"type": "number",
"minimum": 0,
"description": "Total annual tax offsets claimed on the withholding declaration (AUD)."
},
"foreignResident": {
"type": "boolean",
"description": "Foreign resident for tax purposes. Default false."
},
"taxFreeThreshold": {
"type": "boolean",
"description": "Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job."
},
"medicareExemption": {
"enum": [
"none",
"half",
"full"
],
"type": "string",
"description": "Medicare levy exemption claimed. Default none."
}
},
"additionalProperties": false
}{
"type": "object",
"properties": {
"salary": {
"type": "number",
"minimum": 0,
"description": "Annual salary in AUD, excluding super (unless salaryIncludesSuper). Give salary or hourlyRate."
},
"taxYear": {
"enum": [
"2025-26",
"2026-27"
],
"type": "string",
"description": "Australian financial year (1 July to 30 June) whose withholding tables to use. Default 2026-27."
},
"studyLoan": {
"type": "boolean",
"description": "Has a HELP, VSL, SSL or other study and training support loan. Default false."
},
"hourlyRate": {
"type": "number",
"minimum": 0,
"description": "Hourly rate in AUD, excluding super."
},
"tfnProvided": {
"type": "boolean",
"description": "Employee gave their tax file number. Default true. False applies the no-TFN rate."
},
"hoursPerWeek": {
"type": "number",
"maximum": 168,
"minimum": 0,
"description": "Hours a week for hourlyRate. Default 38 (full time)."
},
"foreignResident": {
"type": "boolean",
"description": "Foreign resident for tax purposes. Default false."
},
"taxFreeThreshold": {
"type": "boolean",
"description": "Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job."
},
"salaryIncludesSuper": {
"type": "boolean",
"description": "The salary is a total package that includes the 12% super guarantee. Default false."
}
},
"additionalProperties": false
}{
"type": "object",
"properties": {
"salary": {
"type": "number",
"minimum": 0,
"description": "Annual salary in AUD, excluding super unless salaryIncludesSuper is true, e.g. 85000. Give salary or hourlyRate, not both."
},
"taxYear": {
"enum": [
"2025-26",
"2026-27"
],
"type": "string",
"description": "Australian financial year (1 July to 30 June) whose withholding tables to use. Default 2026-27."
},
"studyLoan": {
"type": "boolean",
"description": "Has a HELP, VSL, SSL or other study and training support loan. Default false."
},
"hourlyRate": {
"type": "number",
"minimum": 0,
"description": "Hourly rate in AUD excluding super, including any casual loading, e.g. 35.5."
},
"tfnProvided": {
"type": "boolean",
"description": "Employee gave their tax file number. Default true. False applies the no-TFN rate."
},
"hoursPerWeek": {
"type": "number",
"maximum": 168,
"minimum": 0,
"description": "Hours a week for hourlyRate. Default 38 (full time)."
},
"foreignResident": {
"type": "boolean",
"description": "Foreign resident for tax purposes. Default false."
},
"taxFreeThreshold": {
"type": "boolean",
"description": "Tax-free threshold claimed with this employer. Default true (main job). Use false for a second job."
},
"salaryIncludesSuper": {
"type": "boolean",
"description": "The salary is a total package that includes the 12% super guarantee. Default false."
}
},
"additionalProperties": false
}