Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog.d/id-hb559-senior-deduction.fixed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Added Idaho conformity to the federal enhanced senior deduction through Idaho's qualified business income and federal Schedule 1-A deduction path starting in 2025.
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
- name: Idaho conforms to the federal additional senior deduction in 2025.
period: 2025
input:
people:
person1:
age: 70
is_tax_unit_head: true
is_tax_unit_head_or_spouse: true
ssn_card_type: CITIZEN
person2:
age: 70
is_tax_unit_spouse: true
is_tax_unit_head_or_spouse: true
ssn_card_type: CITIZEN
tax_units:
tax_unit:
members: [person1, person2]
filing_status: JOINT
adjusted_gross_income: 200_000
salt_deduction: 0
standard_deduction: 0
households:
household:
members: [person1, person2]
state_code: ID
output:
additional_senior_deduction: 9_000
id_additional_senior_deduction: 9_000
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
- name: Idaho qualified business income and federal Schedule 1-A deductions include the senior deduction
period: 2025
input:
qualified_business_income_deduction: 2_000
id_additional_senior_deduction: 9_000
state_code: ID
output:
id_qualified_business_income_and_federal_schedule_1a_deductions: 11_000
Original file line number Diff line number Diff line change
Expand Up @@ -12,17 +12,27 @@
input:
id_agi: 500
id_deductions: 1_000
qualified_business_income_deduction: 200
id_qualified_business_income_and_federal_schedule_1a_deductions: 200
state_code: ID
output:
id_taxable_income: 0

- name: AGI after deductions is reduced by QBID
- name: AGI after deductions is reduced by Idaho conformity deductions
period: 2021
input:
id_agi: 1_000
id_deductions: 500
qualified_business_income_deduction: 300
id_qualified_business_income_and_federal_schedule_1a_deductions: 300
state_code: ID
output:
id_taxable_income: 200

- name: Idaho conformity deductions include the federal senior deduction in 2025
period: 2025
input:
id_agi: 200_000
id_deductions: 60_000
id_qualified_business_income_and_federal_schedule_1a_deductions: 9_000
state_code: ID
output:
id_taxable_income: 131_000
Original file line number Diff line number Diff line change
Expand Up @@ -228,3 +228,41 @@
output:
# Grocery credit: 2 people * $155 = $310 (aged credit not in effect for 2025)
id_grocery_credit: 310

- name: Idaho joint senior filers receive the OBBBA enhanced senior deduction in 2025
absolute_error_margin: 0.01
period: 2025
input:
people:
person1:
age: 70
taxable_interest_income: 100_000
is_tax_unit_head: true
is_tax_unit_head_or_spouse: true
ssn_card_type: CITIZEN
person2:
age: 70
taxable_interest_income: 100_000
is_tax_unit_spouse: true
is_tax_unit_head_or_spouse: true
ssn_card_type: CITIZEN
tax_units:
tax_unit:
members: [person1, person2]
filing_status: JOINT
itemized_taxable_income_deductions: 60_000
id_salt_deduction: 0
spm_units:
spm_unit:
members: [person1, person2]
snap: 0
tanf: 0
households:
household:
members: [person1, person2]
state_fips: 16
output:
additional_senior_deduction: 9_000
id_additional_senior_deduction: 9_000
id_qualified_business_income_and_federal_schedule_1a_deductions: 9_000
id_taxable_income: 131_000
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
from policyengine_us.model_api import *


class id_additional_senior_deduction(Variable):
value_type = float
entity = TaxUnit
label = "Idaho additional senior deduction"
unit = USD
definition_period = YEAR
defined_for = StateCode.ID
reference = (
"https://legislature.idaho.gov/sessioninfo/2026/legislation/H0559/",
"https://tax.idaho.gov/pressrelease/update-on-filing-2025-idaho-income-taxes-now-that-conformity-is-law/",
)

def formula(tax_unit, period, parameters):
return tax_unit("additional_senior_deduction", period)
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,6 @@ class id_deductions(Variable):
def formula(tax_unit, period, parameters):
itm_ded = tax_unit("id_itemized_deductions", period)
std_ded = tax_unit("standard_deduction", period)
# We do not model qualified business income deduction for Idaho
# Idaho qualified business income and federal Schedule 1-A deductions
# are modeled separately.
return max_(itm_ded, std_ded)
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from policyengine_us.model_api import *


class id_qualified_business_income_and_federal_schedule_1a_deductions(Variable):
value_type = float
entity = TaxUnit
label = "Idaho qualified business income and federal Schedule 1-A deductions"
unit = USD
definition_period = YEAR
defined_for = StateCode.ID
reference = (
"https://tax.idaho.gov/wp-content/uploads/forms/EIN00046/EIN00046_03-02-2026.pdf",
"https://tax.idaho.gov/pressrelease/update-on-filing-2025-idaho-income-taxes-now-that-conformity-is-law/",
)

adds = [
"qualified_business_income_deduction",
"id_additional_senior_deduction",
]
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,14 @@ class id_taxable_income(Variable):
unit = USD
documentation = "Idaho taxable income"
definition_period = YEAR
reference = "https://tax.idaho.gov/wp-content/uploads/forms/EFO00089/EFO00089_12-30-2022.pdf#page=1"
reference = "https://tax.idaho.gov/wp-content/uploads/forms/EIN00046/EIN00046_03-02-2026.pdf"
defined_for = StateCode.ID

def formula(tax_unit, period, parameters):
agi = tax_unit("id_agi", period)
deductions = tax_unit("id_deductions", period)
qbid = tax_unit("qualified_business_income_deduction", period)
return max_(0, agi - deductions - qbid)
conformity_deductions = tax_unit(
"id_qualified_business_income_and_federal_schedule_1a_deductions",
period,
)
return max_(0, agi - deductions - conformity_deductions)
Loading