You already have an assertion.
Submit one or more supported company-identity claims. Receive verified, corrected or unsupported for each claim, with the observed value and evidence.
POST /v2/claims/verifyUse this page
Get API keyClaim Verification API
Verify submitted company identity claims against available company records. CompanyProof returns a claim-level verdict, the observed value and source evidence. It covers six identity fields; ownership, screening, payment and credit decisions require separate controls.

CompanyProof Sandbox Limited is an incorporated in .
Select an underlined claim to inspect the evidence.The source gives a different date. Return the correction or send it for review.
CHOOSE THE RIGHT CONTRACT
“Business verification” can mean a registry lookup, a company profile or a complete KYB workflow. CompanyProof separates them so your product does not turn an identity match into a broader risk conclusion.
Submit one or more supported company-identity claims. Receive verified, corrected or unsupported for each claim, with the observed value and evidence.
POST /v2/claims/verifyUse this pageResolve the legal entity, then retrieve available identity, officer, ownership, group and financial modules. A returned record is not automatically a claim verdict.
GET /v2/companies/{id}/profileExplore company profiles →Combine entity verification with the ownership, screening, person, payment and risk controls required by your policy. Company registration alone does not approve a counterparty.
Policy + multiple controlsPlan supplier due diligence →01 / BUSINESS IDENTITY VERIFICATION
Business identity verification starts with the correct legal entity. Provide a company name and country, add a registration number to distinguish similar businesses, then compare these six supported fields with the returned record.
incorporation_dateCompare the submitted incorporation date with this source value.
NEED THE WIDER COMPANY PICTURE?
Retrieve officers, shareholders, group structure and financial records where available. Inspect each module’s availability and preserve reporting periods, currency and source context.
Explore the company data API ↗Profile records support further analysis. Automatic claim verdicts cover the six identity fields above.
02 / THE EVIDENCE
A matching name is the beginning of a check. Keep each claim’s outcome separate so your team can see what matched, what changed and what needs attention.
Use the correction or assign a reviewer.
A request status, a claim verdict and your counterparty decision are different things. Preserve all three instead of collapsing them into a single “passed” flag.
| Returned condition | What it establishes | Your application’s next step |
|---|---|---|
verified | The supported claim matches the observed value. | Retain the claim and evidence. Apply your other approval controls separately. |
corrected | The observed value differs from the submitted value. | Keep both values. Apply an agreed correction policy or assign review. |
unsupported | The available record cannot support that claim. | Request more evidence or route the gap for review; do not label the claim false. |
| Request error | A request was rejected or could not complete; this is not a claim verdict. | Inspect the error response and safe-retry rules before retrying. |
stale after monitoring | A confirmed change affects a previously supported value. | Reopen that claim. An unavailable recheck preserves the last successful evidence; it does not itself establish a change. |
Fictional example, not a live lookup. An application submits status “Active”, incorporation date “2021-01-15” and a VAT identifier. The sample record supports “Active”, reports incorporation on “2020-01-15” and returns no VAT value. Keep status as verified, route the corrected date under your policy and leave the VAT claim unsupported. Two usable results do not remove the third claim’s evidence gap or approve the company.
OPERATING MODEL
Verification only scales when corrected and unsupported claims have defined next steps. Model your own volumes and exception assumptions before deciding what to automate and what to review.
Set your own assumptions. The defaults—1,000 checks, three claims and two 5% exception rates—exist only to demonstrate the formula; they are not CompanyProof performance data.
The corrected and unsupported percentages must total 100% or less. Stale outcomes are excluded because they arise after a monitored fact changes.
ILLUSTRATIVE MONTHLY CLAIM OUTCOMES
300 claim outcomes needing policy or review
1,000 checks × 3 claims = 3,000 claim outcomes. Corrected and unsupported outcomes are shown separately because they need different policies.
This models claim outcomes, not unique review cases, API credits, staffing time, approval rates or a compliance decision. Your policy may automate a correction, request evidence or assign a reviewer.
Scope an enterprise evaluation →03 / YOUR WORKFLOW
Use the same company evidence across onboarding, procurement and AI applications. Your team sets the decision rules.
Compare a supplier questionnaire with the legal entity on the contract. Check its name, registration number and status before the review progresses.
Supplier due diligenceException ready
for a reviewer
Find the right entity when an application uses a trading name or a common company name. Compare submitted facts and route discrepancies for review.
Discuss your onboarding flowValidate supported company assertions before they reach a customer or feed an operational decision. Return corrections with the source that supports them.
AI company fact checkingIncorporated in 2021.
Incorporated in 2020[1].
[1] CompanyProof SandboxCompany identity verification supports your decision. Payment instructions, sanctions screening and credit approval require their own controls.
04 / THE INTEGRATION
Send individual assertions or a company answer. Receive the published value, observed value, verdict and evidence together in a structured JSON response.
/v2/claims/verifycurl --request POST \
'https://companyproof.ai/v2/claims/verify' \
--header "Authorization: Bearer $COMPANYPROOF_TEST_KEY" \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: sandbox-verification-001' \
--data '{
"company": {
"name": "CompanyProof Sandbox Limited",
"country": "GB",
"registration_number": "CP000001"
},
"claims": [
{
"field": "status",
"published": "Active"
},
{
"field": "incorporation_date",
"published": "2021-01-15"
}
],
"monitor": false
}'const response = await fetch(
"https://companyproof.ai/v2/claims/verify",
{
method: "POST",
headers: {
Authorization: "Bearer " + process.env.COMPANYPROOF_TEST_KEY,
"Content-Type": "application/json",
"Idempotency-Key": "sandbox-verification-001"
},
body: JSON.stringify({
"company": {
"name": "CompanyProof Sandbox Limited",
"country": "GB",
"registration_number": "CP000001"
},
"claims": [
{
"field": "status",
"published": "Active"
},
{
"field": "incorporation_date",
"published": "2021-01-15"
}
],
"monitor": false
})
}
);
const proof = await response.json();
if (!response.ok) throw new Error(proof.error?.message);
console.log(proof.claims);{
"field": "incorporation_date",
"published": "2021-01-15",
"observed": "2020-01-15",
"verdict": "corrected",
"explanation": "The published value conflicts with the sample company record.",
"evidence": {
"source_name": "CompanyProof Sandbox",
"source_url": "https://companyproof.ai/docs#environments",
"source_updated_at": null,
"source_record_id": "sandbox_company_001",
"retrieved_at": "2026-09-08T09:00:00.000Z"
}
}POST /v2/companies/searchFind candidates in the right country and reuse the selected company ID.
GET THE FULL RECORDGET /v2/companies/{id}/profileBring identity and available company modules into one profile.
CONNECT AN AI AGENT/v2/mcpAccess CompanyProof through the Model Context Protocol.
05 / FROM EVALUATION TO PRODUCTION
Evaluate the countries, entity types and fields your product actually uses. Include difficult cases so your team can assess what happens when a check cannot be completed.
Create an account and test key. Use the documented sandbox company to exercise a match and a correction before connecting live data.
Test and live environments ↗Sample active and inactive companies, similar names and missing records. Measure correct matches and required-field completion.
Countries and field availability ↗Keep API keys on your server. Use an idempotency key for retries, and handle rate limits, missing entities and unavailable sources explicitly.
Authentication and API rules ↗Retain each proof and connect eligible live claims to monitoring. Use stale-claim events to reopen affected checks when their evidence changes.
Monitoring and webhooks ↗YOUR COMPANIES. YOUR REQUIRED FIELDS.
Start with a company check, or share your countries, expected volume and representative cases for an enterprise evaluation.
FREQUENTLY ASKED QUESTIONS
It compares submitted company claims with available company records and returns a verdict, a correction where needed, and supporting evidence. Use the Company Data API when you need to retrieve a company profile.
Company verification is one part of a Know Your Business process. A complete KYB workflow may also require ownership review, screening, identity checks and ongoing risk assessment.
The deterministic contract supports registered name, registration number, status, incorporation date, VAT or tax ID and legal form. See the documentation for the current schema.
Yes. Add the country and, where relevant, a state or province. A registration number helps distinguish companies with similar names.
No. Registration establishes an entity record. Confirm the beneficiary, payment instructions and any other risk controls before authorising a payment.
Yes. Use the text checker or the documented verification contract. The result distinguishes supported assertions, contradictions and information that remains unverified.
No. Availability varies by registry, field and access. Test the countries and modules your workflow needs before selecting a plan.
Company Profile REST can return extended modules where available. These records are separate from the deterministic company-identity verification fields.
Eligible live claims can be connected to monitoring. A changed or no-longer-returned supporting value can trigger a stale-claim event.
Review the API documentation, create an account and API key, test the documented sandbox fixture, then validate live coverage and credit usage for your workflow.