Last updated

Verify

Verify is an exclusive add-on to Creditsafe's company credit reports, designed to assist businesses in making smarter, quicker, and more informed credit decisions. For new or small companies that lack a detailed financial footprint, Verify offers unparalleled insights by screening company directors and the individuals behind businesses for their personal financial stability and identity.

Using Verify, you can confidently assess a company's leadership, leveraging trusted public datasets that highlight potential financial concerns—such as CCJs or Insolvencies—and confirm that directors or individuals reside at an address on the Electoral Roll.


This page provides comprehensive guidance on using the Verify service to perform enhanced due diligence and verification checks on both business directors and individuals. The documentation is structured around two main process flows, each representing a different path to access verification data, as illustrated in the flow diagrams below.

There are two primary ways to use the Verify service:

  • Process Flow 1: Using Verify Via Company Search
    This process begins with a company search using a Connect ID from the Creditsafe database. It allows you to determine if Verify data is available for the directors of that company. If data is available, you can then use the Verify endpoints to acquire summary or full verification information on those directors.

  • Process Flow 2: Using Verify Via Direct Individual or Director Search
    This process offers two options:

    1. Search for an individual directly using their personal details and retrieve the verification information in the response.
    2. Use the Creditsafe director search tooling to find the relevant person ID number, which can then be passed to the Verify tool. This enables you to choose between retrieving summary or full verification data for that individual.

Both process flows ultimately allow you to access either summary or full verification data, depending on your requirements.

The following sections and diagrams will guide you through each process step-by-step, including required parameters, example requests, and example responses.


Flow Diagrams

Verify Data Available
Verify Data Not Available
Acquire Director Id
Stage-2
Return Summary Information
Return Full Information
Stage-1
Verify Indicator
Connect Company Search
Authenticate
Company Report
STOP
Authenticate
Execute Individual Search
Connect Director Search
Return Summary Information
Return Detailed Information

Verify Reason Codes

Search DescriptionENUM Value
Account ManagementAM
Address VerificationAV
Business SearchBS
Checking Credit ApplicationCA
Debt CollectionDC
Directors SearchDS
Employee CheckEC
General InsuranceGI
Quotation SearchQS
Tenant VetTV
Government CheckGC

1. Authenticate

Before accessing any endpoints, you must authenticate to obtain a valid token. This ensures you have the necessary permissions.

Example Request

POST /authenticate

Process 1


Use the parameters obtained from the Search Criteria endpoint to search for the required company.

Example Request

GET /companies?country=GB&name=creditsafe

Example Response

{
    "companies": [
        {
            "id": "GB-0-12297233",
            "country": "GB",
            "regNo": "12297233",
            "safeNo": "UK17866117",
            "name": "CREDITSAFE SERVICES LIMITED",
            "address": {
                "simpleValue": "CASPIAN POINT ONE PIERHEAD STREET, CARDIFF, SOUTH GLAMORGAN, CF10 4PH",
                "street": "PIERHEAD STREET",
                "city": "CARDIFF",
                "postCode": "CF10 4PH"
            }
        }
    ]
}

3. Verify Indicator

This endpoint allows you to check if Verify data is available for a given company ID. If data is available, you can proceed to retrieve the company report.

Example Request

GET /localSolutions/GB/verify/company/{id}?reasonForSearch=AM

Example Response

{
    "companyId": "GB-0-12297233",
    "verifyMatch": true
}

Outcomes

  1. If no Verify data is available, the process ends here.
  2. If Verify data is available, continue to the next step.

4. Company Report

The company report provides the Director Id, which is required for subsequent endpoints.

Example Request

GET /companies/{connectId}

Example Response

{
  "correlationId": "string",
  "failedSections": [
    "CompanySummary"
  ],
  "report": {
    "companyId": "string",
    "language": "OM",
    "companySummary": { ... },
    "companyIdentification": { ... },
    "creditScore": { ... },
    "contactInformation": { ... },
    "indicators": [ ... ],
    "shareCapitalStructure": { ... },
    "directors": {
      "currentDirectors": [
        {
          "id": "string",
          "idType": "Other",
          "name": "string",
          "title": "string",
          "firstNames": "string",
          "firstName": "string",
          "middleName": "string",
          "surname": "string",
          "address": { ... },
          "gender": "Unknown",
          "birthName": "string",
          "dateOfBirth": "2019-08-24T14:15:22Z",
          "placeOfBirth": "string",
          "nationality": "string",
          "countryOfResidence": "string",
          "country": "AF",
          "directorType": "Other",
          "hasNegativeInfo": true,
          "signingAuthority": true,
          "positions": [ ... ],
          "additionalData": {}
        }
      ]
    }
  }
}

