---
title: "Greece"
url: "https://developer.incode.com/general-reference/greece/"
section: "general-reference"
group: "eKYB Reference / eKYB Prefill Coverage"
version: "v1.1"
status: "live"
---
# Greece

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](/general-reference/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](#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

```json
{
    "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**

```json
{
    "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)**

```json
{
    "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)**

```json
{
    "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:

```json
{
    "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:

```json
{
    "status": 400,
    "error": "Bad Request",
    "message": "must not be blank",
    "path": "/omni/externalVerification/ekyb-prefill"
}
```

No business match is found for the submitted taxId:
```json
{
    "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](/dashboard-platform-administration/single-session-view/).