Skip to main content
Verify that a company’s legal name and Taxpayer Identification Number (EIN, or SSN for sole proprietors) match IRS records via IRS TIN matching.

Step 1: Create an applicant

Create an applicant to associate the verification with.
export API_KEY=<YOUR_API_KEY>

curl -H "ds-api-token: $API_KEY" \
  -H "Content-Type: application/json" \
  -X POST "https://api.dataspike.io/api/v3/applicants" \
  --data '{"external_id": "company-456"}'
Response:
{
  "id": "01827ed4-c928-7a3c-9a30-7ab7cc169d11"
}

Step 2: Submit TIN verification request

Provide the TIN and the legal business name. The TIN may contain dashes (they are ignored); it must contain 9 digits.
APPLICANT_ID="01827ed4-c928-7a3c-9a30-7ab7cc169d11"

curl -H "ds-api-token: $API_KEY" \
  -H "Content-Type: application/json" \
  -X POST "https://api.dataspike.io/api/v4/kyb/$APPLICANT_ID/tin-verification" \
  --data '{
    "tin": "36-2382580",
    "company_name": "DEERE & COMPANY"
  }'
Response (HTTP 202):
{
  "request_id": "019c9e79-4d64-73e1-9f30-5374f0f57975",
  "status": "initial"
}

Request body

FieldTypeRequiredDescription
tinstringYesTaxpayer Identification Number (EIN or SSN). Dashes are ignored; must contain 9 digits.
company_namestringYesLegal business name to match against the TIN.

Step 3: Poll for the result

The check typically completes within a few seconds. Poll the result endpoint until the status changes from initial.
REQUEST_ID="019c9e79-4d64-73e1-9f30-5374f0f57975"

curl -H "ds-api-token: $API_KEY" \
  "https://api.dataspike.io/api/v4/kyb/result/$REQUEST_ID"
Example response (verified):
{
  "request_id": "019c9e79-4d64-73e1-9f30-5374f0f57975",
  "status": "verified",
  "verification_type": "tin_verification",
  "response_data": {
    "result": {
      "name": "DEERE & COMPANY",
      "tin": "362382580",
      "status": "TIN Matched",
      "irs_code": 7,
      "irs_reason": "TIN and Name combination matches IRS EIN records"
    }
  },
  "created_at": "2026-02-27T09:41:15.822681Z",
  "completed_at": "2026-02-27T09:41:18.583502Z"
}

Response data

The response_data.result object contains the IRS TIN-matching outcome:
FieldDescription
nameBusiness name that was submitted
tinTIN that was submitted (digits only)
statusMatch outcome, e.g. TIN Matched or Did Not Match
irs_codeIRS TIN-matching code (e.g. 7 = name/TIN matches IRS EIN records)
irs_reasonHuman-readable explanation of the IRS code

Result statuses

StatusMeaning
verifiedThe name and TIN match IRS records
not_verifiedThe name and TIN do not match
failedThe TIN could not be verified (invalid TIN or an error occurred)