---
title: "401(k) ADP/ACP Nondiscrimination Tester"
method: POST
path: "/v1/tools/run_401k_adp_acp_test"
tags: ["TODO_TAGS_REVIEW"]
---

# 401(k) ADP/ACP Nondiscrimination Tester

`POST /v1/tools/run_401k_adp_acp_test`

## Request

- Base URL: `https://ainumbers.co`
- URL: `https://ainumbers.co/v1/tools/run_401k_adp_acp_test`
- Auth: none declared

Runs the IRC §401(k)(3) Actual Deferral Percentage test and the §401(m)(2) Actual Contribution Percentage test from supplied HCE vs NHCE deferral/match percentages (current-year or prior-year method), applying the fixed statutory permitted-disparity limits (1.25x, or 2 percentage points and 2x, whichever is greater). ACP is optional. Returns per-test pass/fail and the percentage-point excess if failed -- a simplified excess figure, not a full leveling-method dollar correction schedule. Zero network, zero PII.

**Tool URL:** https://ainumbers.co/chaingraph/art-302-401k-adp-acp-test.html
**AP2/Policy Mandate export:** yes

## Request body

- object
  - `acp_hce_pct` unknown, required
  - `acp_nhce_pct` unknown, required
  - `adp_hce_pct` unknown, required
  - `adp_nhce_pct` unknown, required
  - `method` unknown, required

## Response `200`

Successful tool execution result

- object
  - `acp` object
    - `allowed_max_pct` number
    - `computed` boolean
    - `excess_pct` integer
    - `hce_pct` number
    - `nhce_pct` number
    - `pass` boolean
  - `adp` object
    - `allowed_max_pct` number
    - `computed` boolean
    - `excess_pct` integer
    - `hce_pct` number
    - `nhce_pct` number
    - `pass` boolean
  - `all_tests_pass` boolean
  - `error` string
  - `method` string

---

[API](https://skmtc.dev/ainumbers/apis/ainumbers-co-fintech-intelligence-suite.md) · [All operations](https://skmtc.dev/ainumbers/apis/ainumbers-co-fintech-intelligence-suite/llms.txt) · [OpenAPI document](https://skmtc.dev/ainumbers/apis/ainumbers-co-fintech-intelligence-suite/revisions/b462e4f5bb28?raw)
