Skip to content

[FEATURE] implement multi-state unemployment (SUI) experience rating, wage base, and voluntary contribution engine #2012

Description

@Aakif-Kohari

Multi-State Unemployment (SUI) Experience Rating, Wage Base & Voluntary Contribution Engine

Employers pay State Unemployment Insurance (SUI) taxes based on an annual "experience rating" assigned by the state, which fluctuates based on the company's history of unemployment claims. Each state has different taxable wage bases, tax rate schedules, and deadlines. Furthermore, many states allow employers to make a "voluntary contribution" to the state trust fund to artificially buy down their tax rate for the upcoming year, saving the company massive amounts of money.

We need a SUI Tax Engine that tracks state-specific wage bases, manages annual experience rate notices, and calculates the financial ROI of making voluntary buy-down contributions.

Requirements

  • Create SUIRateSchedule, StateWageBaseLedger, and VoluntaryContributionAnalysis schemas to track annual state rate notices, YTD taxable wage accumulators, and buy-down ROI calculations.
  • Implement a suiExperienceRatingEngine.utils.js that tracks YTD wages against state-specific wage bases, halting SUI deductions once the cap is hit, and calculates the exact dollar amount required to reach the next lower tax bracket tier.
  • Implement a "Rate Expiration Guardrail" that alerts Payroll if the annual state rate notice has not been uploaded and applied before the Q1 payroll run to prevent under-withholding.
  • Build a SUITaxDashboard.jsx for Payroll Admins to input annual state rate notices, monitor multi-state wage base caps, and evaluate voluntary contribution ROI.

Files in Scope (~5 Files)

  • backend/src/models/suiTax.model.js (New)
  • backend/src/utils/suiExperienceRatingEngine.utils.js (New)
  • backend/src/controllers/suiTax.controller.js (New)
  • backend/src/routes/suiTax.routes.js (New)
  • frontend/src/pages/SUITaxDashboard.jsx (New)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions