Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kansas Additional Exemption for Disabled Veterans 2023 #5052

Merged
merged 16 commits into from
Oct 15, 2024
4 changes: 4 additions & 0 deletions changelog_entry.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
- bump: minor
changes:
added:
- Kansas disabled veteran exemptions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,13 @@ metadata:
label: Kansas personal exemption
reference:
- title: 2021 Form K-40 instructions
href: https://www.ksrevenue.gov/pdf/ip21.pdf
href: https://www.ksrevenue.gov/pdf/ip21.pdf#page=6
- title: 2022 Form K-40 instructions
href: https://www.ksrevenue.gov/pdf/ip22.pdf
href: https://www.ksrevenue.gov/pdf/ip22.pdf#page=6
- title: 2023 Form K-40 instructions
href: https://www.ksrevenue.gov/pdf/ip23.pdf#page=2
href: https://www.ksrevenue.gov/pdf/ip23.pdf#page=6
- title: 2023 Form K-40
href: https://www.ksrevenue.gov/pdf/k-4023.pdf#page=1
- title: KS Stat § 79-32,121 (2023) (a)
href: https://law.justia.com/codes/kansas/chapter-79/article-32/section-79-32-121/

hua7450 marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
description: Kansas provides additional exemptions for disabled veterans if this is true.
metadata:
unit: bool
period: year
label: Kansas additional exemptions for disabled veterans in effect
reference:
- title: KS Stat § 79-32,121 (2023) (b)
href: https://law.justia.com/codes/kansas/chapter-79/article-32/section-79-32-121/
- title: 2023 Form K-40
href: https://www.ksrevenue.gov/pdf/k-4023.pdf#page=1

values:
2021-01-01: false
2023-01-01: true
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
- name: Case 1, in 2023, the disabled veteran exemptions in effect.
period: 2023
input:
ks_disabled_veteran_exemptions_person: 4_500
state_code: KS
output:
ks_disabled_veteran_exemptions: 4_500

- name: Case 1, in 2022, the disabled veteran exemptions is not effect.
period: 2022
input:
ks_disabled_veteran_exemptions_person: 4_500
state_code: KS
output:
ks_disabled_veteran_exemptions: 0
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
- name: Case 1, the filer is a disabled veteran, get exemptions.
period: 2023
input:
is_permanently_and_totally_disabled: true
state_code: KS
output:
ks_disabled_veteran_exemptions_person: 2_250

- name: Case 2, the filer is not a disabled veteran, no exemption.
period: 2023
input:
is_permanently_and_totally_disabled: false
state_code: KS
output:
ks_disabled_veteran_exemptions_person: 0
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
- name: Four exemptions in 2021
period: 2021
input:
ks_count_exemptions: 4
state_code: KS
output:
ks_exemptions: 2_250 * 4

- name: Two exemptions in 2022
period: 2022
input:
ks_count_exemptions: 2
state_code: KS
output:
ks_exemptions: 2_250 * 2

- name: Case 3,two exemptions in 2023, and one disabled veteran exemption.
period: 2023
input:
ks_disabled_veteran_exemptions: 2_250
ks_count_exemptions: 2
state_code: KS
output:
ks_exemptions: 6_750

- name: Case 4,two exemptions in 2023, and four disabled veteran exemption.
period: 2023
input:
ks_disabled_veteran_exemptions: 4_500
ks_count_exemptions: 2
state_code: KS
output:
ks_exemptions: 9_000

This file was deleted.

hua7450 marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
from policyengine_us.model_api import *


class ks_disabled_veteran_exemptions(Variable):
value_type = float
entity = TaxUnit
label = "Kansas disabled veteran exemptions"
unit = USD
definition_period = YEAR
reference = "https://law.justia.com/codes/kansas/chapter-79/article-32/section-79-32-121/"
defined_for = StateCode.KS

def formula(tax_unit, period, parameters):
p = parameters(period).gov.states.ks.tax.income.exemptions
total_disabled_veteran_exemptions = add(
tax_unit, period, ["ks_disabled_veteran_exemptions_person"]
)
return p.in_effect * total_disabled_veteran_exemptions
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
from policyengine_us.model_api import *


class ks_disabled_veteran_exemptions_person(Variable):
value_type = float
entity = Person
label = "Kansas disabled veteran exemptions for each person"
unit = USD
definition_period = YEAR
defined_for = StateCode.KS

def formula(person, period, parameters):
p = parameters(period).gov.states.ks.tax.income.exemptions
hua7450 marked this conversation as resolved.
Show resolved Hide resolved
disabled = person("is_permanently_and_totally_disabled", period)
return p.amount * disabled
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,14 @@ class ks_exemptions(Variable):
label = "Kansas exemptions amount"
unit = USD
definition_period = YEAR
reference = (
"https://www.ksrevenue.gov/pdf/ip21.pdf"
"https://www.ksrevenue.gov/pdf/ip22.pdf"
)
reference = "https://law.justia.com/codes/kansas/chapter-79/article-32/section-79-32-121/"
defined_for = StateCode.KS

def formula(tax_unit, period, parameters):
exemptions_count = tax_unit("ks_count_exemptions", period)
p = parameters(period).gov.states.ks.tax.income.exemptions
return exemptions_count * p.amount
disabled_veteran_exemption = tax_unit(
"ks_disabled_veteran_exemptions", period
)
base_exemptions = exemptions_count * p.amount
return base_exemptions + disabled_veteran_exemption
Loading