Skip to content
Merged
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/eitc-mfs-separation-conditions.fixed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Require a resident qualifying child and the statutory separation conditions for married separate filers, and for separated head-of-household filers from 2021, to receive the federal EITC, CalEITC, and credits that follow the federal marital rule. A head or spouse marked as separated meets the six-month living-apart condition by default. A new `is_separated_under_decree` input (default false) treats a head or spouse separated under a decree of divorce or separate maintenance as unmarried for the EITC, under IRC 7703(a)(2). New Jersey's EITC, including its childless age fallback, now follows the federal marital condition and, under N.J.S.A. 54A:4-7a.(3), bars every married separate filer unless a decree applies. Head-of-household status for a separated filer now requires a child resident for more than half the year and six months apart from the spouse (IRC 7703(b)). Washington's Working Families Tax Credit no longer meets the childless age test through a dependent's age.
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
description: The US makes married filing separate filers eligible for the EITC when this is true.
description: The US enables the EITC exception to the joint-return requirement for separate filers with a resident qualifying child who meet the statutory separated-spouse conditions when this is true.
metadata:
unit: bool
label: EITC separate filers eligible
label: EITC separated-spouse exception enabled
reference:
- title: 26 U.S. Code § 32(d) - Earned income credit
href: https://www.law.cornell.edu/uscode/text/26/32#d
href: https://www.govinfo.gov/content/pkg/USCODE-2023-title26/pdf/USCODE-2023-title26-subtitleA-chap1-subchapA-partIV-subpartC-sec32.pdf#page=3
# ARPA changed it for 2021 forward.
- title: American Rescue Plan Act Sec. 9623
href: https://www.congress.gov/bill/117th-congress/house-bill/1319/text
href: https://www.congress.gov/117/bills/hr1319/BILLS-117hr1319enr.pdf#page=151
values:
2013-01-01: false
2021-01-01: true
Original file line number Diff line number Diff line change
Expand Up @@ -187,23 +187,15 @@ class younger_eitc_eligible(Variable):
reference = "https://www.law.cornell.edu/uscode/text/26/32#c_1_A"

def formula(tax_unit, period, parameters):
eitc = parameters.gov.irs.credits.eitc(period)
investment_income_eligible = tax_unit(
"eitc_investment_income_eligible", period
)
demographic_eligible = tax_unit("eitc_younger_demographic_eligible", period)
no_older_children = tax_unit("eitc_older_children_count", period) == 0
# Define eligibility before considering separate filer limitation.
eligible = (
demographic_eligible & investment_income_eligible & no_older_children
)
# This parameter is true if separate filers are eligible.
if eitc.eligibility.separate_filer:
return eligible
# If separate filers are not eligible, check if the filer is separate.
filing_status = tax_unit("filing_status", period)
separate = filing_status == filing_status.possible_values.SEPARATE
return eligible & ~separate
return eligible & tax_unit("eitc_marital_eligible", period)

class younger_eitc(Variable):
value_type = float
Expand Down Expand Up @@ -382,25 +374,17 @@ class older_eitc_eligible(Variable):
reference = "https://www.law.cornell.edu/uscode/text/26/32#c_1_A"

def formula(tax_unit, period, parameters):
eitc = parameters.gov.irs.credits.eitc(period)
investment_income_eligible = tax_unit(
"eitc_investment_income_eligible", period
)
demographic_eligible = tax_unit("eitc_older_demographic_eligible", period)
younger_eitc_eligible = tax_unit("younger_eitc_eligible", period)
# Define eligibility before considering separate filer limitation.
eligible = (
demographic_eligible
& investment_income_eligible
& ~younger_eitc_eligible
)
# This parameter is true if separate filers are eligible.
if eitc.eligibility.separate_filer:
return eligible
# If separate filers are not eligible, check if the filer is separate.
filing_status = tax_unit("filing_status", period)
separate = filing_status == filing_status.possible_values.SEPARATE
return eligible & ~separate
return eligible & tax_unit("eitc_marital_eligible", period)

class older_eitc(Variable):
value_type = float
Expand Down
Loading
Loading