---
title: "Portugal"
url: "https://developer.incode.com/general-reference/ekyb-portugal/"
section: "general-reference"
group: "eKYB Reference / eKYB Verification Coverage"
version: "v1.1"
status: "live"
---
# Portugal
Portugal eKYB validates the legitimacy of Portuguese businesses by checking their tax ID, business name, address, UBOs, and directors against Portuguese government-backed business registry data.

## Source

| Country  | Source                          | Description                                                                |
| -------- | -------------------------------- | ---------------------------------------------------------------------------- |
| Portugal | Portuguese business registry sources | Verifies submitted business details against records maintained in the Portuguese business registry. |

## Direct API approach

For general integration notes and shared response semantics, see the [eKYB API Reference](/general-reference/ekyb-api-reference/).









### Request parameters

| Parameter      | Required  | Description                                                                                     |
| --------------- | --------- | --------------------------------------------------------------------------------------------------- |
| `plugins`       | Mandatory | Array. Must be `["ekyb"]`.                                                                            |
| `businessName`  | Mandatory | String. Name of the business.                                                                        |
| `country`       | Mandatory | String. Two-letter Alpha-2 country code. Must be `PT`.                                                |
| `taxId`         | Mandatory | String. NIF (Número de Identificação Fiscal). Exactly 9 numeric digits (for example, `500123456`). Serves as both the company registration number and VAT number.       |
| `street`        | Optional  | String. Street name of the business.                                                                  |
| `houseNo`       | Optional  | String. Building or house number.                                                                     |
| `addressLine2`  | Optional  | String. Second line of the business address.                                                          |
| `city`          | Optional  | String. City in the business address.                                                                 |
| `state`         | Optional  | String. State in the business address.                                                                |
| `postalCode`    | Optional  | String. Postal code of the business address.                                                          |
| `uboNames`      | Optional  | Array. Full legal names of Unique Beneficial Owners to check against records associated with the business. Shareholders on file are often other companies or holding entities rather than individuals, so this may not resolve to a real individual UBO name. |
| `directors`     | Optional  | Array. Full legal names of directors to check against records associated with the business.           |




### Sample request

```json
{
  "plugins": ["ekyb"],
  "businessName": "Atlantica Energia SA",
  "houseNo": "45",
  "street": "Av. da Liberdade",
  "addressLine2": "",
  "city": "LISBOA",
  "state": "LISBOA",
  "postalCode": "1250-096",
  "country": "PT",
  "taxId": "500123456",
  "directors": ["Mariana Costa Ferreira"],
  "uboNames": [""]
}
```

### Sample response

```json
{
  "kyb": [
    { "key": "name", "sub_label": "Verified" },
    { "key": "tin", "sub_label": "Verified" },
    { "key": "address_verification", "sub_label": "Verified" },
    { "key": "cityMatch", "sub_label": "Verified" },
    { "key": "postalCodeMatch", "sub_label": "Verified" },
    { "key": "registrationStatus", "sub_label": "Active" },
    {
      "key": "entityType",
      "entityType": { "entityType": "Joint Stock Company" }
    },
    {
      "key": "directors_name_match",
      "sub_label": "Verified",
      "directorsName_input": "Mariana Costa Ferreira"
    }
  ]
}
```

### Response fields

| Key                     | Status                                    | Description                                                                                       |
| ------------------------ | -------------------------------------------- | ------------------------------------------------------------------------------------------------------ |
| `name`                  | Verified, Approximate Match, Unverified      | Submitted business name against the single registered company name on file.                        |
| `tin`                   | Verified, Unverified                          | Submitted NIF against the registry.                                                                  |
| `address_verification`  | Verified, Approximate Match, Unverified      | Submitted address against the registered address on file. Matched as a fuzzy match on the full address. |
| `cityMatch`             | Verified, Approximate Match, Unverified      | Submitted city against the city on the registered address.                                          |
| `postalCodeMatch`       | Verified, Unverified                          | Submitted postal code against the postal code on the registered address.                            |
| `registrationStatus`    | Active, Inactive, Unknown                     | Registration status of the business. Values other than Active/Inactive returned by the source are mapped to Unknown. |
| `entityType`            | Legal entity type of the business             | The legal entity type of the business, if available. If not available, displays Unknown.             |
| `ubo_name_match`        | Verified, Approximate Match, Unverified      | Submitted UBO against shareholders associated with the business. Distinguished by the `uboName_input` field on each entry. Omitted entirely if the registry profile has no shareholder data. |
| `directors_name_match`  | Verified, Approximate Match, Unverified      | Submitted director against directors associated with the business. Distinguished by the `directorsName_input` field. Omitted entirely if the registry profile has no director data. |

## Error responses

See the [eKYB API Reference](/general-reference/ekyb-api-reference/) for standard error responses.