United Kingdom eKYC verification matches submitted individual data against UK sources of truth. See the eKYC API Reference for common response semantics that apply across all sources.
Available sources
| Source | API source string | Description |
|---|---|---|
| UK VOTER REGISTER | UK_Voter_Register |
Verifies submitted data against the United Kingdom's Voter Register. |
| UK 2+2 VERIFICATION | GB_2X2 |
Verifies submitted data against UK civil and voter register and credit records. |
UK VOTER REGISTER
Request parameters
| Parameter | Required | Description |
|---|---|---|
source |
Mandatory | Must be UK_Voter_Register. |
country |
Mandatory | Must be GB. |
firstName |
Mandatory | First name of the individual. |
middleName |
Optional | Middle name of the individual. |
surName |
Mandatory | Last name of the individual. |
street |
Optional | Street name and house number. |
city |
Optional | City of the individual's address. |
postalCode |
Optional | Postal code. Five to seven characters, letters and digits only, no special characters. |
dateOfBirth |
Optional | Format: yyyy-mm-dd. |
phone |
Optional | Phone number. Ten or eleven digits, most commonly eleven. |
gender |
Optional | Accepted values are M or F. |
Response fields
UK VOTER REGISTER anchors verification on the source-of-truth register. See the eKYC API Reference for common match field definitions and status values.
| Field | Statuses | Description |
|---|---|---|
firstNameMatch |
exact, fuzzy, nomatch |
Matches first name submitted against the value in the source of truth. |
middleNameMatch |
exact, fuzzy, nomatch, unknown |
Matches middle name submitted against the value in the source of truth. |
lastNameMatch |
exact, fuzzy, nomatch |
Matches last name submitted against the value in the source of truth. |
fullNameMatch |
exact, fuzzy, nomatch |
Matches full name submitted against the value in the source of truth. |
dobMatch |
exact, fuzzy, nomatch, unknown |
Matches date of birth submitted against the value in the source of truth. |
genderMatch |
exact, fuzzy, nomatch, unknown |
Matches gender submitted against the value in the source of truth. |
streetMatch |
exact, fuzzy, nomatch, unknown |
Matches street submitted against the value in the source of truth. |
cityMatch |
exact, fuzzy, nomatch, unknown |
Matches city submitted against the value in the source of truth. |
zipcodeMatch |
exact, nomatch, unknown |
Matches postal code submitted against the value in the source of truth. |
addressMatch |
exact, fuzzy, nomatch |
Matches full address submitted against the value in the source of truth. |
phoneMatch |
exact, fuzzy, nomatch, unknown |
Matches phone submitted against the value in the source of truth. |
overallLevel |
low, medium, high |
Overall risk level. See below for calculation logic. |
overallLevel calculation
overallLevel is calculated based on the risk associated with the submitted full name and address:
lowwhenfullNameMatchis a match AND (addressMatchis a match ORaddressMatchisfuzzy).highwhenfullNameMatchandaddressMatchare bothnomatch.mediumfor all other combinations.
Contact your Incode representative to customize the overallLevel calculation for your use case.
Sample response
{
"kyc": [
{ "key": "firstNameMatch", "status": "exact" },
{ "key": "middleNameMatch", "status": "exact" },
{ "key": "lastNameMatch", "status": "fuzzy" },
{ "key": "fullNameMatch", "status": "fuzzy" },
{ "key": "dobMatch", "status": "exact" },
{ "key": "genderMatch", "status": "exact" },
{ "key": "phoneMatch", "status": "exact" },
{ "key": "streetMatch", "status": "exact" },
{ "key": "cityMatch", "status": "exact" },
{ "key": "zipcodeMatch", "status": "exact" },
{ "key": "addressMatch", "status": "exact" },
{ "key": "overallLevel", "status": "low" }
]
}
GB 2x2
Request parameters
| Parameter | Required | Description |
|---|---|---|
country |
Mandatory | Must be GB. |
firstName |
Mandatory | First name of the individual. Must not contain digits. |
surName |
Mandatory | Last name of the individual. Must not contain digits. |
street |
Mandatory | Street name. |
houseNo |
Mandatory | House or building number. |
city |
Mandatory | City of the individual's address (for example, London). |
state |
Mandatory | County or region (for example, Greater London). |
postalCode |
Mandatory | UK postal code. See format note below. |
dateOfBirth |
Mandatory | Format: yyyy-mm-dd. |
Info
postalCode must be 5–7 alphanumeric characters, optionally with a single space separating the outward and inward parts (5–8 characters including the space). For example, NW1 6XE or NW16XE.
Sample request
{
"plugins": ["kyc"], //required field
"firstName": "John", //required field
"surName": "Smith", //required field
"street": "Baker Street", //required field
"houseNo": "221B", //required field
"city": "London", //required field
"state": "Greater London", //required field
"postalCode": "NW1 6XE", //required field
"country": "GB", //required field
"dateOfBirth": "1991-08-02" //required field
}
Response fields
GB_2X2 anchors verification on individual name, date of birth, and address elements. See the eKYC API Reference for common match field definitions and status values.
| Field | Statuses | Description |
|---|---|---|
firstNameMatch |
exact, fuzzy, nomatch |
Matches submitted first name against the source of truth. |
lastNameMatch |
exact, fuzzy, nomatch |
Matches submitted last name against the source of truth. |
fullNameMatch |
exact, fuzzy, nomatch |
Composite of firstNameMatch and lastNameMatch. exact if both match; nomatch if either does not match; otherwise fuzzy. |
dobMatch |
exact, fuzzy, nomatch, nodata |
Matches submitted date of birth against the source of truth. |
streetMatch |
exact, fuzzy, nomatch, nodata |
Matches submitted street against the source of truth. |
houseNoMatch |
exact, fuzzy, nomatch, nodata |
Matches submitted house number against the source of truth. |
streetAddressMatch |
exact, fuzzy, nomatch, nodata |
Composite of streetMatch and houseNoMatch. exact if both match; nomatch if either does not match; nodata if both have no data; otherwise fuzzy. |
cityMatch |
exact, fuzzy, nomatch, nodata |
Matches submitted city against the source of truth. |
stateMatch |
exact, fuzzy, nomatch, nodata |
Matches submitted state/county against the source of truth. |
postalCodeMatch |
exact, fuzzy, nomatch, nodata |
Matches submitted postal code against the source of truth. |
fullAddressMatch |
exact, fuzzy, nomatch, nodata |
Composite of streetAddressMatch, cityMatch, and postalCodeMatch. exact if all match (or have no data where applicable); nomatch if all three do not match; nodata if all three have no data; otherwise fuzzy. |
overallLevel |
low, medium, high |
Overall risk level of the submitted attributes. low if fullNameMatch and dobMatch are exact and fullAddressMatch is exact or fuzzy; high if fullNameMatch or dobMatch does not match and fullAddressMatch does not match; otherwise medium. |
Sample response
{
"kyc": [
{ "key": "firstNameMatch", "status": "exact" },
{ "key": "lastNameMatch", "status": "exact" },
{ "key": "fullNameMatch", "status": "exact" },
{ "key": "dobMatch", "status": "exact" },
{ "key": "streetMatch", "status": "exact" },
{ "key": "houseNoMatch", "status": "exact" },
{ "key": "streetAddressMatch", "status": "exact" },
{ "key": "cityMatch", "status": "exact" },
{ "key": "postalCodeMatch", "status": "exact" },
{ "key": "fullAddressMatch", "status": "exact" },
{ "key": "overallLevel", "status": "low" }
]
}