currentStatus object and identify taxpayers with the
same conventions. They’re described once here.
currentStatus
Always present on a response. An object with a status and a badgeGraphicUrl:
badgeGraphicUrl is a publicly hosted SVG you can embed directly to display the status.
Status values
These are the livebadgeGraphicUrl graphics — embed them directly to display the status.
Compliant — No outstanding issues detected. Balances and filings are in good standing.AtRisk — An outstanding balance is owed, but no severe issues. Worth attention.NotCompliant — A serious issue is present, such as unfiled required returns or an active collection threat.DataPending — TaxRock is still gathering the data; onboarding or IRS authorization is in progress. Financial fields are null.NotMonitored — TaxRock is not monitoring a business with that EIN for you. Appears at the top level only, where result is null.Account-wide status
On the client-account lookup, the top-levelcurrentStatus is client-account-wide:
the worst status across the account’s taxpayers — except that a clean-so-far account with
incomplete data reads DataPending rather than Compliant.
Identifying the matched taxpayer
isLookupMatch—trueon the row (intaxpayers[]orpendingTaxpayers[]) whose TIN matched the EIN you looked up.tin— unformatted digits. For businesses it is the raw nine-digit EIN. For individuals it is censored to the last four digits (xxxxx0123).isTinCensored—truewhentinis censored, so you never have to infer the censoring policy fromtype.
Pending taxpayers
pendingTaxpayers[] (client-account lookup only) are taxpayers added to the account but
not yet onboarded. Each has id, name, type, isLookupMatch, tin (null if not
provided yet), and isTinCensored — no status or financial fields.
Errors
A missing or malformedbusinessEin returns 400 with an { error, message } body:
invalid_request—businessEinwas absent or not a string.invalid_ein—businessEindid not contain nine digits (dashes and spaces are ignored).

