Skip to content

Commit

Permalink
South Carolina sales tax cut for people age 85 and older
Browse files Browse the repository at this point in the history
  • Loading branch information
shuyu7zhan committed Jan 24, 2025
1 parent fc3800b commit 66d3e43
Show file tree
Hide file tree
Showing 4 changed files with 46 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
- name: Person age 85 or above eligible for tax exclusion
period: 2022
input:
age: 90
state_code: SC
output:
sc_sales_and_use_exclusion_eligible: true

- name: Person age under 85 not eligible for tax exclusion
period: 2022
input:
age: 70
state_code: SC
output:
sc_sales_and_use_exclusion_eligible: false
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
- name: Person age 85 or above eligible for tax exclusion
period: 2022
input:
sc_sales_and_use_exclusion_eligible: true
sc_sales_and_purchases_proceeds: 10_000
state_code: SC
output:
sc_sales_and_use_tax: 500

- name: Person age under 85 not eligible for tax exclusion
period: 2022
input:
sc_sales_and_use_exclusion_eligible: false
sc_sales_and_purchases_proceeds: 10_000
state_code: SC
output:
sc_sales_and_use_tax: 600
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
from policyengine_us.model_api import *


class sc_sales_and_purchases_proceeds(Variable):
value_type = float
entity = TaxUnit
label = "South Carolina sales and purchases proceeds"
unit = USD
definition_period = YEAR
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,22 @@ class sc_sales_and_use_tax(Variable):
entity = TaxUnit
label = "South Carolina sales and use tax"
unit = USD
reference = "https://dor.sc.gov/forms-site/Forms/ST3.pdf#page=2"
definition_period = YEAR
defined_for = StateCode.SC

def formula(tax_unit, period, parameters):
p = parameters(period).gov.states.sc.tax.sales_and_use

# base amount
taxable_sales_and_purchases = tax_unit(
"sc_sales_and_purchases_proceeds", period
)

# sales and use tax rate with eligible exclusion
eligible = tax_unit("sc_sales_and_use_exclusion_eligible", period)
exclusion = p.exclusion.percentage * eligible
rate_applied = p.general - exclusion

# return base amount * rate_applied
return taxable_sales_and_purchases * rate_applied

0 comments on commit 66d3e43

Please sign in to comment.