Repository: PolicyEngine/policyengine-canada (language: python)

Issue:
Quebec Work Premium Tax Credit
[Reference](https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/)


Discussion / hints:

Fix patch:
diff --git a/changelog_entry.yaml b/changelog_entry.yaml
index e69de29bb..ba268098f 100644
--- a/changelog_entry.yaml
+++ b/changelog_entry.yaml
@@ -0,0 +1,4 @@
+- bump: minor
+  changes:
+    added:
+    - Quebec work premium tax credit.
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/couple/amount/with_children.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/couple/amount/with_children.yaml
new file mode 100644
index 000000000..4ff953fc4
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/couple/amount/with_children.yaml
@@ -0,0 +1,13 @@
+description: Quebec provides the adapted premium credit up to this amount to eligible couples with at least one child.
+values:
+  2022-01-01: 4_523.20
+metadata:
+  unit: currency-CAD
+  period: year
+  label: Quebec maximum adapted work premium amount for couple with at least one child
+  reference:
+    - title: Revenu Quebec - Amount of the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/tax-credit-amounts/
+    - title: Parameters of the Personal Income Tax System for 2022 - Table 3
+      href: http://www.finances.gouv.qc.ca/MAJ2021/documents/en/AUTEN_IncomeTax2022.pdf#page=15
+    # Legal reference unavailable
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/couple/amount/without_children.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/couple/amount/without_children.yaml
new file mode 100644
index 000000000..8442626fc
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/couple/amount/without_children.yaml
@@ -0,0 +1,13 @@
+description: Quebec provides the adapted premium credit up to this amount to eligible couples without children.
+values:
+  2022-01-01: 3_075.78
+metadata:
+  unit: currency-CAD
+  period: year
+  label: Quebec maximum adapted work premium amount for couple without children
+  reference:
+    - title: Revenu Quebec - Amount of the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/tax-credit-amounts/
+    - title: Parameters of the Personal Income Tax System for 2022 - Table 3
+      href: http://www.finances.gouv.qc.ca/MAJ2021/documents/en/AUTEN_IncomeTax2022.pdf#page=15
+    # Legal reference unavailable
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/couple/reduction.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/couple/reduction.yaml
new file mode 100644
index 000000000..d74f7a0c5
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/couple/reduction.yaml
@@ -0,0 +1,25 @@
+description: Quebec reduces its adapted work premium to a couple at this rate based on the income. 
+brackets:
+  - rate:
+      2022-01-01: 0
+    threshold:
+      2022-01-01: 0
+  - rate:
+      2022-01-01: 0.1
+    threshold:
+      2022-01-01: 23_816
+metadata:
+  type: marginal_rate
+  rate_unit: /1
+  threshold_unit: currency-CAD
+  label: Quebec adapted work premium tax credit reduction rate for couples
+  reference:
+    - title: SPSD/M - 1.3.25.4.13.6 QAWPRRQuebec Adapted Work Premium for Disabled Reduction Rate(Page 1698)
+    - title: Parameters of the Personal Income Tax System for 2022 - Table 3
+      href: http://www.finances.gouv.qc.ca/MAJ2021/documents/en/AUTEN_IncomeTax2022.pdf#page=15
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2.1029.8.116.5.0.1.(c)
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#se:1029_8_116_5_0_1
+      # 10% * the amount by which the eligible individual’s total income for the year exceeds the reduction threshold for the adjusted work premium
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2.1029.8.116.5.1.(a)
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#se:1029_8_116_5_1
+      # For the year 2023, the amount of the adapted work premium reduction threshold applicable to an individual who has an eligible spouse for the year is changed from $23,816 to $25,198
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/single/amount/person_living_alone.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/single/amount/person_living_alone.yaml
new file mode 100644
index 000000000..0f9e088d1
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/single/amount/person_living_alone.yaml
@@ -0,0 +1,13 @@
+description: Quebec provides the adapted premium credit up to this amount to eligible singles living alone.
+values:
+  2022-01-01: 1_973.90
+metadata:
+  unit: currency-CAD
+  period: year
+  label: Quebec maximum adapted work premium amount for individual living alone
+  reference:
+    - title: Revenu Quebec - Amount of the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/tax-credit-amounts/
+    - title: Parameters of the Personal Income Tax System for 2022 - Table 3
+      href: http://www.finances.gouv.qc.ca/MAJ2021/documents/en/AUTEN_IncomeTax2022.pdf#page=15
+    # Legal reference unavailable
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/single/amount/single_parent.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/single/amount/single_parent.yaml
new file mode 100644
index 000000000..831443c5f
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/single/amount/single_parent.yaml
@@ -0,0 +1,13 @@
+description: Quebec provides the adapted premium credit up to this amount to eligible singles with at least one child..
+values:
+  2022-01-01: 3_628.50
+metadata:
+  unit: currency-CAD
+  period: year
+  label: Quebec maximum adapted work premium amount for single parents
+  reference:
+    - title: Revenu Quebec - Amount of the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/tax-credit-amounts/
+    - title: Parameters of the Personal Income Tax System for 2022 - Table 3
+      href: http://www.finances.gouv.qc.ca/MAJ2021/documents/en/AUTEN_IncomeTax2022.pdf#page=15
+    # Legal reference unavailable
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/single/reduction.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/single/reduction.yaml
new file mode 100644
index 000000000..8e0b86fa9
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/single/reduction.yaml
@@ -0,0 +1,25 @@
+description: Quebec reduces its adapted work premium to a single individual at this rate based on the income. 
+brackets:
+  - rate:
+      2022-01-01: 0
+    threshold:
+      2022-01-01: 0
+  - rate:
+      2022-01-01: 0.1
+    threshold:
+      2022-01-01: 15_714
+metadata:
+  type: marginal_rate
+  rate_unit: /1
+  threshold_unit: currency-CAD
+  label: Quebec adapted work premium tax credit reduction rate for single
+  reference:
+    - title: SPSD/M - 1.3.25.4.13.6 QAWPRRQuebec Adapted Work Premium for Disabled Reduction Rate(Page 1698)
+    - title: Parameters of the Personal Income Tax System for 2022 - Table 3
+      href: http://www.finances.gouv.qc.ca/MAJ2021/documents/en/AUTEN_IncomeTax2022.pdf#page=15
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2.1029.8.116.5.0.1.(c)
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#se:1029_8_116_5_0_1
+      # 10% * the amount by which the eligible individual’s total income for the year exceeds the reduction threshold for the adjusted work premium
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2.1029.8.116.5.1.(a)
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#se:1029_8_116_5_1
+      # For the year 2023, the amount of the adapted work premium reduction threshold applicable to an individual who does not have an eligible spouse for the year is changed from $15,714 to $16,654
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/work_income_requirement.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/work_income_requirement.yaml
new file mode 100644
index 000000000..d325c08ba
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/work_income_requirement.yaml
@@ -0,0 +1,11 @@
+description: Quebec limits its adapted work premium credit to people with work income at least this amount.
+values:
+  2022-01-01: 1_200
+metadata:
+  unit: currency-CAD
+  label: Quebec adapted anual work premium work income requirement
+  reference:
+    - title: Revenu Quebec - Eligibility Requirements for the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/eligibility-requirements-for-the-work-premium-tax-credits/
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2. 1029.8.116.5.0.1.(b)i
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#DIVISION_II_17_1_CREDITS_TO_INCREASE_THE_INCENTIVE_TO_WORK_23799168
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/age_eligibility.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/age_eligibility.yaml
new file mode 100644
index 000000000..88473730c
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/age_eligibility.yaml
@@ -0,0 +1,11 @@
+description: Quebec limits its work premium tax credit to people at or above this age.
+values:
+  2022-01-01: 18
+metadata:
+  unit: year
+  label: Quebec work premium tax credit age eligibility
+  reference:
+    - title: Revenu Quebec - Eligibility Requirements for the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/eligibility-requirements-for-the-work-premium-tax-credits/
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §1.1029.8.116.1."eligible individual"(a)
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#se:1029_8_116_1
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/couple/amount/with_children.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/couple/amount/with_children.yaml
new file mode 100644
index 000000000..23de058a6
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/couple/amount/with_children.yaml
@@ -0,0 +1,13 @@
+description: Quebec provides a work premium credit up to this amount to eligible couples with at least one child.
+values:
+  2022-01-01: 3_449.50
+metadata:
+  unit: currency-CAD
+  period: year
+  label: Quebec maximum work premium amount for couple with at least one child
+  reference:
+    - title: Revenu Quebec - Amount of the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/tax-credit-amounts/
+    - title: Parameters of the Personal Income Tax System for 2022 - Table 3
+      href: http://www.finances.gouv.qc.ca/MAJ2021/documents/en/AUTEN_IncomeTax2022.pdf#page=15
+    # Legal reference unavailable
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/couple/amount/without_children.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/couple/amount/without_children.yaml
new file mode 100644
index 000000000..df30a98ec
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/couple/amount/without_children.yaml
@@ -0,0 +1,13 @@
+description: Quebec provides a work premium credit up to this amount to eligible couples without children.
+values:
+  2022-01-01: 1_600.57
+metadata:
+  unit: currency-CAD
+  period: year
+  label: Quebec maximum work premium amount for couple without child
+  reference:
+    - title: Revenu Quebec - Amount of the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/tax-credit-amounts/
+    - title: Parameters of the Personal Income Tax System for 2022 - Table 3
+      href: http://www.finances.gouv.qc.ca/MAJ2021/documents/en/AUTEN_IncomeTax2022.pdf#page=15
+    # Legal reference unavailable
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/couple/reduction.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/couple/reduction.yaml
new file mode 100644
index 000000000..6e98d896b
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/couple/reduction.yaml
@@ -0,0 +1,25 @@
+description: Quebec reduces its work premium to a couple at this rate based on the income. 
+brackets:
+  - rate:
+      2022-01-01: 0
+    threshold:
+      2022-01-01: 0
+  - rate:
+      2022-01-01: 0.1
+    threshold:
+      2022-01-01: 17_398
+metadata:
+  type: marginal_rate
+  rate_unit: /1
+  threshold_unit: currency-CAD
+  label: Quebec work premium tax credit reduction rate for couples
+  reference:
+    - title: SPSD/M - 1.3.25.4.12.6 QWPRRQuebec Work Premium Reduction Rate (Page 1682)
+    - title: Parameters of the Personal Income Tax System for 2022 - Table 3
+      href: http://www.finances.gouv.qc.ca/MAJ2021/documents/en/AUTEN_IncomeTax2022.pdf#page=15
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2.1029.8.116.5.(c)
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#se:1029_8_116_5
+      # 10% * the amount by which the eligible individual’s total income for the year exceeds the work premium reduction threshold
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2.1029.8.116.5.1.(a)
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#se:1029_8_116_5_1
+      # For year 2023, the amount of the general work premium reduction threshold applicable to an individual who has an eligible spouse for the year is changed from $17,398 to $18,338
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/couple/work_income_requirement.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/couple/work_income_requirement.yaml
new file mode 100644
index 000000000..48d6ed44a
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/couple/work_income_requirement.yaml
@@ -0,0 +1,11 @@
+description: Quebec limits its work premium credit to couples with work income at least this amount.
+values:
+  2022-01-01: 3_600
+metadata:
+  unit: currency-CAD
+  label: Quebec work premium tax credit work income requirement for couples 
+  reference:
+    - title: Revenu Quebec - Eligibility Requirements for the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/eligibility-requirements-for-the-work-premium-tax-credits/
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2. 1029.8.116.5.(b)ii
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#DIVISION_II_17_1_CREDITS_TO_INCREASE_THE_INCENTIVE_TO_WORK_23799168
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/single/amount/person_living_alone.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/single/amount/person_living_alone.yaml
new file mode 100644
index 000000000..b21e6bffd
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/single/amount/person_living_alone.yaml
@@ -0,0 +1,13 @@
+description: Quebec provides a work premium credit up to this amount to eligible singles living alone.
+values:
+  2022-01-01: 1_025.21
+metadata:
+  unit: currency-CAD
+  period: year
+  label: Quebec maximum work premium amount for individual living alone
+  reference:
+    - title: Revenu Quebec - Amount of the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/tax-credit-amounts/
+    - title: Parameters of the Personal Income Tax System for 2022 - Table 3
+      href: http://www.finances.gouv.qc.ca/MAJ2021/documents/en/AUTEN_IncomeTax2022.pdf#page=15
+    # Legal reference unavailable
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/single/amount/single_parent.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/single/amount/single_parent.yaml
new file mode 100644
index 000000000..82afd3582
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/single/amount/single_parent.yaml
@@ -0,0 +1,13 @@
+description: Quebec provides a work premium credit up to this amount to eligible singles with at least one child.
+values:
+  2022-01-01: 2_651.40
+metadata:
+  unit: currency-CAD
+  period: year
+  label: Quebec maximum work premium amount for single parent
+  reference:
+    - title: Revenu Quebec - Amount of the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/tax-credit-amounts/
+    - title: Parameters of the Personal Income Tax System for 2022 - Table 3
+      href: http://www.finances.gouv.qc.ca/MAJ2021/documents/en/AUTEN_IncomeTax2022.pdf#page=15
+    # Legal reference unavailable
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/single/reduction.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/single/reduction.yaml
new file mode 100644
index 000000000..4c89cae9c
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/single/reduction.yaml
@@ -0,0 +1,25 @@
+description: Quebec reduces its work premium to a single individual at this rate based on the income. 
+brackets:
+  - rate:
+      2022-01-01: 0
+    threshold:
+      2022-01-01: 0
+  - rate:
+      2022-01-01: 0.1
+    threshold:
+      2022-01-01: 11_238
+metadata:
+  type: marginal_rate
+  rate_unit: /1
+  threshold_unit: currency-CAD
+  label: Quebec work premium tax credit reduction rate for single
+  reference:
+    - title: SPSD/M - 1.3.25.4.12.6 QWPRRQuebec Work Premium Reduction Rate (Page 1682)
+    - title: Parameters of the Personal Income Tax System for 2022 - Table 3
+      href: http://www.finances.gouv.qc.ca/MAJ2021/documents/en/AUTEN_IncomeTax2022.pdf#page=15
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2.1029.8.116.5.(c)
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#se:1029_8_116_5
+      # 10% * the amount by which the eligible individual’s total income for the year exceeds the work premium reduction threshold
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2.1029.8.116.5.1.(a)
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#se:1029_8_116_5_1
+      # For year 2023, the amount of the general work premium reduction threshold applicable to an individual who does not have an eligible spouse for the year is changed from $11,238 to $11,842
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/single/work_income_requirement.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/single/work_income_requirement.yaml
new file mode 100644
index 000000000..582e914bb
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/single/work_income_requirement.yaml
@@ -0,0 +1,11 @@
+description: Quebec limits its work premium credit to singles with work income at least this amount.
+values:
+  2022-01-01: 2_400
+metadata:
+  unit: currency-CAD
+  label: Quebec work premium tax credit work income requirement for singles 
+  reference:
+    - title: Revenu Quebec - Eligibility Requirements for the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/eligibility-requirements-for-the-work-premium-tax-credits/
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2. 1029.8.116.5.(b)i
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#DIVISION_II_17_1_CREDITS_TO_INCREASE_THE_INCENTIVE_TO_WORK_23799168
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/supplement/amount/couple.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/supplement/amount/couple.yaml
new file mode 100644
index 000000000..6a0c581f5
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/supplement/amount/couple.yaml
@@ -0,0 +1,12 @@
+description: Quebec provides this amount of supplement to eligible couple for work premium tax credit.
+values:
+  2022-01-01: 4_800
+metadata:
+  unit: currency-CAD
+  label: Quebec work premium supplement amount for couple
+  reference:
+    - title: Revenu Quebec - Amount of the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/tax-credit-amounts/
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2. 1029.8.116.5.0.2.
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#DIVISION_II_17_1_CREDITS_TO_INCREASE_THE_INCENTIVE_TO_WORK_23799168
+      # individual: an amount equal to the product obtained by multiplying $200 by the total number of eligible months
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/supplement/amount/single.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/supplement/amount/single.yaml
new file mode 100644
index 000000000..04caa8105
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/supplement/amount/single.yaml
@@ -0,0 +1,12 @@
+description: Quebec provides this amount of supplement to eligible individual for work premium tax credit.
+values:
+  2022-01-01: 2_400
+metadata:
+  unit: currency-CAD
+  label: Quebec work premium supplement amount for single person
+  reference:
+    - title: Revenu Quebec - Amount of the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/tax-credit-amounts/
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2. 1029.8.116.5.0.2.
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#DIVISION_II_17_1_CREDITS_TO_INCREASE_THE_INCENTIVE_TO_WORK_23799168
+      # an amount equal to the product obtained by multiplying $200 by the total number of eligible months
diff --git a/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/supplement/work_income_eligibility.yaml b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/supplement/work_income_eligibility.yaml
new file mode 100644
index 000000000..2ad253700
--- /dev/null
+++ b/policyengine_canada/parameters/gov/provinces/qc/tax/income/credits/work_premium/supplement/work_income_eligibility.yaml
@@ -0,0 +1,12 @@
+description: Quebec limits its work premium supplement to individual's work income at or above this amount.
+values:
+  2022-01-01: 2_400
+metadata:
+  unit: currency-CAD
+  label: Quebec work premium supplement work income requirement
+  reference:
+    - title: Revenu Quebec - Eligibility Requirements for the Work Premium Tax Credit
+      href: https://www.revenuquebec.ca/en/citizens/tax-credits/work-premium-tax-credits/eligibility-requirements-for-the-work-premium-tax-credits/
+    - title: Taxation Act(CQLR c I-3), Part I, Book IX, Title III, Division II.17.1 §2. 1029.8.116.5.0.2.
+      href: https://www.canlii.org/en/qc/laws/stat/cqlr-c-i-3/latest/cqlr-c-i-3.html#DIVISION_II_17_1_CREDITS_TO_INCREASE_THE_INCENTIVE_TO_WORK_23799168
+      # "eligible month": for which the individual’s earned income is equal to or greater than $200 
diff --git a/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/qc_adapted_work_premium_amount.py b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/qc_adapted_work_premium_amount.py
new file mode 100644
index 000000000..0f9343378
--- /dev/null
+++ b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/qc_adapted_work_premium_amount.py
@@ -0,0 +1,43 @@
+from policyengine_canada.model_api import *
+
+
+class qc_adapted_work_premium_amount(Variable):
+    value_type = float
+    entity = Household
+    label = "Quebec adapted work premium tax credit amount"
+    definition_period = YEAR
+    defined_for = "qc_adapted_work_premium_eligible"
+
+    def formula(household, period, parameters):
+        p = parameters(
+            period
+        ).gov.provinces.qc.tax.income.credits.work_premium.adapted_work_premium
+
+        has_child = household("count_children", period) > 0
+        married = household("is_married", period)
+
+        # credit
+        credit = select(
+            [
+                married & has_child,
+                married & ~has_child,
+                ~married & has_child,
+                ~married & ~has_child,
+            ],
+            [
+                p.couple.amount.with_children,
+                p.couple.amount.without_children,
+                p.single.amount.single_parent,
+                p.single.amount.person_living_alone,
+            ],
+        )
+
+        # reduction
+        income = household("adjusted_family_net_income", period)
+        reduction = where(
+            married,
+            p.couple.reduction.calc(income),
+            p.single.reduction.calc(income),
+        )
+
+        return max_(0, credit - reduction)
diff --git a/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/qc_adapted_work_premium_eligible.py b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/qc_adapted_work_premium_eligible.py
new file mode 100644
index 000000000..e94366646
--- /dev/null
+++ b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/qc_adapted_work_premium_eligible.py
@@ -0,0 +1,29 @@
+from policyengine_canada.model_api import *
+
+
+class qc_adapted_work_premium_eligible(Variable):
+    value_type = bool
+    entity = Household
+    label = "Quebec adapted work premium tax credit eligibility"
+    definition_period = YEAR
+    defined_for = "qc_work_premium_eligible"
+
+    def formula(household, period, parameters):
+        p = parameters(
+            period
+        ).gov.provinces.qc.tax.income.credits.work_premium.adapted_work_premium
+
+        person = household.members
+        is_head_or_spouse = person("is_head_or_spouse", period)
+
+        # You or your spouse is disabled
+        disabled = person("is_disabled", period)
+
+        # Your or your spouse's annual work income is over $1,200.
+        work_income_eligible = (
+            person("working_income", period) > p.work_income_requirement
+        )
+
+        return household.any(
+            is_head_or_spouse & disabled & work_income_eligible
+        )
diff --git a/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/qc_general_work_premium_amount.py b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/qc_general_work_premium_amount.py
new file mode 100644
index 000000000..b7ef11b4e
--- /dev/null
+++ b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/qc_general_work_premium_amount.py
@@ -0,0 +1,43 @@
+from policyengine_canada.model_api import *
+
+
+class qc_general_work_premium_amount(Variable):
+    value_type = float
+    entity = Household
+    label = "Quebec general work premium tax credit amount"
+    definition_period = YEAR
+    defined_for = "qc_general_work_premium_eligible"
+
+    def formula(household, period, parameters):
+        p = parameters(
+            period
+        ).gov.provinces.qc.tax.income.credits.work_premium.general_work_premium
+
+        has_child = household("count_children", period) > 0
+        married = household("is_married", period)
+
+        # credit
+        credit = select(
+            [
+                married & has_child,
+                married & ~has_child,
+                ~married & has_child,
+                ~married & ~has_child,
+            ],
+            [
+                p.couple.amount.with_children,
+                p.couple.amount.without_children,
+                p.single.amount.single_parent,
+                p.single.amount.person_living_alone,
+            ],
+        )
+
+        # reduction
+        income = household("adjusted_family_net_income", period)
+        reduction = where(
+            married,
+            p.couple.reduction.calc(income),
+            p.single.reduction.calc(income),
+        )
+
+        return max_(0, credit - reduction)
diff --git a/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/qc_general_work_premium_eligible.py b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/qc_general_work_premium_eligible.py
new file mode 100644
index 000000000..86b077c97
--- /dev/null
+++ b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/qc_general_work_premium_eligible.py
@@ -0,0 +1,23 @@
+from policyengine_canada.model_api import *
+
+
+class qc_general_work_premium_eligible(Variable):
+    value_type = bool
+    entity = Household
+    label = "Quebec general work premium tax credit eligibility"
+    definition_period = YEAR
+    defined_for = "qc_work_premium_eligible"
+
+    def formula(household, period, parameters):
+        p = parameters(
+            period
+        ).gov.provinces.qc.tax.income.credits.work_premium.general_work_premium
+
+        married = household("is_married", period)
+
+        working_income = household("family_working_income", period)
+        return where(
+            married,
+            working_income > p.couple.work_income_requirement,
+            working_income > p.single.work_income_requirement,
+        )
diff --git a/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit.py b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit.py
new file mode 100644
index 000000000..c9bcea053
--- /dev/null
+++ b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit.py
@@ -0,0 +1,11 @@
+from policyengine_canada.model_api import *
+
+
+class qc_work_premium_credit(Variable):
+    value_type = float
+    entity = Household
+    label = "Quebec work premium tax credit"
+    definition_period = YEAR
+    defined_for = ProvinceCode.QC
+
+    adds = ["qc_work_premium_credit_base", "qc_work_premium_credit_supplement"]
diff --git a/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit_base.py b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit_base.py
new file mode 100644
index 000000000..6d1b6419d
--- /dev/null
+++ b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit_base.py
@@ -0,0 +1,23 @@
+from policyengine_canada.model_api import *
+
+
+class qc_work_premium_credit_base(Variable):
+    value_type = float
+    entity = Household
+    label = "Quebec work premium tax credit base amount"
+    definition_period = YEAR
+    defined_for = ProvinceCode.QC
+
+    def formula(household, period, parameters):
+        qc_general_work_premium_amount = household(
+            "qc_general_work_premium_amount", period
+        )
+        qc_adapted_work_premium_amount = household(
+            "qc_adapted_work_premium_amount", period
+        )
+
+        # If you are entitled to both the work premium and the adapted work premium
+        # you will receive the greater of the two
+        return max_(
+            qc_general_work_premium_amount, qc_adapted_work_premium_amount
+        )
diff --git a/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit_supplement.py b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit_supplement.py
new file mode 100644
index 000000000..550d267e7
--- /dev/null
+++ b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit_supplement.py
@@ -0,0 +1,29 @@
+from policyengine_canada.model_api import *
+
+
+class qc_work_premium_credit_supplement(Variable):
+    value_type = float
+    entity = Household
+    label = "Quebec supplement to the work premium"
+    definition_period = YEAR
+    defined_for = "qc_work_premium_eligible"
+
+    def formula(household, period, parameters):
+        p = parameters(
+            period
+        ).gov.provinces.qc.tax.income.credits.work_premium.supplement
+
+        person = household.members
+        is_head_or_spouse = person("is_head_or_spouse", period)
+        work_income_eligible = (
+            person("working_income", period) > p.work_income_eligibility
+        )
+        supplement_eligible = household.sum(
+            work_income_eligible & is_head_or_spouse
+        )
+
+        return select(
+            [supplement_eligible == 2, supplement_eligible == 1],
+            [p.amount.couple, p.amount.single],
+            default=0,
+        )
diff --git a/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_eligible.py b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_eligible.py
new file mode 100644
index 000000000..b0b1dad45
--- /dev/null
+++ b/policyengine_canada/variables/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_eligible.py
@@ -0,0 +1,32 @@
+from policyengine_canada.model_api import *
+
+
+class qc_work_premium_eligible(Variable):
+    value_type = bool
+    entity = Household
+    label = "Eligible household for the Quebec work premium tax credit"
+    definition_period = YEAR
+    defined_for = ProvinceCode.QC
+
+    def formula(household, period, parameters):
+        p = parameters(period).gov.provinces.qc.tax.income.credits.work_premium
+
+        person = household.members
+
+        # You were 18 or older
+        age_eligible = person("age", period) >= p.age_eligibility
+
+        # You were younger than 18 and met all following requirements
+        has_spouse = household("is_married", period)
+        has_child = household("count_children", period) > 0
+        emancipated = person("is_emancipated", period)
+
+        # You were not a full-time student
+        not_full_time_student = ~person("is_full_time_student", period)
+
+        has_emancipated_member = household.any(emancipated)
+        no_full_time_students = household.any(not_full_time_student)
+
+        return (
+            age_eligible | (has_spouse & has_child & has_emancipated_member)
+        ) & no_full_time_students
diff --git a/policyengine_canada/variables/household/person/is_full_time_student.py b/policyengine_canada/variables/household/person/is_full_time_student.py
new file mode 100644
index 000000000..c304b0b8d
--- /dev/null
+++ b/policyengine_canada/variables/household/person/is_full_time_student.py
@@ -0,0 +1,8 @@
+from policyengine_canada.model_api import *
+
+
+class is_full_time_student(Variable):
+    value_type = bool
+    entity = Person
+    label = "Is a full-time student"
+    definition_period = YEAR


