🇩🇪 Germany eKYB

Earlier in our docs is an overview of our Know Your Business here. Now, this page is focused specifically on eKYB in Germany (DE). eKYB in DE leverages the government sources of truth to validate the legitimacy of businesses, including their taxID (either Vat No or Reg No), business name, business address, along with UBOs.

Integration

User input flow

eKYB module configuration

eKYB user input flow example

Module Configuration

Module configuration gives various options to specify different KYB criteria you would like to check (eg. Business name, Business Address, and Business taxID).

eKYB module configuration

KYB module configuration

Direct API Approach

All module configurations and user data can be forwarded directly in the request for performing an KYB search. This will override existing configuration and data collected about the user.

📘

API Authentication

All endpoints require authentication headers to be specified as stated in Incode API Documentation

POST /omni/externalVerification/ekyb

This endpoint performs an KYB check for the business specified. Note: Endpoint can have empty body {} and in that case information will be pulled from module configuration and session details.

  • plugins: must be ["ekyb"]: (mandatory)
  • businessName:: (mandatory) String. Name of the business.
  • street: (optional) String. Street name of the business.
  • houseNo: (optional) String. Building or house number on the street.
  • addressLine2: (optional) String. Address line 2 of the business. (eg. apartment or unit number)
  • city: (optional) String. City of the business of the business address.
  • state: (optional) String. State of the business of the business address
  • postalCode: (optional) String. postalCode formatted based on per-country postalCode basis. (DE has 5 digits)
  • country: (mandatory) String. Two letter Alpha-2 country code. (Must be DE)
  • uboNames: (optional) String. Full legal name(s) of Unique Beneficial owners to check against list of legal business associations
  • directors: (optional) String. Full legal name(s) of directors to check against list of legal business associations
  • taxId: (mandatory) String. Tax ID of the business (VatNo or RegNo)

✍️

Business Tax ID in DE

Business Tax ID supports either registration number or VAT. Business Tax ID format 10 or 11 digits or VAT number is DE followed by 9 digits


REQUEST FORMAT EXAMPLE
{
  "plugins" : ["ekyb"], //required field
  "businessName" : "SOUTHAMPTON FOOTBALL CLUB LIMITED", //required field
  "street" : "S STADIUM ST MARY Kemp House",
  "houseNo" : "",
  "addressLine2" : "BRITANNIA ROAD",
  "city" : "SOUTHAMPTON",
  "state" : "",
  "postalCode" : "33155",
  "country" : "DE", //required field
  "taxId" : "XXXXXXXXX", //required field
  "uboNames" : ["ST MARY'S FOOTBALL GROUP LTD", "Sarah Smith" ],
  "directors" : ["Andrew Martin", "Sarah Schrader" ]
    
}

Response

All module configurations and user data can be forwarded directly in the request for performing an eKYB search. This will override existing configuration and data collected about the user.

📘

API Authentication

All endpoints require authentication headers to be specified as stated in Incode API Documentation

RESPONSE EXAMPLE

"kyb": [
    {
      "key": "name",
      "sub_label": "Verified"
    },
    {
      "key": "tin",
      "sub_label": "Verified",
      "reasonCodes": [
      	"REGNO"
      ]
    },
    {
      "key": "address_verification",
      "sub_label": "Verified"
    },
    {
      "key": "cityMatch",
      "sub_label": "Verified"
    },
    {
      "key": "postalCodeMatch",
      "sub_label": "Verified"
    },
    {
      "key": "registrationStatus",
      "sub_label": "Active"
    },
    {
      "key": "ubo_name_match",
      "sub_label": "Verified",
      "uboName_input": "Christian Salazar"
    },
    {
      "key": "ubo_name_match",
      "sub_label": "Unverified",
      "uboName_input": "Sarah Smith"
    },
    {
      "key": "directors_name_match",
      "sub_label": "Verified",
      "directorsName_input": "Andrew Martin"
    },
    {
      "key": "directors_name_match",
      "sub_label": "Unverified",
      "directorsName_input": "Sarah Schrader"
    }
}

Please refer to error response to see conventional HTTP response codes to indicate the success or failure of an API request.

Custom 400 error messages if businessName, taxId, or country is “ “ or null:

message: businessName, taxId, and country are minimum required fields.

BR API KeyStatusDefinition
nameVerified, Approximate Match, UnverifiedSubmitted business name is verified, approximate match, or unverified against the business name associated with the business Tax ID in the government database.
tinVerified, UnverifiedSubmitted Tax ID is found or not found in the government database.
address_verificationVerified, Approximate Match, UnverifiedSubmitted address is verified, approximate match, or unverified against the address associated with the business Tax ID in the government database.
cityMatchVerified, Approximate Match, UnverifiedSubmitted city is verified, approximate match, or unverified against the address associated with the business taxID in the government database.
registrationStatusActive, InactiveSubmitted business is active or inactive

Learning more about Approximate Match : Approximate Match is generated through Incode's proprietary fuzzy matching algorithm. If approximate match is returned, the algorithm has identified a similar match with the string submitted in relation to the string stored in the government source of truth for a particular field. Approximate Match is returned when exact matches are not possible due to misspellings, typographical errors, or slight variations in input data.

Single Session Dashboard Results

They are available on Single Session view under Business tab

eKYB single session dashboard results

eKYB results