5. Return Summary Information

This endpoint provides a summary of the available verification data for an individual, using a series of true/false flags.

Example Request

GET /localSolutions/GB/verify/individual/{id}/summary?reasonForSearch=AM

Example Response

{
    "verifyMatch": true,
    "flags": {
        "ccjMatch": false,
        "electoralRegisterMatch": true,
        "deceasedRegisterMatch": false,
        "insolvencyMatch": false
    }
}

6. Return Full Information

The full information endpoint returns detailed verification data. The structure of the response may vary depending on your service agreement. Please refer to the API documentation for a complete breakdown of the response objects.

Example Request

GET /localSolutions/GB/verify/individual/{id}/full?reasonForSearch=AM

Example Response

{
    "verifyMatch": true,
    "flags": {
        "ccjMatch": true,
        "electoralRegisterMatch": true,
        "deceasedRegisterMatch": true,
        "insolvencyMatch": true
    },
    "countyCourtJudgments": [
        {
            "name": "Mr. Patrice Jones",
            "amount": {
                "currency": "GBP",
                "value": 1569
            },
            "date": "2023-05-25",
            "paidDate": null,
            "status": "Administration Order",
            "caseNumber": "CS009082",
            "category": "Administrative Order",
            "fullAddress": {
                "simpleValue": null,
                "postCode": null
            },
            "partialAddress": {
                "simpleValue": "CF83"
            }
        }
    ],
    "electoralRolls": [
        {
            "firstName": "Patrice",
            "middleName": "A",
            "lastName": "Jones",
            "canvasYear": 2024,
            "fullAddress": {
                "simpleValue": null,
                "postCode": null
            },
            "partialAddress": {
                "simpleValue": "CF83"
            }
        }
    ],
    "deceased": [
        {
            "uniqueReferenceNumber": "6948406",
            "dateOfDeath": "2024-05-17",
            "firstName": "Patrice",
            "middleName": "A",
            "lastName": "Jones",
            "fullAddress": {
                "simpleValue": null,
                "postCode": null
            },
            "partialAddress": {
                "simpleValue": "CF83"
            }
        }
    ],
    "insolvencies": [
        {
            "individualDetails": {
                "title": "Mr.",
                "firstName": "Patrice",
                "middleName": "A",
                "lastName": "Jones",
                "occupation": "Director",
                "fullAddress": {
                    "simpleValue": null,
                    "postCode": null
                },
                "partialAddress": {
                    "simpleValue": "CF83"
                }
            },
            "caseDetails": {
                "caseNumber": "703082103",
                "caseType": "Bankruptcy",
                "caseStatus": "Annulled",
                "court": "High Court Of Justice",
                "courtNumber": "0000774",
                "startDate": "1983-04-27",
                "dischargeDate": "2024-08-01"
            }
        }
    ],
    "requestDetails": {
        "title": "",
        "firstName": "Patrice",
        "middleName": "",
        "lastName": "Jones",
        "dateOfBirth": "1987-02-02",
        "buildingNo": "",
        "buildingName": "",
        "subBuilding": "",
        "street": "",
        "town": "",
        "county": "",
        "postcode": "CF83",
        "addressLine": "",
        "reasonForSearch": "AM"
    }
}

Note: For a full breakdown of all response objects and fields, please refer to the official API documentation or contact your product manager.


Process 2


This section describes how to use the Verify service to search for individuals directly and company directors. These endpoints allow you to retrieve summary and detailed verification information for a person, supporting a range of compliance and due diligence use cases.

The Execute Individual Search endpoint enables you to search for an individual using personal details. This is typically the first step in the verification process for individuals.

Endpoint:

GET /localSolutions/GB/verify/individual/directReport

Required Query Parameters:

ParameterTypeDescription
firstNamestringThe individual's first name.
lastNamestringThe individual's last name.
dateOfBirthstringDate of birth in the format YYYY-MM-DD (e.g., "1987-02-02").
postCodestringThe individual's postcode.
addressstringThe individual's address.
reasonForSearchstringThe reason code for the verification search.

Submit the required personal information as query parameters to retrieve a list of potential matches. The response will include full information.

Example Request

GET /localSolutions/GB/verify/individual/directReport?firstName=Patrice&lastName=Jones&dateOfBirth=1980-01-01&postCode=CF83&address=123+Main+Street&reasonForSearch=AM

