Fixes #528
Overview
This PR implements missing provincial tax credit and benefit programs identified in issue #528 as part of
the SPSD/M parity effort. The implementation adds 3 new provincial programs with comprehensive test
coverage.
Summary:
Detailed Implementation
- BC Sales Tax Credit
Purpose: Offsets sales tax impact for low-income BC residents
Implementation:
- Location: policyengine_canada/variables/gov/provinces/bc/tax/income/credits/bc_sales_tax_credit/
- Variables:
- bc_sales_tax_credit.py - Main credit calculation
- bc_sales_tax_credit_base.py - 75ドル per eligible adult
- bc_sales_tax_credit_reduction.py - 2% reduction on income over threshold
- Parameters:
- Base amount: 75ドル per person
- Thresholds: 15,000ドル (single), 18,000ドル (couple)
- Reduction rate: 2%
- Tests: 8 test cases covering eligibility, income thresholds, and reductions
- Alberta Seniors Benefit
Purpose: Provides financial assistance to low-income Alberta seniors
Implementation:
- Location: policyengine_canada/variables/gov/provinces/ab/benefits/ab_seniors_benefit/
- Variables:
- ab_seniors_benefit.py - Main benefit
- ab_seniors_benefit_eligible.py - Age 65+ and receiving OAS
- ab_seniors_benefit_base.py - Maximum amounts by marital status
- ab_seniors_benefit_reduction.py - 15.61% income reduction
- Parameters:
- Max benefit: 5,756ドル (2025), 3,792ドル (2024)
- Thresholds: 33,410ドル (single), 54,640ドル (couple) for 2025
- Reduction rate: 15.61%
- Tests: 10 test cases covering eligibility, income levels, and year-specific amounts
- Quebec Solidarity Tax Credit
Purpose: Helps offset housing costs and QST for low/middle-income Quebec households
Implementation:
- Location: policyengine_canada/variables/gov/provinces/qc/tax/income/credits/solidarity/
- Variables:
- qc_solidarity_tax_credit.py - Main credit aggregator
- qc_solidarity_housing_component.py - Housing cost offset
- qc_solidarity_qst_component.py - QST (sales tax) offset
- Parameters:
- Housing: 814ドル (single), 1,222ドル (couple/single parent)
- QST: 306ドル per person
- Separate thresholds and reduction rates for each component
- Tests: 8 test cases covering family compositions and income levels
Files Changed
Variables: 10 new files
Parameters: 19 new files
Tests: 3 new files
Total: 32 new files
Programs Not Implemented
Manitoba Education Property Tax Credit
Reason: Requires is_homeowner variable that doesn't exist in the current system. Implementation would
require:
- Adding is_homeowner variable to household/person entity
- Defining how homeownership status is determined
- Integration with existing tax/benefit calculations
This should be addressed in a separate PR focused on property-related variables.
Nova Scotia Affordable Living Tax Credit
Reason: Already implemented in the codebase at:
policyengine_canada/variables/gov/provinces/ns/tax/income/credits/nsaltc/ns_affordable_living_tax_credit.py
References
Uh oh!
There was an error while loading. Please reload this page.
Fixes #528
Overview
This PR implements missing provincial tax credit and benefit programs identified in issue #528 as part of
the SPSD/M parity effort. The implementation adds 3 new provincial programs with comprehensive test
coverage.
Summary:
Detailed Implementation
Purpose: Offsets sales tax impact for low-income BC residents
Implementation:
Purpose: Provides financial assistance to low-income Alberta seniors
Implementation:
Purpose: Helps offset housing costs and QST for low/middle-income Quebec households
Implementation:
Files Changed
Variables: 10 new files
Parameters: 19 new files
Tests: 3 new files
Total: 32 new files
Programs Not Implemented
Manitoba Education Property Tax Credit
Reason: Requires is_homeowner variable that doesn't exist in the current system. Implementation would
require:
This should be addressed in a separate PR focused on property-related variables.
Nova Scotia Affordable Living Tax Credit
Reason: Already implemented in the codebase at:
policyengine_canada/variables/gov/provinces/ns/tax/income/credits/nsaltc/ns_affordable_living_tax_credit.py
References