eKYB Prefill in Greece leverages Greece's source of truth to automatically retrieve and populate business information based on a company's AFM or GEMI number, including the business name, entity type, registration status, registration date, credit rating, and other corporate details, without requiring manual input from the user.
Source
| Country | Source | Description |
|---|---|---|
| Greece | GR_KYB_PREFILL |
Returns matching Greek business details from Greece's source of truth for pre-fill. |
Direct API approach
For general integration notes and shared response semantics, see the eKYB Prefill API Reference.
All module configurations and user data can be forwarded directly in the request for performing a Prefill lookup. This overrides existing configuration and data collected about the user.
Endpoint
POST /omni/externalVerification/ekyb-prefill
Request parameters
| Parameter | Required | Description |
|---|---|---|
plugins |
Mandatory | String array. Must be ["ekyb-prefill"]. Specifies the Prefill flow. |
source |
Mandatory | String. Must be GR_KYB_PREFILL. Identifies the Prefill source. |
country |
Mandatory | String. Two-letter Alpha-2 country code. Must be GR. |
taxId |
Mandatory | String. AFM or GEMI number. See Tax ID formats for details. |
businessName |
Optional | String. Registered business name, used to verify the match against the source of truth. |
address |
Optional | String. Business address, used to verify the match against the source of truth. |
Tax ID formats
Greece supports two business identifier formats as search input. Requests with an invalid format return a 400 error.
| Entity Type | Format |
|---|---|
| AFM (Arithmos Forologikou Mitroou) | 9 numeric digits (e.g. 801725938). Also accepted with the EL VAT prefix (e.g. EL801725938) — the prefix is stripped before lookup. |
| GEMI number (General Commercial Registry number) | 12 numeric digits |
Sample request
{
"plugins": ["ekyb-prefill"],
"source": "GR_KYB_PREFILL",
"country": "GR",
"taxId": "801725938",
"businessName": "",
"address": ""
}
Sample response
The Prefill response returns business data retrieved directly from the source of truth. Passthrough fields are returned as-is from the source, without fuzzy matching or verification scoring. Match fields (nameMatch, addressMatch) are only returned when the corresponding input (businessName, address) was submitted. Field availability varies by company — see the notes under each example below.
Example 1 — small company with trading name and previous name
{
"kyb-prefill": [
{
"tin": "123456789000",
"vatNo": "801725938",
"name": "SAMPLE BOAT I.K.E.",
"nameMatch": "Verified",
"address": "Sample Street 1 Kerkyra Kerkyra 49100",
"city": "Kerkyra",
"postalCode": "49100",
"entityType": "Private Capital Company",
"registrationStatus": "Active",
"registrationDate": "2023-05-12T00:00:00Z",
"creditRating": "E",
"creditRatingDescription": "Not Rated",
"activityDesc": "Yachting",
"turnover": { "currency": "EUR", "value": 74882 },
"websites": ["www.sampleboat.example"],
"shareholders": [
{ "name": "Sample Owner Name", "percentSharesHeld": 100 }
],
"directors": [
{ "name": "Sample Director Name", "positionName": "Administrator" }
],
"otherNames": [
{ "name": "SAMPLE BOAT", "businessNameType": "Trading Name" },
{ "name": "SAMPLE BOAT SINGLE MEMBER P.C.", "businessNameType": "Previous Name" }
]
}
]
}
Example 2 — company with multiple shareholders (limited turnover/contact data)
{
"kyb-prefill": [
{
"tin": "987654321000",
"vatNo": "802498747",
"name": "SAMPLE RENTAL E.E.",
"nameMatch": "Verified",
"address": "Sample Avenue 86 Kavala Kavala 65404",
"city": "Kavala",
"postalCode": "65404",
"entityType": "Limited Partnership",
"registrationStatus": "Active",
"registrationDate": "2026-02-02T00:00:00Z",
"creditRating": "E",
"creditRatingDescription": "Not Rated",
"shareholders": [
{ "name": "Sample Shareholder One", "percentSharesHeld": 35 },
{ "name": "Sample Shareholder Two", "percentSharesHeld": 35 },
{ "name": "Sample Shareholder Three", "percentSharesHeld": 30 }
],
"directors": [
{ "name": "Sample Director One", "positionName": "Administrator" },
{ "name": "Sample Director Two", "positionName": "Administrator" }
],
"otherNames": [
{ "name": "SAMPLE TRADING NAME", "businessNameType": "Trading Name" },
{ "name": "SAMPLE RENTAL O.E.", "businessNameType": "Previous Name" }
]
}
]
}
(turnover, employeeCount, websites, otherAddresses omitted — not present in this response.)
Example 3 — larger company (with otherAddresses/employeeCount)
{
"kyb-prefill": [
{
"tin": "456789123000",
"vatNo": "094232831",
"name": "SAMPLE SHOES SA",
"nameMatch": "Verified",
"address": "Sample Road 7 Argyroupoli 16452 Attiki",
"entityType": "Societe Anonyme",
"registrationStatus": "Active",
"creditRating": "C",
"creditRatingDescription": "Moderate Risk",
"industryDesc": "Wholesale of clothing and footwear",
"turnover": { "currency": "EUR", "value": 4887918 },
"employeeCount": "19",
"websites": ["www.sampleshoes.example"],
"otherAddresses": [
{ "otherAddress": "Sample Secondary Address, Glyfada, Attiki 16675" }
],
"otherNames": [
{ "name": "SAMPLE SHOES S.A.", "businessNameType": "Trading Name" },
{ "name": "SAMPLE SHOES S.A.", "businessNameType": "Previous Name" }
]
}
]
}
(otherNames entries here are near-duplicates of name, differing only in punctuation — a real, if unremarkable, response.)
Response fields
| Key | Value | Description |
|---|---|---|
tin |
GEMI number | 12-digit General Commercial Registry number, as returned from the source of truth. |
vatNo |
AFM | 9-digit tax registry number. |
name |
Business name | The registered legal name of the business, as returned from the source of truth — not the trading name. |
nameMatch |
Verified, Approximate Match, Unverified | Match result comparing the submitted businessName against the registered name. Only returned when businessName is submitted. |
address |
Address | The registered business address as returned from the source of truth. |
addressMatch |
Verified, Approximate Match, Unverified | Match result comparing the submitted address against the registered address. Only returned when address is submitted. |
city |
City | The city associated with the registered business address, when available. |
postalCode |
Postal code | The postal code associated with the registered business address, when available. Always 5 digits. |
entityType |
Entity type | The legal entity type of the business (e.g. Private Capital Company, Societe Anonyme). Defaults to "Unknown" when not available. |
registrationStatus |
Active, Expired, Unknown, Not Found | Current registration status of the business. Defaults to "Unknown" when not available. |
registrationDate |
Date | The date the business was registered. May not be available for all entities. |
creditRating |
Rating value (e.g. A, C, E) | The business's credit rating, as returned from the source of truth. Defaults to "Unknown" when not available. |
creditRatingDescription |
Description (e.g. Moderate Risk, Not Rated) | Human-readable description of the credit rating. Defaults to "Unknown" when not available. |
industryDesc |
Industry description | Description of the business's main activity, when available. |
activityDesc |
Activity description | Description of the business's principal activity, when available. |
turnover |
{currency, value} object |
The business's latest reported turnover figure. May not be available for all entities. |
employeeCount |
Number (as string) | Latest reported number of employees, if available. |
websites |
Array of strings | Websites associated with the business, if available. |
otherAddresses |
Array of {otherAddress} |
Addresses associated with the business other than the main registered address, if any. May not be present for smaller companies. |
shareholders |
Array of {name, percentSharesHeld} |
Shareholder information, if available. |
directors |
Array of {name, positionName} |
Directors associated with the business, if available. May occasionally contain garbled or low-quality name data. |
otherNames |
Array of {name, businessNameType} |
Trading name and any previous legal names for the business, combined into a single list. businessNameType is "Trading Name" or "Previous Name". |
Error responses
For standard HTTP response codes, see the API Error Response page. Greece Prefill returns the following country-specific 400 errors.
taxId is not a valid 9-digit AFM or 12-digit GEMI number:
{
"status": 400,
"error": "Bad Request",
"message": "taxId must be a valid AFM (9 digits) or GEMI number (12 digits)",
"path": "/omni/externalVerification/ekyb-prefill"
}
Any mandatory field (plugins, source, country, or taxId) is missing:
{
"status": 400,
"error": "Bad Request",
"message": "must not be blank",
"path": "/omni/externalVerification/ekyb-prefill"
}
No business match is found for the submitted taxId:
{
"timestamp": 1782851583695,
"status": 200,
"message": "No business found matching the provided tax ID.",
"path": "/omni/externalVerification/ekyb-prefill"
}`
Single Session Dashboard results
Prefill results are available on the Business tab in single Session view.