diff --git a/austax/reports.py b/austax/reports.py index 1606018..a5a3ede 100644 --- a/austax/reports.py +++ b/austax/reports.py @@ -27,7 +27,7 @@ def base_income_tax(year, taxable_income): for i, (upper_limit, flat_amount, marginal_rate) in enumerate(base_tax[year]): if upper_limit is None or taxable_income.quantity <= upper_limit * (10**AMOUNT_DPS): - lower_limit = base_tax[year][i - 1][0] + lower_limit = base_tax[year][i - 1][0] or 0 return Amount(flat_amount * (10**AMOUNT_DPS) + marginal_rate * (taxable_income.quantity - lower_limit * (10**AMOUNT_DPS)), '$') def lito(taxable_income): diff --git a/austax/tax_tables.py b/austax/tax_tables.py index e84932e..ee9306d 100644 --- a/austax/tax_tables.py +++ b/austax/tax_tables.py @@ -18,6 +18,13 @@ # https://www.ato.gov.au/rates/individual-income-tax-rates/ # Maps each financial year to list of (upper limit (INclusive), flat amount, marginal rate) base_tax = { + 2024: [ + (18200, 0, 0), + (45000, 0, 0.19), + (120000, 5092, 0.325), + (180000, 29467, 0.37), + (None, 51667, 0.45) + ], 2023: [ (18200, 0, 0), (45000, 0, 0.19), @@ -31,6 +38,27 @@ base_tax = { # https://www.ato.gov.au/Rates/HELP,-TSL-and-SFSS-repayment-thresholds-and-rates/ # Maps each financial year to list of (upper limit (EXclusive), repayment rate) repayment_rates = { + 2024: [ + (51550, 0), + (59518, 0.01), + (63089, 0.02), + (66875, 0.025), + (70888, 0.03), + (75140, 0.035), + (79649, 0.04), + (84429, 0.045), + (89494, 0.05), + (94865, 0.055), + (100557, 0.06), + (106590, 0.065), + (112985, 0.07), + (119764, 0.075), + (126950, 0.08), + (134568, 0.085), + (142642, 0.09), + (151200, 0.095), + (None, 0.1) + ], 2023: [ (48361, 0), (55837, 0.01), @@ -57,5 +85,6 @@ repayment_rates = { # FBT type 1 gross-up factor # https://www.ato.gov.au/rates/fbt/#GrossupratesforFBT fbt_grossup = { + 2024: 2.0802, 2023: 2.0802 }