Test patch:
diff --git a/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/qc_adapted_work_premium_amount.yaml b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/qc_adapted_work_premium_amount.yaml
new file mode 100644
index 000000000..2011b44d1
--- /dev/null
+++ b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/qc_adapted_work_premium_amount.yaml
@@ -0,0 +1,133 @@
+- name: Quebec adapted work premium amount for single parent with family income below the turndown threshold
+  period: 2022
+  input:
+    qc_adapted_work_premium_eligible: true
+    is_married: false
+    count_children: 1
+    adjusted_family_net_income: 11_000 
+    province_code: QC
+  output:
+    qc_adapted_work_premium_amount: 3_628.5
+
+- name: Quebec adapted work premium amount for single parent with family income above the turndown threshold
+  period: 2022
+  input:
+    qc_adapted_work_premium_eligible: true
+    is_married: false
+    count_children: 1
+    adjusted_family_net_income: 30_000
+    province_code: QC
+  output:
+    qc_adapted_work_premium_amount: 2_199.9 # 3628.50 - 0.1*(30000-15714)
+
+- name: Quebec adapted work premium amount for single parent with family income above the maximum income
+  period: 2022
+  input:
+    qc_adapted_work_premium_eligible: true
+    is_married: false
+    count_children: 1
+    adjusted_family_net_income: 52_000
+    province_code: QC
+  output:
+    qc_adapted_work_premium_amount: 0 # max(0, 3628.50 - 0.1*(52000-15714))
+
+- name: Quebec adapted work premium amount for person living alone with family income below the turndown threshold
+  period: 2022
+  input:
+    qc_adapted_work_premium_eligible: true
+    is_married: false
+    count_children: 0
+    adjusted_family_net_income: 11_000 
+    province_code: QC
+  output:
+    qc_adapted_work_premium_amount: 1_973.9
+
+- name: Quebec adapted work premium amount for person living alone with family income above the turndown threshold
+  period: 2022
+  input:
+    qc_adapted_work_premium_eligible: true
+    is_married: false
+    count_children: 0
+    adjusted_family_net_income: 20_000
+    province_code: QC
+  output:
+    qc_adapted_work_premium_amount: 1_545.3 # 1973.9 - 0.1*(20000-15714)
+
+- name: Quebec adapted work premium amount for person living alone with family income above the maximum income
+  period: 2022
+  input:
+    qc_adapted_work_premium_eligible: true
+    is_married: false
+    count_children: 0
+    adjusted_family_net_income: 52_000
+    province_code: QC
+  output:
+    qc_adapted_work_premium_amount: 0 # max(0, 1973.9 - 0.1*(52000-15714))
+
+- name: Quebec adapted work premium amount for couple with children with family income below the turndown threshold
+  period: 2022
+  input:
+    qc_adapted_work_premium_eligible: true
+    is_married: true
+    count_children: 1
+    adjusted_family_net_income: 20_000
+    province_code: QC
+  output:
+    qc_adapted_work_premium_amount: 4_523.2
+
+
+- name: Quebec adapted work premium amount for couple with children with family income above the turndown threshold
+  period: 2022
+  input:
+    qc_adapted_work_premium_eligible: true
+    is_married: true
+    count_children: 1
+    adjusted_family_net_income: 30_000
+    province_code: QC
+  output:
+    qc_adapted_work_premium_amount: 3_904.8 # 4523.2 - 0.1*(30000-23816)
+
+- name: Quebec adapted work premium amount for couple with children with family income above the maximum income
+  period: 2022
+  input:
+    qc_adapted_work_premium_eligible: true
+    is_married: true
+    count_children: 1
+    adjusted_family_net_income: 70_000
+    province_code: QC
+  output:
+    qc_adapted_work_premium_amount: 0 # max(0, 4523.2 - 0.1*(70000-23816))
+
+- name: Quebec adapted work premium amount for couple without child with family income below the turndown threshold 
+  period: 2022
+  input:
+    qc_adapted_work_premium_eligible: true
+    is_married: true
+    count_children: 0
+    adjusted_family_net_income: 11_000 
+    province_code: QC
+  output:
+    qc_adapted_work_premium_amount: 3_075.78
+
+
+- name: Quebec adapted work premium amount for couple without child with family income above the turndown threshold
+  period: 2022
+  input:
+    qc_adapted_work_premium_eligible: true
+    is_married: true
+    count_children: 0
+    adjusted_family_net_income: 30_000
+    province_code: QC
+  output:
+    qc_adapted_work_premium_amount: 2_457.38 # 3075.78 - 0.1*(30000-23816)
+
+- name: Quebec adapted work premium amount for couple without child with family income above the maximum income 
+  period: 2022
+  input:
+    qc_adapted_work_premium_eligible: true
+    is_married: true
+    count_children: 0
+    adjusted_family_net_income: 60_000
+    province_code: QC
+  output:
+    qc_adapted_work_premium_amount: 0 # max(0, 3075.78 - 0.1*(60000-23816))
diff --git a/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/qc_adapted_work_premium_eligible.yaml b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/qc_adapted_work_premium_eligible.yaml
new file mode 100644
index 000000000..0a1d14cb8
--- /dev/null
+++ b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/adapted_work_premium/qc_adapted_work_premium_eligible.yaml
@@ -0,0 +1,124 @@
+- name: Quebec adapted work premium eligibility for household with no disabled members
+  period: 2022
+  input:
+    people:
+      head:
+        is_disabled: false
+        is_head_or_spouse: true
+        working_income: 2_000
+      spouse:
+        is_disabled: false
+        is_head_or_spouse: true
+        working_income: 2_000
+    household:
+      members: [head, spouse]
+      qc_work_premium_eligible: true
+      province_code: QC
+  output:
+    qc_adapted_work_premium_eligible: false
+
+- name: Quebec adapted work premium eligibility for married household with disabled head and working income above the requirement
+  period: 2022
+  input:
+    people:
+      head:
+        is_disabled: true
+        is_head_or_spouse: true
+        working_income: 2_000
+      spouse:
+        is_disabled: false
+        is_head_or_spouse: true
+        working_income: 2_000
+    household:
+      members: [head, spouse]
+      qc_work_premium_eligible: true
+      province_code: QC
+  output:
+    qc_adapted_work_premium_eligible: true
+
+- name: Quebec adapted work premium eligibility for married household with disabled head but working income below the requirement
+  period: 2022
+  input:
+    people:
+      head:
+        is_disabled: true
+        is_head_or_spouse: true
+        working_income: 1_000
+      spouse:
+        is_disabled: false
+        is_head_or_spouse: true
+        working_income: 2_000
+    household:
+      members: [head, spouse]
+      qc_work_premium_eligible: true
+      province_code: QC
+  output:
+    qc_adapted_work_premium_eligible: false
+
+- name: Quebec adapted work premium eligibility for married household with disabled spouse and working income above the requirement
+  period: 2022
+  input:
+    people:
+      head:
+        is_disabled: false
+        is_head_or_spouse: true
+        working_income: 2_000
+      spouse:
+        is_disabled: true
+        is_head_or_spouse: true
+        working_income: 2_000
+    household:
+      members: [head, spouse]
+      qc_work_premium_eligible: true
+      province_code: QC
+  output:
+    qc_adapted_work_premium_eligible: true
+
+- name: Quebec adapted work premium eligibility for unmarried household with disabled head and working income above the requirement
+  period: 2022
+  input:
+    people:
+      head:
+        is_disabled: true
+        is_head_or_spouse: true
+        working_income: 2_000
+    household:
+      members: [head]
+      qc_work_premium_eligible: true
+      province_code: QC
+  output:
+    qc_adapted_work_premium_eligible: true
+
+- name: Quebec adapted work premium eligibility for unmarried household with non-eligible disabled head and working income above the requirement
+  period: 2022
+  input:
+    people:
+      head:
+        is_disabled: true
+        is_head_or_spouse: true
+        working_income: 2_000
+    household:
+      members: [head]
+      qc_work_premium_eligible: false
+      province_code: QC
+  output:
+    qc_adapted_work_premium_eligible: false
+
+- name: Quebec adapted work premium eligibility for household with non-disabled head but disabled other members
+  period: 2022
+  input:
+    people:
+      head:
+        is_disabled: true
+        is_head_or_spouse: true
+        working_income: 2_000
+      dependant:
+        is_disabled: true
+        is_head_or_spouse: false
+        working_income: 2_000
+    household:
+      members: [head]
+      qc_work_premium_eligible: false
+      province_code: QC
+  output:
+    qc_adapted_work_premium_eligible: false
diff --git a/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/qc_general_work_premium_amount.yaml b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/qc_general_work_premium_amount.yaml
new file mode 100644
index 000000000..b2862421f
--- /dev/null
+++ b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/qc_general_work_premium_amount.yaml
@@ -0,0 +1,133 @@
+- name: Quebec gerneal work premium amount for couple with children with family income below the turndown threshold
+  period: 2022
+  input:
+    qc_general_work_premium_eligible: true
+    is_married: true
+    count_children: 1
+    adjusted_family_net_income: 11_000 
+    province_code: QC
+  output:
+    qc_general_work_premium_amount: 3_449.5
+
+- name: Quebec general work premium amount for couple with children with family income above the turndown threshold 
+  period: 2022
+  input:
+    qc_general_work_premium_eligible: true
+    is_married: true
+    count_children: 1
+    adjusted_family_net_income: 30_000
+    province_code: QC
+  output:
+    qc_general_work_premium_amount: 2_189.3 # 3449.5 - 0.1*(30000-17398)
+
+- name: Quebec general work premium amount for couple with children with family income above the maximum income
+  period: 2022
+  input:
+    qc_general_work_premium_eligible: true
+    is_married: true
+    count_children: 1
+    adjusted_family_net_income: 60_000
+    family_working_income: 4_000
+    province_code: QC
+  output:
+    qc_general_work_premium_amount: 0 # max(0,3449.5 - 0.1*(60000-17398))
+
+- name: Quebec general work premium amount for couple without child with family income below the turndown threshold
+  period: 2022
+  input:
+    qc_general_work_premium_eligible: true
+    is_married: true
+    count_children: 0
+    adjusted_family_net_income: 11_000 
+    province_code: QC
+  output:
+    qc_general_work_premium_amount: 1_600.57
+
+- name: Quebec general work premium amount for couple without child with family income above the turndown threshold
+  period: 2022
+  input:
+    qc_general_work_premium_eligible: true
+    is_married: true
+    count_children: 0
+    adjusted_family_net_income: 30_000
+    province_code: QC
+  output:
+    qc_general_work_premium_amount: 340.37 # 1600.57 - 0.1*(30000-17398)
+
+- name: Quebec general work premium amount for couple without child with family income above the maximum income
+  period: 2022
+  input:
+    qc_general_work_premium_eligible: true
+    is_married: true
+    count_children: 0
+    adjusted_family_net_income: 50_000
+    province_code: QC
+  output:
+    qc_general_work_premium_amount: 0 # max(0, 1600.57 - 0.1*(50000-17398))
+
+- name: Quebec general work premium amount for single parent with family income below the turndown threshold
+  period: 2022
+  input:
+    qc_general_work_premium_eligible: true
+    is_married: false
+    count_children: 1
+    adjusted_family_net_income: 11_000 
+    province_code: QC
+  output:
+    qc_general_work_premium_amount: 2_651.40
+
+- name: Quebec general work premium amount for single parent with family income above the turndown threshold
+  period: 2022
+  input:
+    qc_general_work_premium_eligible: true
+    is_married: false
+    count_children: 1
+    adjusted_family_net_income: 30_000
+    province_code: QC
+  output:
+    qc_general_work_premium_amount: 775.2 # 2651.40 - 0.1*(30000-11238)
+
+- name: Quebec general work premium amount for single parent with family income above the maximum income
+  period: 2022
+  input:
+    qc_general_work_premium_eligible: true
+    is_married: false
+    count_children: 1
+    adjusted_family_net_income: 50_000
+    province_code: QC
+  output:
+    qc_general_work_premium_amount: 0 # max(0,2651.40 - 0.1*(50000-11238))
+
+- name: Quebec general work premium amount for person living alone with family income below the turndown threshold 
+  period: 2022
+  input:
+    qc_general_work_premium_eligible: true
+    is_married: false
+    count_children: 0
+    adjusted_family_net_income: 11_000 
+    province_code: QC
+  output:
+    qc_general_work_premium_amount: 1_025.21
+
+- name: Quebec general work premium amount for person living alone with family income above the turndown threshold
+  period: 2022
+  input:
+    qc_general_work_premium_eligible: true
+    is_married: false
+    count_children: 0
+    adjusted_family_net_income: 20_000
+    province_code: QC
+  output:
+    qc_general_work_premium_amount: 149.01 # 1025.21 - 0.1*(20000-11238)
+
+- name: Quebec general work premium amount for person living alone with family income above the maximum income
+  period: 2022
+  input:
+    qc_general_work_premium_eligible: true
+    is_married: false
+    count_children: 0
+    adjusted_family_net_income: 50_000
+    family_working_income: 2_500
+    province_code: QC
+  output:
+    qc_general_work_premium_amount: 0 # max(0,1025.21 - 0.1*(50000-11238))
diff --git a/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/qc_general_work_premium_eligible.yaml b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/qc_general_work_premium_eligible.yaml
new file mode 100644
index 000000000..efcd28a9d
--- /dev/null
+++ b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/general_work_premium/qc_general_work_premium_eligible.yaml
@@ -0,0 +1,39 @@
+- name: Quebec general work premium eligibility for married household with working income over limit
+  period: 2022
+  input:
+    qc_work_premium_eligible: true
+    is_married: true
+    family_working_income: 4_000
+    province_code: QC
+  output:
+    qc_general_work_premium_eligible: true
+
+- name: Quebec general work premium eligibility for married household with working income below or at limit
+  period: 2022
+  input:
+    qc_work_premium_eligible: true
+    is_married: true
+    family_working_income: 3_600
+    province_code: QC
+  output:
+    qc_general_work_premium_eligible: false
+
+- name: Quebec general work premium eligibility for unmarried household with working income over limit
+  period: 2022
+  input:
+    qc_work_premium_eligible: true
+    is_married: false
+    family_working_income: 2_900
+    province_code: QC
+  output:
+    qc_general_work_premium_eligible: true
+
+- name: Quebec general work premium eligibility for unmarried household with working income below or at limit
+  period: 2022
+  input:
+    qc_work_premium_eligible: true
+    is_married: true
+    family_working_income: 2_400
+    province_code: QC
+  output:
+    qc_general_work_premium_eligible: false
diff --git a/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit.yaml b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit.yaml
new file mode 100644
index 000000000..1bec10a92
--- /dev/null
+++ b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit.yaml
@@ -0,0 +1,8 @@
+- name: Quebec work premium credit 
+  period: 2022
+  input:
+    qc_work_premium_credit_base: 200
+    qc_work_premium_credit_supplement: 300
+    province_code: QC
+  output:
+    qc_work_premium_credit: 500 #200+300
diff --git a/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit_base.yaml b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit_base.yaml
new file mode 100644
index 000000000..3f10591e1
--- /dev/null
+++ b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit_base.yaml
@@ -0,0 +1,28 @@
+- name: Quebec work premium credit for household eligible for higher adapted work premium credit
+  period: 2022
+  input:
+    qc_general_work_premium_amount: 200
+    qc_adapted_work_premium_amount: 300
+    province_code: QC
+  output:
+    qc_work_premium_credit_base: 300 # max(200, 300)
+
+- name: Quebec work premium credit for household eligible for lower adapted work premium credit
+  period: 2022
+  input:
+    qc_general_work_premium_amount: 500
+    qc_adapted_work_premium_amount: 300
+    province_code: QC
+  output:
+    qc_work_premium_credit_base: 500 # max(500, 300)
+
+- name: Quebec work premium credit for married household eligible for adapted work premium credit
+  period: 2022
+  input:
+    qc_general_work_premium_amount: 200
+    qc_adapted_work_premium_amount: 0
+    province_code: QC
+  output:
+    qc_work_premium_credit_base: 200
+
+
diff --git a/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit_supplement.yaml b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit_supplement.yaml
new file mode 100644
index 000000000..1efce8816
--- /dev/null
+++ b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_credit_supplement.yaml
@@ -0,0 +1,84 @@
+- name: Quebec work premium supplement for household with spouse enter the labour market
+  period: 2022
+  input:
+    people:
+      head:
+        is_head_or_spouse: true
+        working_income: 3_000
+      spouse:
+        is_head_or_spouse: true
+        working_income: 3_000
+    household:
+      qc_work_premium_eligible: true
+      members: [head, spouse]
+      province_code: QC
+  output:
+    qc_work_premium_credit_supplement: 4_800
+
+- name: Quebec work premium supplement for household without spouse enter the labour market but other dependent entered
+  period: 2022
+  input:
+    people:
+      head:
+        is_head_or_spouse: true
+        working_income: 3_000
+      dependant:
+        is_head_or_spouse: false
+        working_income: 3_000
+    household:
+      qc_work_premium_eligible: true
+      members: [head, dependant]
+      province_code: QC
+  output:
+    qc_work_premium_credit_supplement: 2_400
+
+- name: Quebec work premium supplement for household only the head enter the labour market/spouse work income below the requirement
+  period: 2022
+  input:
+    people:
+      head:
+        is_head_or_spouse: true
+        working_income: 3_000
+      spouse:
+        is_head_or_spouse: true
+        working_income: 2_000
+    household:
+      members: [head, spouse]
+      qc_work_premium_eligible: true
+      province_code: QC
+  output:
+    qc_work_premium_credit_supplement: 2_400
+
+- name: Quebec work premium supplement for household when both the head and spouse work income below the requirement
+  period: 2022
+  input:
+    people:
+      head:
+        is_head_or_spouse: true
+        working_income: 2_000
+      spouse:
+        is_head_or_spouse: true
+        working_income: 2_000
+    household:
+      members: [head, spouse]
+      qc_work_premium_eligible: true
+      province_code: QC
+  output:
+    qc_work_premium_credit_supplement: 0
+
+- name: Quebec work premium supplement for household with spouse enter the labour market but are not eligible for this credit
+  period: 2022
+  input:
+    people:
+      head:
+        is_head_or_spouse: true
+        working_income: 3_000
+      spouse:
+        is_head_or_spouse: true
+        working_income: 3_000
+    household:
+      qc_work_premium_eligible: false
+      members: [head, spouse]
+      province_code: QC
+  output:
+    qc_work_premium_credit_supplement: 0
diff --git a/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_eligible.yaml b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_eligible.yaml
new file mode 100644
index 000000000..4cdcca12f
--- /dev/null
+++ b/policyengine_canada/tests/gov/provinces/qc/tax/income/credits/work_premium/qc_work_premium_eligible.yaml
@@ -0,0 +1,71 @@
+- name: Quebec work premium tax credit requirements for people over age limit
+  period: 2022
+  input:
+    age: 18
+    is_married: true
+    count_children: 0
+    is_emancipated: false
+    is_full_time_student: false
+    province_code: QC
+  output:
+    qc_work_premium_eligible: true
+
+- name: Quebec work premium tax credit requirements for people over age limit but is full time student
+  period: 2022
+  input:
+    age: 18
+    is_married: true
+    count_children: 0
+    is_emancipated: false
+    is_full_time_student: true
+    province_code: QC
+  output:
+    qc_work_premium_eligible: false
+
+- name: Quebec work premium tax credit requirements for people below age limit and unmarried
+  period: 2022
+  input:
+    age: 17
+    is_married: false
+    count_children: 0
+    is_emancipated: false
+    is_full_time_student: false
+    province_code: QC
+  output:
+    qc_work_premium_eligible: false
+
+- name: Quebec work premium tax credit requirements for people below age limit and married with children and emancipated
+  period: 2022
+  input:
+    age: 17
+    is_married: true
+    count_children: 2
+    is_emancipated: true
+    is_full_time_student: false
+    province_code: QC
+  output:
+    qc_work_premium_eligible: true
+
+- name: Quebec work premium tax credit requirements for people below age limit and married with children and but not emancipated
+  period: 2022
+  input:
+    age: 17
+    is_married: true
+    count_children: 2
+    is_emancipated: false
+    is_full_time_student: false
+    province_code: QC
+  output:
+    qc_work_premium_eligible: false
+
+- name: Quebec work premium tax credit requirements for people below age limit and married without children
+  period: 2022
+  input:
+    age: 17
+    is_married: true
+    count_children: 0
+    is_emancipated: true
+    is_full_time_student: false
+    province_code: QC
+  output:
+    qc_work_premium_eligible: false