Example Response

{
    "verifyMatch": true,
    "flags": {
        "ccjMatch": true,
        "electoralRegisterMatch": true,
        "deceasedRegisterMatch": true,
        "insolvencyMatch": true
    },
    "countyCourtJudgments": [
        {
            "name": "Mr. Patrice Jones",
            "amount": {
                "currency": "GBP",
                "value": 1569
            },
            "date": "2023-05-25",
            "paidDate": null,
            "status": "Administration Order",
            "caseNumber": "CS009082",
            "category": "Administrative Order",
            "fullAddress": {
                "simpleValue": null,
                "postCode": null
            },
            "partialAddress": {
                "simpleValue": "CF83"
            }
        }
    ],
    "electoralRolls": [
        {
            "firstName": "Patrice",
            "middleName": "A",
            "lastName": "Jones",
            "canvasYear": 2024,
            "fullAddress": {
                "simpleValue": null,
                "postCode": null
            },
            "partialAddress": {
                "simpleValue": "CF83"
            }
        }
    ],
    "deceased": [
        {
            "uniqueReferenceNumber": "6948406",
            "dateOfDeath": "2024-05-17",
            "firstName": "Patrice",
            "middleName": "A",
            "lastName": "Jones",
            "fullAddress": {
                "simpleValue": null,
                "postCode": null
            },
            "partialAddress": {
                "simpleValue": "CF83"
            }
        }
    ],
    "insolvencies": [
        {
            "individualDetails": {
                "title": "Mr.",
                "firstName": "Patrice",
                "middleName": "A",
                "lastName": "Jones",
                "occupation": "Director",
                "fullAddress": {
                    "simpleValue": null,
                    "postCode": null
                },
                "partialAddress": {
                    "simpleValue": "CF83"
                }
            },
            "caseDetails": {
                "caseNumber": "703082103",
                "caseType": "Bankruptcy",
                "caseStatus": "Annulled",
                "court": "High Court Of Justice",
                "courtNumber": "0000774",
                "startDate": "1983-04-27",
                "dischargeDate": "2024-08-01"
            }
        }
    ],
    "requestDetails": {
        "title": "",
        "firstName": "Patrice",
        "middleName": "",
        "lastName": "Jones",
        "dateOfBirth": "1987-02-02",
        "buildingNo": "",
        "buildingName": "",
        "subBuilding": "",
        "street": "",
        "town": "",
        "county": "",
        "postcode": "CF83",
        "addressLine": "",
        "reasonForSearch": "AM"
    }
}

The Director Search endpoint allows you to search for company directors by personal or company-related details. This is useful for verifying the identity and background of individuals holding directorships.

Example Request

GET /people?countries=GB&firstName=ExampleDirector

Description:
The countries parameter is required and should be set to GB for UK director searches. For best results, you should also provide additional parameters such as firstName, lastName, and dateOfBirth to refine your search and improve match accuracy. For a full list of available parameters and more detailed guidance, please refer to the People and Director Search documentation. (A link will be provided here.)

Example Response

These examples are only a snippet of the full responses, it is to demonstrate that a single response will generally respond with a higher number of available properties.

{
    "correlationId": "76ffa40b-95cc-485d-9086-f52397015f22",
    "totalSize": 23,
    "directors": [
        {
            "peopleId": "GB-1234567",
            "firstName": "JOE",
            "lastName": "BLOGS",
            "country": "GB",
            "company": {
                "id": "GB-1-1234567",
                "companyName": "CREDITSAFE LTD",
                "companyNumber": "1234567",
                "safeNumber": "UK1234567",
                "type": "Ltd"
            },
            "address": {
                "simpleValue": "CASPIAN POINT ONE PIERHEAD STREET, CARDIFF, SOUTH GLAMORGAN, CF10 4PH",
                "street": "PIERHEAD STREET",
                "city": "CARDIFF",
                "postCode": "CF10 4PH",
                "houseNo": "34"
            },
            "status": "Active",
            "dateOfLatestChange": "2024-09-23T11:39:13.000Z",
            "localDirectorNumber": "UK1234567",
            "score": 15.855064,
            "numEmployeesfrom": 2,
            "numEmployeesTo": 2,
            "taxCode": "GB-1234567"
        },
    ]
}

Once you have identified the correct individual or director using these endpoints, you can proceed using the peopleId to retrieve summary information or full verification information using the relevant Verify endpoints described above.

Note: For a complete list of available query parameters and response fields, please refer to the official API documentation.