Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nova Scotia Age Amount Supplement #458

Open
wants to merge 12 commits into
base: master
Choose a base branch
from
4 changes: 4 additions & 0 deletions changelog_entry.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
- bump: minor
changes:
added:
- Nova Scotia age amount supplement.
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
description: Nova Scotia adds this supplement amount to the age amount.
okeyiii marked this conversation as resolved.
Show resolved Hide resolved
values:
2022-01-01: 1_465
metadata:
unit: currency-CAD
okeyiii marked this conversation as resolved.
Show resolved Hide resolved
label: Nova Scotia basic personal amount additional base
okeyiii marked this conversation as resolved.
Show resolved Hide resolved
reference:
- title: 2022 Nova Scotia Personal Tax Credits Return
href: https://hr.acadiau.ca/files/sites/hr/Payroll/Pensions%20&%20Benefits/NS_TD1_2022.pdf#page=1
- title: Worksheet for the 2023 Nova Scotia TD1NS-WS Personal Tax Credits Return -- Age Amount Supplement
href: https://www.canada.ca/content/dam/cra-arc/formspubs/pbg/td1ns-ws/td1ns-ws-23e.pdf#page=1
- title: Nova Scotia income tax act - subdivision c - Deduction for employment out of Canada
okeyiii marked this conversation as resolved.
Show resolved Hide resolved
href: https://nslegislature.ca/sites/default/files/legc/statutes/income%20tax.pdf#page=28
okeyiii marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
description: Nova Scotia phases its age amount supplement out at this rate.
brackets:
- threshold:
2022-01-01: 0
rate:
2022-01-01: 0
- threshold:
2022-01-01: 25_000
rate:
2022-01-01: 0.0293

metadata:
type: marginal_rate
rate_unit: /1
threshold_unit: currency-CAD
period: year
label: Nova Scotia age amount supplement phase out rate
reference:
- title: 2022 Nova Scotia Personal Tax Credits Return
href: https://hr.acadiau.ca/files/sites/hr/Payroll/Pensions%20&%20Benefits/NS_TD1_2022.pdf#page=1
- title: Worksheet for the 2023 Nova Scotia TD1NS-WS Personal Tax Credits Return -- Age Amount Supplement
href: https://www.canada.ca/content/dam/cra-arc/formspubs/pbg/td1ns-ws/td1ns-ws-23e.pdf#page=1
- title: Nova Scotia income tax act - subdivision c - Deduction for employment out of Canada
href: https://nslegislature.ca/sites/default/files/legc/statutes/income%20tax.pdf#page=28

Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
- name: Nova Scotia Age amonut supplement; eligible age with eligible taxable income below 25_000
period: 2023
input:
province_code: NS
okeyiii marked this conversation as resolved.
Show resolved Hide resolved
age: 65
ns_taxable_income: 24_999
okeyiii marked this conversation as resolved.
Show resolved Hide resolved
output:
ns_age_amount_supplement: 1_465

- name: Nova Scotia Age amonut supplement; eligible age with eligible taxable income between 25_000 and 75_000
period: 2023
input:
province_code: NS
age: 65
ns_taxable_income: 65_000
output:
ns_age_amount_supplement: 293

- name: Nova Scotia Age tax credit; eligible age with ineligible taxable income more than 75_000
period: 2023
input:
province_code: NS
age: 65
ns_taxable_income: 75_001
output:
ns_age_amount_supplement: 0

- name: Nova Scotia Age tax credit; ineligible age with eligible taxable income
period: 2023
input:
province_code: NS
age: 64
ns_taxable_income: 24_999
output:
ns_age_amount_supplement: 0

- name: Nova Scotia Age tax credit; ineligible age with ineligible taxable income
period: 2023
input:
province_code: NS
age: 64
okeyiii marked this conversation as resolved.
Show resolved Hide resolved
ns_taxable_income: 75_001
output:
ns_age_amount_supplement: 0
okeyiii marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
from policyengine_canada.model_api import *


class ns_age_amount_supplement(Variable):
value_type = float
entity = Person
label = "Nova Scotia Age Amount Supplement"
okeyiii marked this conversation as resolved.
Show resolved Hide resolved
unit = CAD
definition_period = YEAR
defined_for = ProvinceCode.NS
okeyiii marked this conversation as resolved.
Show resolved Hide resolved
reference = (
"https://hr.acadiau.ca/files/sites/hr/Payroll/Pensions%20&%20Benefits/NS_TD1_2022.pdf#page=1",
"https://www.canada.ca/content/dam/cra-arc/formspubs/pbg/td1ns-ws/td1ns-ws-23e.pdf#page=1",
"https://nslegislature.ca/sites/default/files/legc/statutes/income%20tax.pdf#page=28",
)

def formula(person, period, parameters):
p = parameters(period).gov.provinces.ns.tax.income.credits.age
okeyiii marked this conversation as resolved.
Show resolved Hide resolved
age = person("age", period)
taxable_income = person("ns_taxable_income", period)

# is eligible for age amount supplement
eligibility = age >= p.age_eligibility

# Calculate additional amount added to base amount
reduced_additional_amount = max_(
okeyiii marked this conversation as resolved.
Show resolved Hide resolved
0,
p.supplement.base
- p.supplement.phase_out_rate.calc(taxable_income),
)

return eligibility * reduced_additional_amount