Payroll tax rules you can audit.
Federal and state withholding, unemployment, disability and paid-leave rules as clean JSON — effective-dated, versioned, and traced to the official document every figure came from.
$ curl "…/v1/rates/lookup?work_state=CA&pay_date=2025-10-15" \
-H "Authorization: Bearer $ITX_API_KEY"
200 OK · x-request-id: req_7hQ2kLp0aX1c
{
"tax_code": "US-CA:SUI",
"effective_from": "2025-01-01",
"parameters": {
"wage_base": "7000.00",
"new_employer_rate": "0.034"
},
"version": { "number": 3, "published_at": "2025-01-06T15:02:11Z" },
"sources": [
{ "url": "https://edd.ca.gov/…", "sha256": "4be1…" }
]
}The tax table your payroll engine can trust
Built for engineers who have to explain every number on a pay stub — to customers, to auditors and to themselves.
Effective-dated
Ask for a pay date and get the rules in force that day — before and after every mid-year change.
Traceable to the source
Each tax carries the official source URLs and the SHA-256 fingerprint of the exact documents we read.
Human-approved
An AI agent proposes, people approve. Nothing is published until a tax reviewer signs off.
Point-in-time history
Versions are immutable. Replay what the API answered on any past date with as_of.
Change feed
Poll one endpoint to learn what was published or superseded since your last sync.
Predictable JSON
snake_case, decimal strings for rates and money, request ids on every response, OpenAPI 3.1.
An AI agent does the reading. People do the approving.
Every version passes the same five steps. If anything doesn't add up, it stops and waits for a person.
Fetch
Only approved .gov sources. Each copy is fingerprinted; unchanged documents are skipped.
Extract
The agent reads the document twice, independently, into a strict schema.
Verify
Every value must appear in a verbatim quote, and both reads must agree.
Review
A tax reviewer sees the diff against what's live and approves or rejects.
Publish
A new immutable version goes live, effective-dated, and lands in the change feed.
Everything that applies to a pay date, in one response
Pass the work state and pay date. Add a residence state and filing status if you have them. You get every federal and state tax in force, with the parameters your engine needs — and a list of anything not yet published, so nothing goes missing silently.
- Rates and money as exact decimal strings — no float drift
-
meta.unavailabletells you what we can't answer yet - A
request_idon every response for support - OpenAPI 3.1 spec for generated clients
const res = await fetch(
"https://tax-api.itensiahr.com/v1/rates/lookup?work_state=CA&pay_date=2025-10-15&filing_status=single",
{ headers: { Authorization: `Bearer ${process.env.ITX_API_KEY}` } }
);
const { data, meta } = await res.json();
for (const tax of data.taxes) {
console.log(tax.tax_code, tax.parameters);
}
if (meta.unavailable.length) console.warn("Not yet published:", meta.unavailable);Federal, all 50 states and DC
Income tax withholding, unemployment, disability, paid family leave and long-term care where a state has them. The map shows what is published right now — not what we plan to have.
From sign-up to first response in three steps
Create a free account
Your Sandbox key is shown once, right after sign-up. No card, no sales call.
Make a request
Call /v1/rates/lookup from your code, or try it in the playground first.
Upgrade when you ship
Move to a paid plan for production volume, the change feed and historical queries.
Teams that move money on payday
Payroll platforms
Replace spreadsheets and hand-keyed rate tables with an API your engine reads on every run.
HR & PEO software
Onboard employers in new states without researching each agency's publications.
Finance & forecasting
Model employer tax cost with the wage bases and rates that apply to a given date.
Audit & compliance
Show exactly which published rule produced a number, and what the source said at the time.
Start free. Pay as you grow.
Every plan includes every state. You only pay for successful production requests.
Sandbox
Build and test your integration.
- 1K requests / month
- Federal + all 50 states and DC
- 30 requests / minute
- Hard monthly cap
- Change feed
- Historical as-of queries
- Community support
- Uptime SLA
Starter
For payroll products launching in a few states.
- 25K requests / month
- Federal + all 50 states and DC
- 120 requests / minute
- Overage $8 per 1,000
- Change feed
- Historical as-of queries
- Email support
- Uptime SLA
Growth
All jurisdictions, historical as-of queries and the change feed.
- 250K requests / month
- Federal + all 50 states and DC
- 600 requests / minute
- Overage $3 per 1,000
- Change feed
- Historical as-of queries
- Priority email support
- 99.5% uptime SLA
Enterprise
High volume, SLA and dedicated support.
- 2M requests / month
- Federal + all 50 states and DC
- 3,000 requests / minute
- Overage $1 per 1,000
- Change feed
- Historical as-of queries
- Dedicated support
- 99.9% uptime SLA
Questions, answered
Where does the data come from?
Only from official publications: the IRS, the Social Security Administration and each state's revenue and workforce agencies. Every tax in a response links to the documents it came from and the SHA-256 fingerprint of the exact copy we read.
Is AI deciding my tax rates?
No. An AI agent reads the official documents and proposes values, but every value must appear word-for-word in the source, two independent reads must agree, and a human tax reviewer approves each version before it is published. Nothing reaches the API without that approval.
What happens when a rate changes mid-year?
Rules are effective-dated. You ask for the rules in force on a pay date and get exactly those, before and after the change. The change feed tells you what was published or superseded since your last check.
Can I reproduce last quarter's numbers?
Yes. Published versions are never edited, only superseded. On Growth and above, pass as_of to see what the API would have answered at any past moment, which makes audits and amended returns reproducible.
Do you calculate the withholding for a paycheck?
Not today. The API returns the rates, wage bases, brackets and thresholds your payroll engine needs; your engine applies them to wages. Calculation endpoints are on the roadmap.
Is this legal or tax advice?
No. The data is provided to help software apply published rules. You remain responsible for your filings; consult a qualified professional for advice on your situation.
Stop maintaining tax tables by hand
Get a Sandbox key now and make your first request in minutes.