Denmark eKYC verification matches submitted individual data against Denmark's official civil register, credit, and telco records. See the eKYC API Reference for common response semantics that apply across all sources.
Available sources
| Source | API source string | Description |
|---|---|---|
| Denmark Civil Register + Credit + Telco | DK_CIVIL_REG_CREDIT_TELCO |
Verifies submitted data against Denmark's official civil register, consumer credit, and telco records. |
Denmark Civil Register + Credit + Telco
Request parameters
| Parameter | Required | Description |
|---|---|---|
source |
Mandatory | Must be DK_CIVIL_REG_CREDIT_TELCO. |
country |
Mandatory | Must be DK. |
firstName |
Mandatory | First name of the individual. Must not contain digits. |
surName |
Mandatory | Last name of the individual. Must not contain digits. |
phone |
Mandatory | Denmark phone number. See format note below. |
street |
Optional | Full street including house number. |
city |
Optional | City of the individual's address (for example, Copenhagen). |
state |
Optional | Accepted in the request but not currently used for matching by this source. |
postalCode |
Optional | Denmark postal code (postnummer). See format note below. |
dateOfBirth |
Optional | Format: yyyy-mm-dd. |
Sample request
{
"plugins": ["kyc"], //required field
"source": "DK_CIVIL_REG_CREDIT_TELCO", //required field
"firstName": "Anna", //required field
"surName": "Nielsen", //required field
"street": "Norrebrogade 12",
"city": "Copenhagen",
"state": "Capital Region",
"postalCode": "2200",
"country": "DK", //required field
"dateOfBirth": "1991-08-02",
"phone": "12345678" //required field
}
Response fields
Denmark Civil Register + Credit + Telco anchors verification on individual name, phone number, date of birth, and address. 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. |
lastNameMatch |
exact, fuzzy, nomatch | Matches last name submitted against the value in 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. |
phoneMatch |
exact, fuzzy, nomatch | Matches phone submitted against the value in the source of truth. |
dobMatch |
exact, fuzzy, nomatch, nodata | Matches date of birth submitted against the value in the source of truth. |
streetMatch |
exact, fuzzy, nomatch, nodata | Matches street submitted against the value in the source of truth. |
cityMatch |
exact, fuzzy, nomatch, nodata | Matches city submitted against the value in the source of truth. |
stateMatch |
exact, fuzzy, nomatch, nodata | Matches state submitted against the value in the source of truth. |
postalCodeMatch |
exact, fuzzy, nomatch, nodata | Matches postal code submitted against the value in the source of truth. |
fullAddressMatch |
exact, fuzzy, nomatch, nodata | Composite of streetMatch, cityMatch, stateMatch, and postalCodeMatch. See below for calculation logic. |
overallLevel |
low, medium, high | Overall risk level. See below for calculation logic. |
fullAddressMatch calculation
exactwhenstreetMatchis exact, andcityMatchis exact or nodata, andstateMatchis exact or nodata, andpostalCodeMatchis exact or nodata.nomatchwhenstreetMatchis nomatch.nodatawhenstreetMatch,cityMatch,stateMatch, andpostalCodeMatchare all nodata.fuzzyfor any other combination.
overallLevel calculation
overallLevel is calculated based on the risk associated with the submitted full name, phone number, and date of birth:
lowwhenfullNameMatchis exact, andphoneMatchordobMatchis exact.highwhenfullNameMatchis nomatch, and bothphoneMatchanddobMatchare nomatch.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": "lastNameMatch", "status": "exact" },
{ "key": "fullNameMatch", "status": "exact" },
{ "key": "phoneMatch", "status": "exact" },
{ "key": "dobMatch", "status": "exact" },
{ "key": "streetMatch", "status": "exact" },
{ "key": "cityMatch", "status": "exact" },
{ "key": "stateMatch", "status": "exact" },
{ "key": "postalCodeMatch", "status": "exact" },
{ "key": "fullAddressMatch", "status": "exact" },
{ "key": "overallLevel", "status": "low" }
]
}