policyengine-us 1.449.6__py3-none-any.whl → 1.449.7__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- policyengine_us/parameters/gov/states/nj/tax/income/additions.yaml +12 -0
- policyengine_us/parameters/gov/states/nj/tax/income/gross_income_sources.yaml +32 -0
- policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/integration.yaml +44 -0
- policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/taxable_income/nj_agi.yaml +7 -8
- policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/nj_additions.py +8 -3
- policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/nj_gross_income.py +17 -0
- policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/nj_total_income.py +12 -6
- {policyengine_us-1.449.6.dist-info → policyengine_us-1.449.7.dist-info}/METADATA +1 -1
- {policyengine_us-1.449.6.dist-info → policyengine_us-1.449.7.dist-info}/RECORD +12 -8
- {policyengine_us-1.449.6.dist-info → policyengine_us-1.449.7.dist-info}/WHEEL +0 -0
- {policyengine_us-1.449.6.dist-info → policyengine_us-1.449.7.dist-info}/entry_points.txt +0 -0
- {policyengine_us-1.449.6.dist-info → policyengine_us-1.449.7.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
description: New Jersey counts these sources as additions to gross income.
|
|
2
|
+
metadata:
|
|
3
|
+
unit: list
|
|
4
|
+
period: year
|
|
5
|
+
label: New Jersey gross income additions
|
|
6
|
+
reference:
|
|
7
|
+
- title: NJ Statute 54A:5-1 - Additions to gross income
|
|
8
|
+
href: https://law.justia.com/codes/new-jersey/title-54a/section-54a-5-1/
|
|
9
|
+
- title: NJ-1040 Tax Form, Lines 28-38
|
|
10
|
+
href: https://www.nj.gov/treasury/taxation/pdf/current/1040.pdf
|
|
11
|
+
values:
|
|
12
|
+
2021-01-01: [] # Currently no additions implemented; update as needed
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
description: New Jersey counts the following sources as gross income.
|
|
2
|
+
metadata:
|
|
3
|
+
unit: list
|
|
4
|
+
period: year
|
|
5
|
+
label: New Jersey gross income sources
|
|
6
|
+
reference:
|
|
7
|
+
- title: NJ Statute 54A:5-1 - Gross income defined
|
|
8
|
+
href: https://law.justia.com/codes/new-jersey/title-54a/section-54a-5-1/
|
|
9
|
+
- title: NJ-1040 Tax Form
|
|
10
|
+
href: https://www.nj.gov/treasury/taxation/pdf/current/1040.pdf
|
|
11
|
+
values:
|
|
12
|
+
2021-01-01:
|
|
13
|
+
# Note: NJ uses W-2 Box 16 (state wages), not Box 1 (federal wages).
|
|
14
|
+
# NJ does not allow pre-tax deductions for 401k/403b that federal allows,
|
|
15
|
+
# so employment_income (gross wages) is correct, not irs_employment_income.
|
|
16
|
+
- employment_income # Line 15: Wages, salaries, tips (Category a)
|
|
17
|
+
- taxable_interest_income # Line 16a: Interest (Category e)
|
|
18
|
+
# Note: NJ Statute 54A:5-1(f) does not distinguish between qualified and
|
|
19
|
+
# non-qualified dividends. All dividends are taxed as ordinary income.
|
|
20
|
+
# dividend_income includes both qualified and non-qualified dividends.
|
|
21
|
+
- dividend_income # Line 17: Dividends (Category f)
|
|
22
|
+
- self_employment_income # Line 18: Net business profits (Category b)
|
|
23
|
+
- farm_income # Line 18: Farm income (Category b)
|
|
24
|
+
- long_term_capital_gains # Line 19: Long-term capital gains (Category c)
|
|
25
|
+
- short_term_capital_gains # Line 19: Short-term capital gains (Category c)
|
|
26
|
+
- taxable_pension_income # Line 20a: Pensions (Category j)
|
|
27
|
+
- taxable_ira_distributions # Line 20a: IRA distributions (Category j)
|
|
28
|
+
- partnership_s_corp_income # Lines 21-22: Partnership & S-corp (Categories k, p)
|
|
29
|
+
- rental_income # Line 23: Rents, royalties (Category d)
|
|
30
|
+
- gambling_winnings # Line 24: Gambling (Category g)
|
|
31
|
+
- alimony_income # Line 25: Alimony received (Category n)
|
|
32
|
+
- miscellaneous_income # Line 26: Other income
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
- name: 0-NJ.yaml
|
|
2
|
+
absolute_error_margin: 2
|
|
3
|
+
period: 2024
|
|
4
|
+
input:
|
|
5
|
+
people:
|
|
6
|
+
person1:
|
|
7
|
+
age: 40
|
|
8
|
+
employment_income: 0.0
|
|
9
|
+
ssi: 0
|
|
10
|
+
wic: 0
|
|
11
|
+
head_start: 0
|
|
12
|
+
early_head_start: 0
|
|
13
|
+
commodity_supplemental_food_program: 0
|
|
14
|
+
self_employment_income: 50_000
|
|
15
|
+
is_tax_unit_head: true
|
|
16
|
+
person2:
|
|
17
|
+
age: 40
|
|
18
|
+
employment_income: 0.0
|
|
19
|
+
ssi: 0
|
|
20
|
+
wic: 0
|
|
21
|
+
head_start: 0
|
|
22
|
+
early_head_start: 0
|
|
23
|
+
commodity_supplemental_food_program: 0
|
|
24
|
+
self_employment_income: 50_000
|
|
25
|
+
is_tax_unit_spouse: true
|
|
26
|
+
tax_units:
|
|
27
|
+
tax_unit:
|
|
28
|
+
members: [person1, person2]
|
|
29
|
+
premium_tax_credit: 0
|
|
30
|
+
local_income_tax: 0
|
|
31
|
+
state_sales_tax: 0
|
|
32
|
+
spm_units:
|
|
33
|
+
spm_unit:
|
|
34
|
+
members: [person1, person2]
|
|
35
|
+
snap: 0
|
|
36
|
+
tanf: 0
|
|
37
|
+
free_school_meals: 0
|
|
38
|
+
reduced_price_school_meals: 0
|
|
39
|
+
households:
|
|
40
|
+
household:
|
|
41
|
+
members: [person1, person2]
|
|
42
|
+
state_fips: 34
|
|
43
|
+
output:
|
|
44
|
+
nj_income_tax: 2_640
|
|
@@ -1,22 +1,21 @@
|
|
|
1
1
|
- name: 1 Test basic formula
|
|
2
2
|
period: 2021
|
|
3
3
|
input:
|
|
4
|
-
|
|
5
|
-
nj_additions: [1_000]
|
|
6
|
-
nj_agi_subtractions: [2_000]
|
|
4
|
+
employment_income: [10_000]
|
|
7
5
|
state_code: NJ
|
|
8
6
|
output:
|
|
9
|
-
|
|
7
|
+
nj_total_income: 10_000
|
|
8
|
+
nj_agi: 10_000
|
|
10
9
|
|
|
11
10
|
- name: 2 Test that NJ AGI cannot be negative
|
|
12
11
|
period: 2021
|
|
13
12
|
input:
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
nj_agi_subtractions: 20_000
|
|
13
|
+
employment_income: [5_000]
|
|
14
|
+
taxable_interest_income: [5_000]
|
|
17
15
|
state_code: NJ
|
|
18
16
|
output:
|
|
19
|
-
|
|
17
|
+
nj_total_income: 10_000
|
|
18
|
+
nj_agi: 10_000
|
|
20
19
|
|
|
21
20
|
- name: 3 NJ taxpayer with taxable pension income
|
|
22
21
|
absolute_error_margin: 0
|
|
@@ -4,9 +4,14 @@ from policyengine_us.model_api import *
|
|
|
4
4
|
class nj_additions(Variable):
|
|
5
5
|
value_type = float
|
|
6
6
|
entity = Person
|
|
7
|
-
label = "New Jersey additions to
|
|
7
|
+
label = "New Jersey additions to gross income"
|
|
8
8
|
unit = USD
|
|
9
|
-
documentation = "Additions to
|
|
9
|
+
documentation = "Additions to New Jersey gross income per NJ Statute 54A:5-1. These are amounts added back to gross income that may have been excluded or deducted for federal purposes."
|
|
10
10
|
definition_period = YEAR
|
|
11
|
-
reference =
|
|
11
|
+
reference = (
|
|
12
|
+
"https://law.justia.com/codes/new-jersey/title-54a/section-54a-5-1/",
|
|
13
|
+
"https://www.nj.gov/treasury/taxation/pdf/current/1040.pdf", # Lines 28-38
|
|
14
|
+
)
|
|
12
15
|
defined_for = StateCode.NJ
|
|
16
|
+
|
|
17
|
+
adds = "gov.states.nj.tax.income.additions"
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class nj_gross_income(Variable):
|
|
5
|
+
value_type = float
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "New Jersey gross income"
|
|
8
|
+
unit = USD
|
|
9
|
+
documentation = "Gross income calculated from specific income categories per NJ statute, before additions and subtractions. This is built from gross income sources, not federal AGI."
|
|
10
|
+
definition_period = YEAR
|
|
11
|
+
reference = (
|
|
12
|
+
"https://law.justia.com/codes/new-jersey/title-54a/section-54a-5-1/",
|
|
13
|
+
"https://www.nj.gov/treasury/taxation/pdf/current/1040.pdf", # Lines 15-27
|
|
14
|
+
)
|
|
15
|
+
defined_for = StateCode.NJ
|
|
16
|
+
|
|
17
|
+
adds = "gov.states.nj.tax.income.gross_income_sources"
|
|
@@ -4,14 +4,20 @@ from policyengine_us.model_api import *
|
|
|
4
4
|
class nj_total_income(Variable):
|
|
5
5
|
value_type = float
|
|
6
6
|
entity = Person
|
|
7
|
-
label = "New Jersey total income
|
|
7
|
+
label = "New Jersey total income"
|
|
8
8
|
unit = USD
|
|
9
|
+
documentation = "New Jersey total income calculated as gross income plus additions minus subtractions per NJ Statute 54A:5-1. This is the income base before exclusions."
|
|
9
10
|
definition_period = YEAR
|
|
10
|
-
reference =
|
|
11
|
+
reference = (
|
|
12
|
+
"https://law.justia.com/codes/new-jersey/title-54a/section-54a-5-1/",
|
|
13
|
+
"https://www.nj.gov/treasury/taxation/pdf/current/1040.pdf",
|
|
14
|
+
)
|
|
11
15
|
defined_for = StateCode.NJ
|
|
12
16
|
|
|
13
17
|
def formula(person, period, parameters):
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
+
# NJ Total Income = Gross Income + Additions - Subtractions
|
|
19
|
+
# Per NJ Statute 54A:5-1 and Form NJ-1040
|
|
20
|
+
gross_income = person("nj_gross_income", period)
|
|
21
|
+
additions = person("nj_additions", period)
|
|
22
|
+
subtractions = person("nj_agi_subtractions", period)
|
|
23
|
+
return max_(0, gross_income + additions - subtractions)
|
|
@@ -2498,8 +2498,10 @@ policyengine_us/parameters/gov/states/nj/njdhs/tanf/maximum_benefit/additional.y
|
|
|
2498
2498
|
policyengine_us/parameters/gov/states/nj/njdhs/tanf/maximum_benefit/main.yaml,sha256=BIyvDy4xsfYmSfnJfXNrPHUfqIFNlfpvR4QYBXaRYvM,1476
|
|
2499
2499
|
policyengine_us/parameters/gov/states/nj/snap/amount.yaml,sha256=XgY3ZUGW5AWU_GVoja8YBIDDKY-r9joNmg6Mhz5wgew,348
|
|
2500
2500
|
policyengine_us/parameters/gov/states/nj/snap/in_effect.yaml,sha256=f6CPtBmc8NWuyMK_7vNuFnGO15L_8MaMz3UgwrWHyeY,378
|
|
2501
|
+
policyengine_us/parameters/gov/states/nj/tax/income/additions.yaml,sha256=NJw2G9pFz2UAFBB7wK0b7gVroypc9ijKTtO9GLEEfzc,502
|
|
2501
2502
|
policyengine_us/parameters/gov/states/nj/tax/income/all_exclusions.yaml,sha256=k9bL9FRcpsSwjDOgbv0t-oDU6q0qYH3sKf0YRgzSR2Y,288
|
|
2502
2503
|
policyengine_us/parameters/gov/states/nj/tax/income/filing_threshold.yaml,sha256=F6Am7Ceqhk0TVyiIG3YFbNZNUEDnrvkLZVc0U6ioAys,919
|
|
2504
|
+
policyengine_us/parameters/gov/states/nj/tax/income/gross_income_sources.yaml,sha256=PqTOnlgptS0Mb519KGFP-ju2ZITv3trhLDD1kGOGVrY,1821
|
|
2503
2505
|
policyengine_us/parameters/gov/states/nj/tax/income/subtractions.yaml,sha256=j1s4mHYMikXly6g2IALBrjeYyYmUSJu5By6q4uYrXts,205
|
|
2504
2506
|
policyengine_us/parameters/gov/states/nj/tax/income/credits/cdcc/README.md,sha256=VAZGt1sAu_LCgaRpLFoUMOUaIBkjA5GGPgZ-9TEq0gs,34
|
|
2505
2507
|
policyengine_us/parameters/gov/states/nj/tax/income/credits/cdcc/rate.yaml,sha256=FqOswiRwgB0OxKHl-U-rnJR9nN6f2hGiGIoRCdRvS3c,1435
|
|
@@ -4956,6 +4958,7 @@ policyengine_us/tests/policy/baseline/gov/states/nj/njdhs/tanf/nj_tanf_maximum_a
|
|
|
4956
4958
|
policyengine_us/tests/policy/baseline/gov/states/nj/njdhs/tanf/nj_tanf_maximum_benefit.yaml,sha256=WSIb05jOKtNppAFUFw9iDdA6XtLyx8DqEEA6FakwHHo,550
|
|
4957
4959
|
policyengine_us/tests/policy/baseline/gov/states/nj/njdhs/tanf/nj_tanf_resources_eligible.yaml,sha256=9QyESfn8ABgX58-DNXefNqVOu-5sVitKdoFIbsXWdFs,403
|
|
4958
4960
|
policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/integation.yaml,sha256=SkXPEHvPT-W6BmbrXqFtgmrgoxGWYT0xjjL1YpERL08,1472
|
|
4961
|
+
policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/integration.yaml,sha256=LFipF4OrIUqFfploV0IOC68NnMDGu5h6670m0bozapA,1046
|
|
4959
4962
|
policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/nj_income_tax.yaml,sha256=2-HOCsItoq1YkN5Evctu6A8C0Bau9FF1AJzi9bA0Iqc,1082
|
|
4960
4963
|
policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/nj_withheld_income_tax.yaml,sha256=dwQ9xFrEMdsNc6v7ZPWtjzwJEQQUvN01uzJBI4NEDKw,717
|
|
4961
4964
|
policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/credits/cdcc/nj_cdcc.yaml,sha256=ZFmgVljDhx1vQBC2_O7rOG7T-1WSp3DDKFjjbNEBACs,1491
|
|
@@ -4980,7 +4983,7 @@ policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/exemptions/nj_dep
|
|
|
4980
4983
|
policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/exemptions/nj_regular_exemption.yaml,sha256=qDkjpua9XzCx0J5--SBmyquUGB3MPU6alYe7k-zs-XU,808
|
|
4981
4984
|
policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/exemptions/nj_senior_exemption.yaml,sha256=WHaETaturjR1ioEc2rW7VnzlbSW3m15SA3rdYgOLSHo,1930
|
|
4982
4985
|
policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/main/nj_main_income_tax.yaml,sha256=m6Ye0wcmTj1RobwXCR48qnzgI3kfpO5L4xYoMQsn6H8,1606
|
|
4983
|
-
policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/taxable_income/nj_agi.yaml,sha256=
|
|
4986
|
+
policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/taxable_income/nj_agi.yaml,sha256=xXoGFTtEK7d_EUmQrEL3UUaBVqamxK8fyEMmTvroYVs,2990
|
|
4984
4987
|
policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/taxable_income/nj_taxable_income.yaml,sha256=PPTJnuVyDScbFiZha_P5MSRQ4lH05lCYVL32uA1KmZw,507
|
|
4985
4988
|
policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/taxable_income/nj_taxable_income_before_property_tax_deduction.yaml,sha256=_jTVDGYXHiYkqw_ASGrP7rrB8htm9hVM_d7HOEo0gb0,519
|
|
4986
4989
|
policyengine_us/tests/policy/baseline/gov/states/nm/tax/income/integration.yaml,sha256=6Mt2Z3PMAGawpQ9S5oAsmWyj6hBgJaHSUC04Bfkc33U,5084
|
|
@@ -7781,10 +7784,11 @@ policyengine_us/variables/gov/states/nj/tax/income/nj_main_income_tax.py,sha256=
|
|
|
7781
7784
|
policyengine_us/variables/gov/states/nj/tax/income/nj_non_refundable_credits.py,sha256=wgg5ONiSj92ClyylohJzUhFKjd41Z-9W5S9KTu8SrHQ,252
|
|
7782
7785
|
policyengine_us/variables/gov/states/nj/tax/income/nj_refundable_credits.py,sha256=3StrZnCaORv8MxSyc2l44uKOZWe0d6FddaAJ8VqzfB0,353
|
|
7783
7786
|
policyengine_us/variables/gov/states/nj/tax/income/nj_withheld_income_tax.py,sha256=8Q1-49o29bv-EY54jOPq_NXqbkFTvYhCjHuVKmYX_BE,699
|
|
7784
|
-
policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/nj_additions.py,sha256=
|
|
7787
|
+
policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/nj_additions.py,sha256=f_nkDNgvNfBou6JqVKpLsRUzGE6_I2g1ub-9Rd_DFSI,666
|
|
7785
7788
|
policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/nj_agi.py,sha256=hMzCHxrXQv2xCuPiT7-e3C0NJ6tqut71AHMId6XJeHI,603
|
|
7786
7789
|
policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/nj_agi_subtractions.py,sha256=O--mBTHrrRoN9TReRESCUXJ7KgpPFSrjtm577pl8918,703
|
|
7787
|
-
policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/
|
|
7790
|
+
policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/nj_gross_income.py,sha256=lHt6mB4N2K6tt0m2XPSXViMVRKykW5BGlwtvbgWxxSs,664
|
|
7791
|
+
policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/nj_total_income.py,sha256=Gg8qfnbFunIDDVbHMvWIDenNIThqHBD6FnDjOVR2Dq4,973
|
|
7788
7792
|
policyengine_us/variables/gov/states/nj/tax/income/credits/cdcc/nj_cdcc.py,sha256=3umh8czfQolHmRdlBOPj1ttB4XO-G0sAic1gjdkQwlM,910
|
|
7789
7793
|
policyengine_us/variables/gov/states/nj/tax/income/credits/ctc/nj_ctc.py,sha256=r_lt9w3bdENwsBuXPshrLvGLOa8Q9nx2hijZoFG8fLI,1359
|
|
7790
7794
|
policyengine_us/variables/gov/states/nj/tax/income/credits/ctc/nj_ctc_eligible.py,sha256=oEPVUORcZHbCijZ3K5FNXbSCSh0lq2mWw5mcqLkHCfs,843
|
|
@@ -8988,8 +8992,8 @@ policyengine_us/variables/input/farm_income.py,sha256=BEKxYmHNNnWJAAvULl5qZJigy5
|
|
|
8988
8992
|
policyengine_us/variables/input/geography.py,sha256=Ux0ueAf0rhZaflyEqz81UuXP3xKCKBDvoO3CrKhiQEc,5421
|
|
8989
8993
|
policyengine_us/variables/input/self_employment_income.py,sha256=PwsGz8R4lRikKWUYOhsC0qosNNLXq4f5SQmfw4S3mk8,511
|
|
8990
8994
|
policyengine_us/variables/input/self_employment_income_before_lsr.py,sha256=E8fcX9Nlyqz8dziHhQv_euutdmoIwFMMWePUwbbwv_w,379
|
|
8991
|
-
policyengine_us-1.449.
|
|
8992
|
-
policyengine_us-1.449.
|
|
8993
|
-
policyengine_us-1.449.
|
|
8994
|
-
policyengine_us-1.449.
|
|
8995
|
-
policyengine_us-1.449.
|
|
8995
|
+
policyengine_us-1.449.7.dist-info/METADATA,sha256=W4nYVpJ6X9KencYcOljg6e5d02vA4lLSHhzzW5_hFmk,1649
|
|
8996
|
+
policyengine_us-1.449.7.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
8997
|
+
policyengine_us-1.449.7.dist-info/entry_points.txt,sha256=MLaqNyNTbReALyKNkde85VkuFFpdPWAcy8VRG1mjczc,57
|
|
8998
|
+
policyengine_us-1.449.7.dist-info/licenses/LICENSE,sha256=2N5ReRelkdqkR9a-KP-y-shmcD5P62XoYiG-miLTAzo,34519
|
|
8999
|
+
policyengine_us-1.449.7.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|