DrCr/austax/tax_tables.py

113 lines
3.1 KiB
Python

# DrCr: Web-based double-entry bookkeeping framework
# Copyright (C) 2022–2024 Lee Yingtong Li (RunasSudo)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
# Base income tax
# 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),
(120000, 5092, 0.325),
(180000, 29467, 0.37),
(None, 51667, 0.45)
]
}
# Study and training loan (HELP, etc.) repayment thresholds and rates
# 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),
(59519, 0.01),
(63090, 0.02),
(66876, 0.025),
(70889, 0.03),
(75141, 0.035),
(79650, 0.04),
(84430, 0.045),
(89495, 0.05),
(94866, 0.055),
(100558, 0.06),
(106591, 0.065),
(112986, 0.07),
(119765, 0.075),
(126951, 0.08),
(134569, 0.085),
(142643, 0.09),
(151201, 0.095),
(None, 0.1)
],
2023: [
(48361, 0),
(55837, 0.01),
(59187, 0.02),
(62739, 0.025),
(66503, 0.03),
(70493, 0.035),
(74723, 0.04),
(79207, 0.045),
(83959, 0.05),
(88997, 0.055),
(94337, 0.06),
(99997, 0.065),
(105997, 0.07),
(112356, 0.075),
(119098, 0.08),
(126244, 0.085),
(133819, 0.09),
(141848, 0.095),
(None, 0.1)
]
}
# Medicare levy thresholds
# https://www.ato.gov.au/Individuals/Medicare-and-private-health-insurance/Medicare-levy/Medicare-levy-reduction/Medicare-levy-reduction-for-low-income-earners/
# Maps each financial year to list of (lower threshold, upper threshold)
medicare_levy_threshold = {
2024: (26000, 32500), # Treasury Laws Amendment (Cost of Living—Medicare Levy) Act 2024
2023: (24276, 30345),
2022: (23365, 29207)
}
# Medicare levy surcharge rates (singles)
# https://www.ato.gov.au/individuals-and-families/medicare-and-private-health-insurance/medicare-levy-surcharge/medicare-levy-surcharge-income-thresholds-and-rates
# Maps each financial year to list of (upper limit (INclusive), MLS rate)
# FIXME: Only supports singles
medicare_levy_surcharge_single = {
2024: [
(93000, 0),
(108000, 0.01),
(144000, 0.0125),
(None, 0.015)
]
}
# FBT type 1 gross-up factor
# https://www.ato.gov.au/rates/fbt/#GrossupratesforFBT
fbt_grossup = {
2024: 2.0802,
2023: 2.0802
}