
What it does
Verify TIN checks whether a TIN (EIN or SSN) matches the name on file at the IRS. It returns one of three results: matched, not matched, or pending (IRS unavailable). This is a single-purpose check. It does not run registry lookups, risk assessment, or any other verification step. If you need the full suite of business verification checks, use Verify a Business — which includes TIN verification as part of the workflow.When to use it
Use the standalone TIN endpoint when you need to validate a TIN outside of a full verification flow:- 1099 processing: Confirm TINs before filing to avoid IRS B-notices.
- Pre-verification validation: Check a TIN before running a full business verification.
- Bulk TIN hygiene: Validate TINs across your existing portfolio.
- SSN verification: Validate an individual’s SSN and name against IRS records, independent of a person verification.
Request
POST /v1/tin/verification
Example request
Bash
Response
Response states
Completed: The IRS returned a definitive answer. Checkmatched for the result.
JSON
matched is null. Check unavailable_reason and retry later.
JSON
Unavailable reasons
Error codes
Handling IRS downtime
The IRS TIN matching service has scheduled and unscheduled downtime. When the service is unavailable, the endpoint returnsstatus: pending with matched: null instead of failing. This lets you distinguish between “TIN didn’t match” (matched: false) and “we couldn’t check” (matched: null).
Build your integration to handle the pending state: store the verification_id, and retry when your system is ready. Do not treat matched: null as a match or a non-match.
Verify TIN vs full business verification
For the full parameter reference, see the API Reference.

