diff --git a/changelog_entry.yaml b/changelog_entry.yaml index e69de29bb..fef273531 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -0,0 +1,4 @@ +- bump: minor + changes: + added: + - Yukon pension income amount. diff --git a/policyengine_canada/parameters/gov/provinces/yt/tax/income/pension_income/amount.yaml b/policyengine_canada/parameters/gov/provinces/yt/tax/income/pension_income/amount.yaml new file mode 100644 index 000000000..c4a12fdac --- /dev/null +++ b/policyengine_canada/parameters/gov/provinces/yt/tax/income/pension_income/amount.yaml @@ -0,0 +1,10 @@ +description: Yukon provides this maximum pension income amount. +values: + 2022-01-01: 2_000 +metadata: + unit: currency-CAD + label: Yukon pension income max amount + reference: + - title: YT428 2022 - line 25 + # Credit is not specified in the Yukon Income Tax Act + href: https://www.canada.ca/content/dam/cra-arc/formspubs/pbg/5011-c/5011-c-22e.pdf#page1 diff --git a/policyengine_canada/tests/gov/provinces/yt/tax/income/credits/pension_amount/yt_pension_amount.yaml b/policyengine_canada/tests/gov/provinces/yt/tax/income/credits/pension_amount/yt_pension_amount.yaml new file mode 100644 index 000000000..2fae7abf0 --- /dev/null +++ b/policyengine_canada/tests/gov/provinces/yt/tax/income/credits/pension_amount/yt_pension_amount.yaml @@ -0,0 +1,16 @@ +- name: Below Maximum Pension Amount + period: 2022 + input: + province_code: YT + pension_and_savings_plan_income: 10_000 + output: + yt_pension_amount: 2_000 + +- name: Above Maximum Pension Amount + period: 2022 + input: + province_code: YT + pension_and_savings_plan_income: 0 + output: + yt_pension_amount: 0 + diff --git a/policyengine_canada/variables/gov/provinces/yt/benefits/yukon_child_benefit/yt_pension_amount.py b/policyengine_canada/variables/gov/provinces/yt/benefits/yukon_child_benefit/yt_pension_amount.py new file mode 100644 index 000000000..ecd7f3d6d --- /dev/null +++ b/policyengine_canada/variables/gov/provinces/yt/benefits/yukon_child_benefit/yt_pension_amount.py @@ -0,0 +1,18 @@ +from policyengine_canada.model_api import * + + +class yt_pension_amount(Variable): + value_type = float + entity = Person + label = "Yukon Pension Amount" + definition_period = YEAR + defined_for = ProvinceCode.YT + + def formula(person, period, parameters): + p = parameters(period).gov.provinces.yt.tax.income.pension_income + + pension_and_savings_income = person( + "pension_and_savings_plan_income", period + ) + + return min_(p.amount, pension_and_savings_income)