{
  "metadata": {
    "calculator": "Employer Payroll Tax Calculator",
    "taxYear": 2026,
    "totalTestCount": 32,
    "generationDate": "2026-07-21",
    "description": "All test cases for the CalcWise Employer Payroll Tax Calculator."
  },
  "testCases": [
    {
      "id": "EPT-RATE-01",
      "name": "Employer Social Security rate is 6.2% (620 bps)",
      "category": "rate-table",
      "source": "26 U.S.C. §3111(a)",
      "input": {},
      "expected": { "employerSocialSecurityRateBps": 620 },
      "tolerance": 0
    },
    {
      "id": "EPT-RATE-02",
      "name": "Employer Medicare rate is 1.45% (145 bps)",
      "category": "rate-table",
      "source": "26 U.S.C. §3111(b)",
      "input": {},
      "expected": { "employerMedicareRateBps": 145 },
      "tolerance": 0
    },
    {
      "id": "EPT-RATE-03",
      "name": "FUTA gross rate is 6.0% (600 bps)",
      "category": "rate-table",
      "source": "26 U.S.C. §3301",
      "input": {},
      "expected": { "futaGrossRateBps": 600 },
      "tolerance": 0
    },
    {
      "id": "EPT-RATE-04",
      "name": "FUTA maximum credit is 5.4% (540 bps)",
      "category": "rate-table",
      "source": "26 U.S.C. §3302(a)-(b)",
      "input": {},
      "expected": { "futaMaximumCreditBps": 540 },
      "tolerance": 0
    },
    {
      "id": "EPT-RATE-05",
      "name": "Standard effective FUTA rate is 0.6% (60 bps)",
      "category": "rate-table",
      "source": "Derived from 26 U.S.C. §3301 and §3302(a)-(b)",
      "input": {},
      "expected": { "futaStandardEffectiveRateBps": 60 },
      "tolerance": 0
    },
    {
      "id": "EPT-RATE-06",
      "name": "FUTA wage base is $7,000 (700000 cents)",
      "category": "rate-table",
      "source": "26 U.S.C. §3306(b)(1)",
      "input": {},
      "expected": { "futaWageBaseCents": 700000 },
      "tolerance": 0
    },
    {
      "id": "EPT-RATE-07",
      "name": "2026 Social Security wage base is $184,500",
      "category": "year-specific",
      "source": "SSA Federal Register notice 90 FR 49047 (FR Doc. 2025-19763)",
      "input": { "taxYear": 2026 },
      "expected": { "socialSecurityWageBaseCents": 18450000 },
      "tolerance": 0
    },
    {
      "id": "EPT-RATE-08",
      "name": "2025 Social Security wage base is $176,100",
      "category": "year-specific",
      "source": "SSA Federal Register notice 90 FR 49047 (FR Doc. 2025-19763)",
      "input": { "taxYear": 2025 },
      "expected": { "socialSecurityWageBaseCents": 17610000 },
      "tolerance": 0
    },
    {
      "id": "EPT-RATE-09",
      "name": "2026 FUTA credit-reduction list final flag is false",
      "category": "year-specific",
      "source": "CalcWise findings: .cw-harness/research/employer-payroll-tax/findings.md",
      "input": { "taxYear": 2026 },
      "expected": { "creditReductionListFinal": false },
      "tolerance": 0
    },
    {
      "id": "EPT-ORD-10",
      "name": "Standard case: $2,500 wages, 2026, SUTA 2.7%, SUTA base $9,000",
      "category": "order-of-operations",
      "source": "26 U.S.C. §3111(a), §3111(b), §3301, §3302, §3306(b)(1)",
      "input": {
        "taxYear": 2026,
        "grossWagesCents": 250000,
        "priorYtdSocialSecurityWagesCents": 0,
        "priorYtdFutaWagesCents": 0,
        "priorYtdSutaWagesCents": 0,
        "sutaRateBps": 270,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRateBps": 0,
        "is501c3": false
      },
      "expected": {
        "socialSecurityTaxCents": 15500,
        "medicareTaxCents": 3625,
        "futaTaxCents": 1500,
        "sutaTaxCents": 6750,
        "totalEmployerPayrollTaxCents": 27375,
        "effectiveEmployerTaxRateBps": 1095
      },
      "tolerance": 0
    },
    {
      "id": "EPT-ORD-11",
      "name": "Below SS wage base: $5,000 wages",
      "category": "order-of-operations",
      "source": "26 U.S.C. §3111(a), §3111(b), §3301, §3306(b)(1)",
      "input": {
        "taxYear": 2026,
        "grossWagesCents": 500000,
        "priorYtdSocialSecurityWagesCents": 0,
        "priorYtdFutaWagesCents": 0,
        "priorYtdSutaWagesCents": 0,
        "sutaRateBps": 270,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRateBps": 0,
        "is501c3": false
      },
      "expected": {
        "socialSecurityTaxCents": 31000,
        "medicareTaxCents": 7250,
        "futaTaxCents": 3000,
        "totalEmployerPayrollTaxCents": 54750
      },
      "tolerance": 0
    },
    {
      "id": "EPT-ORD-12",
      "name": "SS wage base crossing: prior SS $184,000 plus current $2,000",
      "category": "order-of-operations",
      "source": "SSA FR Doc 2025-19763 and 26 U.S.C. §3111(a)",
      "input": {
        "taxYear": 2026,
        "grossWagesCents": 200000,
        "priorYtdSocialSecurityWagesCents": 18400000,
        "priorYtdFutaWagesCents": 0,
        "priorYtdSutaWagesCents": 0,
        "sutaRateBps": 270,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRateBps": 0,
        "is501c3": false
      },
      "expected": {
        "socialSecurityTaxableCurrentWagesCents": 50000,
        "socialSecurityTaxCents": 3100,
        "medicareTaxCents": 2900
      },
      "tolerance": 0
    },
    {
      "id": "EPT-ORD-13",
      "name": "SS already exhausted: prior SS $185,000 plus current $2,000",
      "category": "order-of-operations",
      "source": "SSA FR Doc 2025-19763 and 26 U.S.C. §3111(a)",
      "input": {
        "taxYear": 2026,
        "grossWagesCents": 200000,
        "priorYtdSocialSecurityWagesCents": 18500000,
        "priorYtdFutaWagesCents": 0,
        "priorYtdSutaWagesCents": 0,
        "sutaRateBps": 270,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRateBps": 0,
        "is501c3": false
      },
      "expected": {
        "socialSecurityTaxCents": 0,
        "medicareTaxCents": 2900
      },
      "tolerance": 0
    },
    {
      "id": "EPT-ORD-14",
      "name": "FUTA wage base crossing: prior FUTA $6,500 plus current $2,000",
      "category": "order-of-operations",
      "source": "26 U.S.C. §3306(b)(1) and §3301",
      "input": {
        "taxYear": 2026,
        "grossWagesCents": 200000,
        "priorYtdSocialSecurityWagesCents": 0,
        "priorYtdFutaWagesCents": 650000,
        "priorYtdSutaWagesCents": 0,
        "sutaRateBps": 270,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRateBps": 0,
        "is501c3": false
      },
      "expected": {
        "futaTaxableCurrentWagesCents": 50000,
        "futaTaxCents": 300
      },
      "tolerance": 0
    },
    {
      "id": "EPT-ORD-15",
      "name": "FUTA already exhausted: prior FUTA $8,000 plus current $2,000",
      "category": "order-of-operations",
      "source": "26 U.S.C. §3306(b)(1)",
      "input": {
        "taxYear": 2026,
        "grossWagesCents": 200000,
        "priorYtdSocialSecurityWagesCents": 0,
        "priorYtdFutaWagesCents": 800000,
        "priorYtdSutaWagesCents": 0,
        "sutaRateBps": 270,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRateBps": 0,
        "is501c3": false
      },
      "expected": {
        "futaTaxCents": 0
      },
      "tolerance": 0
    },
    {
      "id": "EPT-ORD-16",
      "name": "California 2025 credit reduction add-on 1.2% gives 1.8% effective FUTA",
      "category": "order-of-operations",
      "source": "DOL 91 FR 1198 (FR Doc. 2026-00342) and 26 U.S.C. §3302(c)",
      "input": {
        "taxYear": 2025,
        "grossWagesCents": 700000,
        "priorYtdSocialSecurityWagesCents": 0,
        "priorYtdFutaWagesCents": 0,
        "priorYtdSutaWagesCents": 0,
        "sutaRateBps": 270,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": true,
        "futaCreditReductionRateBps": 120,
        "is501c3": false
      },
      "expected": {
        "futaEffectiveRateBps": 180,
        "futaTaxCents": 12600
      },
      "tolerance": 0
    },
    {
      "id": "EPT-ORD-17",
      "name": "USVI 2025 credit reduction add-on 4.5% gives 5.1% effective FUTA",
      "category": "order-of-operations",
      "source": "DOL 91 FR 1198 (FR Doc. 2026-00342) and 26 U.S.C. §3302(c)",
      "input": {
        "taxYear": 2025,
        "grossWagesCents": 700000,
        "priorYtdSocialSecurityWagesCents": 0,
        "priorYtdFutaWagesCents": 0,
        "priorYtdSutaWagesCents": 0,
        "sutaRateBps": 270,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": true,
        "futaCreditReductionRateBps": 450,
        "is501c3": false
      },
      "expected": {
        "futaEffectiveRateBps": 510,
        "futaTaxCents": 35700
      },
      "tolerance": 0
    },
    {
      "id": "EPT-ORD-18",
      "name": "501(c)(3) exemption sets FUTA to zero",
      "category": "order-of-operations",
      "source": "26 U.S.C. §3306(c)(8)",
      "input": {
        "taxYear": 2026,
        "grossWagesCents": 700000,
        "priorYtdSocialSecurityWagesCents": 0,
        "priorYtdFutaWagesCents": 0,
        "priorYtdSutaWagesCents": 0,
        "sutaRateBps": 270,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": true,
        "futaCreditReductionRateBps": 450,
        "is501c3": true
      },
      "expected": {
        "futaTaxCents": 0,
        "futaEffectiveRateBps": 0
      },
      "tolerance": 0
    },
    {
      "id": "EPT-ORD-19",
      "name": "SUTA crossing: prior SUTA $8,500 plus current $2,000 with $9,000 base",
      "category": "order-of-operations",
      "source": "CalcWise scope-and-formula-spec.md section 10 step 6",
      "input": {
        "taxYear": 2026,
        "grossWagesCents": 200000,
        "priorYtdSocialSecurityWagesCents": 0,
        "priorYtdFutaWagesCents": 0,
        "priorYtdSutaWagesCents": 850000,
        "sutaRateBps": 270,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRateBps": 0,
        "is501c3": false
      },
      "expected": {
        "sutaTaxableCurrentWagesCents": 50000,
        "sutaTaxCents": 1350
      },
      "tolerance": 0
    },
    {
      "id": "EPT-ORD-20",
      "name": "Separate ledgers: SS exhausted while FUTA and SUTA still apply",
      "category": "order-of-operations",
      "source": "26 U.S.C. §3111(a), §3301, §3306(b)(1); scope-and-formula-spec.md section 11",
      "input": {
        "taxYear": 2026,
        "grossWagesCents": 200000,
        "priorYtdSocialSecurityWagesCents": 18500000,
        "priorYtdFutaWagesCents": 600000,
        "priorYtdSutaWagesCents": 800000,
        "sutaRateBps": 270,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRateBps": 0,
        "is501c3": false
      },
      "expected": {
        "socialSecurityTaxCents": 0,
        "futaTaxCents": 600,
        "sutaTaxCents": 2700
      },
      "tolerance": 0
    },
    {
      "id": "EPT-ORD-21",
      "name": "Zero gross wages gives zero taxes and zero effective rate",
      "category": "order-of-operations",
      "source": "CalcWise scope-and-formula-spec.md section 10 step 7",
      "input": {
        "taxYear": 2026,
        "grossWagesCents": 0,
        "priorYtdSocialSecurityWagesCents": 0,
        "priorYtdFutaWagesCents": 0,
        "priorYtdSutaWagesCents": 0,
        "sutaRateBps": 270,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRateBps": 0,
        "is501c3": false
      },
      "expected": {
        "socialSecurityTaxCents": 0,
        "medicareTaxCents": 0,
        "futaTaxCents": 0,
        "sutaTaxCents": 0,
        "effectiveEmployerTaxRateBps": 0
      },
      "tolerance": 0
    },
    {
      "id": "EPT-ORD-22",
      "name": "Zero SUTA rate disables SUTA and returns warning",
      "category": "order-of-operations",
      "source": "CalcWise scope-and-formula-spec.md section 10 step 6 and section 5 warning 7",
      "input": {
        "taxYear": 2026,
        "grossWagesCents": 250000,
        "priorYtdSocialSecurityWagesCents": 0,
        "priorYtdFutaWagesCents": 0,
        "priorYtdSutaWagesCents": 0,
        "sutaRateBps": 0,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRateBps": 0,
        "is501c3": false
      },
      "expected": {
        "sutaTaxCents": 0,
        "warningIncludes": "SUTA is $0 because the entered state unemployment rate is 0%"
      },
      "tolerance": 0
    },
    {
      "id": "EPT-VAL-23",
      "name": "Negative gross wages are invalid",
      "category": "validation",
      "source": "CalcWise scope-and-formula-spec.md section 13 validation rules",
      "input": {
        "taxYear": 2026,
        "grossWages": -1,
        "priorYtdSocialSecurityWages": 0,
        "priorYtdFutaWages": 0,
        "priorYtdSutaWages": 0,
        "sutaRate": 2.7,
        "sutaWageBase": 9000,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRate": "",
        "is501c3": false
      },
      "expected": {
        "valid": false,
        "errors": ["grossWages"]
      },
      "tolerance": 0
    },
    {
      "id": "EPT-VAL-24",
      "name": "SUTA rate over 100% is invalid",
      "category": "validation",
      "source": "CalcWise scope-and-formula-spec.md section 13, sutaRate rule",
      "input": {
        "taxYear": 2026,
        "grossWages": 1000,
        "priorYtdSocialSecurityWages": 0,
        "priorYtdFutaWages": 0,
        "priorYtdSutaWages": 0,
        "sutaRate": 100.01,
        "sutaWageBase": 9000,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRate": "",
        "is501c3": false
      },
      "expected": {
        "valid": false,
        "errors": ["sutaRate"]
      },
      "tolerance": 0
    },
    {
      "id": "EPT-VAL-25",
      "name": "Positive SUTA rate requires positive SUTA wage base",
      "category": "validation",
      "source": "CalcWise scope-and-formula-spec.md section 13 cross-field rule 1",
      "input": {
        "taxYear": 2026,
        "grossWages": 1000,
        "priorYtdSocialSecurityWages": 0,
        "priorYtdFutaWages": 0,
        "priorYtdSutaWages": 0,
        "sutaRate": 2.7,
        "sutaWageBase": 0,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRate": "",
        "is501c3": false
      },
      "expected": {
        "valid": false,
        "errors": ["sutaWageBase"]
      },
      "tolerance": 0
    },
    {
      "id": "EPT-VAL-26",
      "name": "Credit-reduction toggle on with zero add-on rate is invalid",
      "category": "validation",
      "source": "CalcWise scope-and-formula-spec.md section 13 cross-field rule 2",
      "input": {
        "taxYear": 2026,
        "grossWages": 1000,
        "priorYtdSocialSecurityWages": 0,
        "priorYtdFutaWages": 0,
        "priorYtdSutaWages": 0,
        "sutaRate": 2.7,
        "sutaWageBase": 9000,
        "futaCreditReductionApplies": true,
        "futaCreditReductionRate": 0,
        "is501c3": false
      },
      "expected": {
        "valid": false,
        "errors": ["futaCreditReductionRate"]
      },
      "tolerance": 0
    },
    {
      "id": "EPT-VAL-27",
      "name": "Credit-reduction rate above 5.4% is invalid",
      "category": "validation",
      "source": "26 U.S.C. §3302 and scope-and-formula-spec.md section 13",
      "input": {
        "taxYear": 2026,
        "grossWages": 1000,
        "priorYtdSocialSecurityWages": 0,
        "priorYtdFutaWages": 0,
        "priorYtdSutaWages": 0,
        "sutaRate": 2.7,
        "sutaWageBase": 9000,
        "futaCreditReductionApplies": true,
        "futaCreditReductionRate": 5.41,
        "is501c3": false
      },
      "expected": {
        "valid": false,
        "errors": ["futaCreditReductionRate"]
      },
      "tolerance": 0
    },
    {
      "id": "EPT-VAL-28",
      "name": "Blank optional prior YTD fields normalize to zero and stay valid",
      "category": "validation",
      "source": "CalcWise scope-and-formula-spec.md section 13 cross-field rule 5",
      "input": {
        "taxYear": 2026,
        "grossWages": 1000,
        "priorYtdSocialSecurityWages": "",
        "priorYtdFutaWages": "",
        "priorYtdSutaWages": "",
        "sutaRate": 2.7,
        "sutaWageBase": 9000,
        "futaCreditReductionApplies": false,
        "futaCreditReductionRate": "",
        "is501c3": false
      },
      "expected": {
        "valid": true,
        "normalized": {
          "priorYtdSocialSecurityWagesCents": 0,
          "priorYtdFutaWagesCents": 0,
          "priorYtdSutaWagesCents": 0
        }
      },
      "tolerance": 0
    },
    {
      "id": "EPT-VAL-29",
      "name": "Share URL full representative round-trip preserves cents, bps, and toggles",
      "category": "validation",
      "source": "CalcWise scope-and-formula-spec.md section 14 share URL contract",
      "input": {
        "taxYear": 2025,
        "grossWagesCents": 200000,
        "priorYtdSocialSecurityWagesCents": 100000,
        "priorYtdFutaWagesCents": 650000,
        "priorYtdSutaWagesCents": 850000,
        "sutaRateBps": 270,
        "sutaWageBaseCents": 900000,
        "futaCreditReductionApplies": true,
        "futaCreditReductionRateBps": 120,
        "is501c3": false
      },
      "expected": {
        "decodeEncodeLossless": true
      },
      "tolerance": 0
    },
    {
      "id": "EPT-VAL-30",
      "name": "Share URL round-trip works with credit-reduction and with 501(c)(3) toggle",
      "category": "validation",
      "source": "CalcWise scope-and-formula-spec.md section 14 share URL contract",
      "input": {
        "creditReductionCase": {
          "taxYear": 2025,
          "grossWagesCents": 700000,
          "priorYtdSocialSecurityWagesCents": 0,
          "priorYtdFutaWagesCents": 0,
          "priorYtdSutaWagesCents": 0,
          "sutaRateBps": 270,
          "sutaWageBaseCents": 900000,
          "futaCreditReductionApplies": true,
          "futaCreditReductionRateBps": 450,
          "is501c3": false
        },
        "nonprofitCase": {
          "taxYear": 2026,
          "grossWagesCents": 250000,
          "priorYtdSocialSecurityWagesCents": 0,
          "priorYtdFutaWagesCents": 0,
          "priorYtdSutaWagesCents": 0,
          "sutaRateBps": 270,
          "sutaWageBaseCents": 900000,
          "futaCreditReductionApplies": true,
          "futaCreditReductionRateBps": 450,
          "is501c3": true
        }
      },
      "expected": {
        "creditReductionRoundTrip": true,
        "nonprofitRoundTrip": true
      },
      "tolerance": 0
    },
    {
      "id": "EPT-YEAR-31",
      "name": "Tax year 2025 uses Social Security wage base $176,100",
      "category": "year-specific",
      "source": "SSA Federal Register notice 90 FR 49047 (FR Doc. 2025-19763)",
      "input": { "taxYear": 2025 },
      "expected": { "socialSecurityWageBaseCents": 17610000 },
      "tolerance": 0
    },
    {
      "id": "EPT-YEAR-32",
      "name": "Tax year 2026 uses Social Security wage base $184,500",
      "category": "year-specific",
      "source": "SSA Federal Register notice 90 FR 49047 (FR Doc. 2025-19763)",
      "input": { "taxYear": 2026 },
      "expected": { "socialSecurityWageBaseCents": 18450000 },
      "tolerance": 0
    }
  ]
}
