tax-ato-2024.1: Tax types and computations for Australia
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Tax.ATO.Common

Description

Common taxes and helpers.

Synopsis

Tax tables

data TaxTables y a Source #

A set of tax tables for a particular financial year

Constructors

TaxTables 

Fields

Classes

class HasTaxableIncome a b c where Source #

Types that may have a taxable income component.

Methods

taxableIncome :: Getter (a b) (Money c) Source #

Instances

Instances details
RealFrac a => HasTaxableIncome Dividend (a :: Type) a Source #

Rounds to whole cents

Instance details

Defined in Data.Tax.ATO

Num a => HasTaxableIncome ESSStatement (a :: Type) a Source #

Note: does not implement the reduction of taxed up front amounts eligible for reduction.

Instance details

Defined in Data.Tax.ATO

HasTaxableIncome GrossAndWithheld (a :: Type) a Source # 
Instance details

Defined in Data.Tax.ATO

HasTaxableIncome PaymentSummary (a :: Type) a Source #

Gross income

Instance details

Defined in Data.Tax.ATO

HasTaxableIncome TaxAssessment (a :: Type) a Source # 
Instance details

Defined in Data.Tax.ATO

(Foldable t, HasTaxableIncome x a a, Num a) => HasTaxableIncome (t :: Type -> Type) (x a :: Type) a Source # 
Instance details

Defined in Data.Tax.ATO.Common

Methods

taxableIncome :: Getter (t (x a)) (Money a) Source #

RealFrac a => HasTaxableIncome (TaxReturnInfo y :: Type -> Type) (a :: Type) a Source #

Taxable income

Instance details

Defined in Data.Tax.ATO

Common taxes and helpers

medicareLevy :: (Fractional a, Ord a) => Money a -> Tax (Money a) (Money a) Source #

The Medicare levy, incorporating the Medicare levy reduction. The rate is 10% of the income above the given shade-in threshold or 2% of the total income, whichever is less.

lowIncomeTaxOffset :: (Fractional a, Ord a) => Tax (Money a) (Money a) Source #

Low income tax offset (LITO). $445, reduced by 1.5c for every dollar earned over $37,000. The lump amount may change in the future.

lowIncomeTaxOffset2021 :: (Fractional a, Ord a) => Tax (Money a) (Money a) Source #

Low income tax offset, 2020–21 version.

lamito :: (Fractional a, Ord a) => Tax (Money a) (Money a) Source #

Low and middle income tax offset. FY2019, 2020, 2021.

corporateTax :: Fractional a => Tax (Money a) (Money a) Source #

The corporate tax rate of 30%. In the future, different rates may be levied depending on business turnover/income.

Convenience functions

thresholds' :: (Fractional a, Ord a) => [(a, a)] -> Tax (Money a) (Money a) Source #

Convenience wrapper for thresholds. Turns the thresholds into Money

marginal' :: (Fractional a, Ord a) => [(a, a)] -> Tax (Money a) (Money a) Source #

Convenience wrapper for marginal. Turns the margins into Money