Beneficial Owner
The Beneficial Owner Answer is used to submit information about the ultimate beneficial owners (UBOs) of a company or legal entity, which is a critical component of ownership disclosure, transparency, and anti-money laundering compliance.
Hierarchical Structure Explanation
The Beneficial Owner model uses a hierarchical structure to represent ownership relationships. This is implemented using an LTree (Labeled Tree) structure in the database, where:
- Each entity in the ownership structure is assigned a path-like ID
- The top level entities start with a simple number (e.g., "1", "2", "3")
- Child entities have IDs that extend their parent's ID with a dot notation (e.g., "1.1", "1.2")
- Further descendants continue this pattern (e.g., "1.1.1", "1.2.1", "1.2.2")
This structure allows for representing complex, multi-level ownership hierarchies where companies can own other companies which in turn have individual or corporate owners.
Fields
Base Fields
| Field | Type | Required | Description |
|---|---|---|---|
fieldTypeId | string | Yes | Must be set to "BeneficialOwner" (from FieldTypeEnum) |
beneficialOwnerAnswerItems | array | Yes | List of beneficial owner items |
Beneficial Owner Item Fields
| Field | Type | Required | Description |
|---|---|---|---|
parentId | string | Yes | Hierarchical path ID using LTree notation (e.g., "1", "1.1", "1.1.1") |
individualBeneficialOwnerAnswer | object | Conditional | Details of the individual beneficial owner (required if the UBO is an individual) |
corporateBeneficialOwnerAnswer | object | Conditional | Details of the corporate beneficial owner (required if the UBO is a company) |
Individual Beneficial Owner Fields
| Field | Type | Required | Description |
|---|---|---|---|
ownership | decimal | Yes | Percentage of ownership (0-100) |
nationality | string | No | Nationality of the individual owner (ISO format) |
documentNumber | string | No | Identification document number |
documentExpiry | string | No | Expiry date of the identification document in ISO format (YYYY-MM-DD) |
passportId | string | No | ID of the uploaded passport document (required if passport is provided) |
idCardFrontId | string | No | ID of the uploaded ID card front document (required if ID card is provided) |
idCardBackId | string | No | ID of the uploaded ID card back document (if applicable) |
evidenceOfOwnerShipDocumentId | string | No | ID of the uploaded ownership evidence document |
countryOfResidenceId | string | No | Country identifier for residence (ISO format) |
countryOfBirthId | string | No | Country identifier for birth (ISO format) |
userDetails | object | Yes | Personal details of the individual beneficial owner |
Individual User Details Fields
| Field | Type | Required | Description |
|---|---|---|---|
firstName | string | Yes | First name of the individual |
middleName | string | No | Middle name of the individual |
lastName | string | Yes | Last name of the individual |
dateOfBirth | string | No | Date of birth in ISO format (YYYY-MM-DD) |
gender | string | No | Gender of the beneficial owner (Male/Female) |
Corporate Beneficial Owner Fields
| Field | Type | Required | Description |
|---|---|---|---|
ownership | decimal | Yes | Percentage of ownership (0-100) |
registeredName | string | Yes | Registered name of the corporate entity |
company | object | Yes | Company details |
address | object | No | Company address details |
evidenceOfOwnerShipDocumentId | string | No | ID of the uploaded ownership evidence document |
companyLicenseId | string | No | ID of the uploaded company license document |
Corporate Company Details Fields
| Field | Type | Required | Description |
|---|---|---|---|
tradingName | string | Yes | Trading name of the company |
Corporate Address Fields
| Field | Type | Required | Description |
|---|---|---|---|
streetAddress | string | No | Street address of the company |
city | string | No | City name |
countryCode | string | No | Country code (ISO format) |
postalCode | string | No | Postal or ZIP code |
Visual Representation of LTree Hierarchy
The LTree hierarchical structure can be visualized as follows:
Main Company LTD
│
├── 1 (Global Holdings Ltd - 76%)
│ │
│ ├── 1.1 (European Investments ... - 66.04%)
│ │ │
│ │ └── 1.1.1 (Jean Dupont - 100%)
│ │
│ └── 1.2 (Mohammed Ahmmed - 33.96%)
│
└── 2 (XYZ Ltd - 24%)
Example Using LTree Hierarchical Structure
Here's an example of an ownership structure with multiple branches:
{
"fqName": "Beneficial Owner__Beneficial Owner",
"answer": {
"fieldTypeId": "BeneficialOwner",
"beneficialOwnerAnswerItems": [
{
"parentId": "1",
"corporateBeneficialOwnerAnswer": {
"ownership": 76,
"registeredName": "Global Holdings Ltd",
"company": {
"tradingName": null,
"companyTypeId": "BeneficialOwnerCompany"
},
"address": {
"streetAddress": "123 Corporate Plaza",
"city": "London",
"countryCode": "GB",
"postalCode": "EC1A 1BB"
},
"evidenceOfOwnerShipDocumentId": null,
"companyLicenseId": null
}
},
{
"parentId": "2",
"corporateBeneficialOwnerAnswer": {
"ownership": 24,
"registeredName": "XYZ Ltd",
"company": {
"tradingName": null,
"companyTypeId": "BeneficialOwnerCompany"
},
"address": {
"streetAddress": "ADGM",
"city": "Abu Dhabi",
"countryCode": "AE",
"postalCode": null
},
"evidenceOfOwnerShipDocumentId": null,
"companyLicenseId": null
}
},
{
"parentId": "1.1",
"corporateBeneficialOwnerAnswer": {
"ownership": 66.04,
"registeredName": "European Investments Ltd",
"company": {
"tradingName": null,
"companyTypeId": "BeneficialOwnerCompany"
},
"address": {
"streetAddress": "456 Business Avenue",
"city": "Paris",
"countryCode": "FR",
"postalCode": "75001"
},
"evidenceOfOwnerShipDocumentId": null,
"companyLicenseId": null
}
},
{
"parentId": "1.2",
"individualBeneficialOwnerAnswer": {
"ownership": 33.96,
"nationality": "SA",
"countryOfResidenceId": "SA",
"countryOfBirthId": "FR",
"documentNumber": "010010101",
"documentExpiry": "2033-01-12",
"passportId": null,
"idCardFrontId": "1618d0aa-000e-4a14-a4bc-e1def4bbe383",
"idCardBackId": "1618d0aa-000e-4a14-a4bc-e1def4bbe383",
"evidenceOfOwnerShipDocumentId": null,
"userDetails": {
"firstName": "Muhammed",
"middleName": null,
"lastName": "Ahmmed",
"dateOfBirth": null,
"gender": null
}
}
},
{
"parentId": "1.1.1",
"individualBeneficialOwnerAnswer": {
"ownership": 100,
"nationality": "FR",
"countryOfResidenceId": "FR",
"countryOfBirthId": "FR",
"documentNumber": "FR12345678",
"documentExpiry": "2030-06-15",
"passportId": null,
"idCardFrontId": "1618d0aa-000e-4a14-a4bc-e1def4bbe383",
"idCardBackId": "1618d0aa-000e-4a14-a4bc-e1def4bbe383",
"evidenceOfOwnerShipDocumentId": null,
"userDetails": {
"firstName": "Jean",
"middleName": null,
"lastName": "Dupont",
"dateOfBirth": null,
"gender": null
}
}
}
]
}
}
This example represents the following ownership structure:

Implementation Guidelines
When implementing the Beneficial Owner Answer model, follow these guidelines:
Data Structure Rules
- Either
individualBeneficialOwnerAnswerorcorporateBeneficialOwnerAnswermust be provided for each beneficial owner item, but not both. - The
parentIdmust follow the LTree notation pattern (numeric values separated by dots). - Each parentId must be unique within the submission.
- The total ownership percentage across all entities with the same parent should typically add up to 100%.
Creating the Ownership Structure
- Identify all entities in the ownership chain that need to be represented
- Assign parentId values following the LTree pattern:
- Start with "1", "2", etc. for top-level owners
- Use dots to indicate hierarchy ("1.1", "1.2", "2.1", etc.)
- Submit complete information for each entity, including:
- Appropriate documentation (passport, ID card, company license)
- Ownership percentage (direct ownership of immediate parent)
- Required personal or company details
Regulatory Considerations
- Beneficial ownership information is a key component of KYC (Know Your Customer) and AML (Anti-Money Laundering) compliance.
- All document IDs must reference documents previously uploaded using the Document Upload API.