- Developer newsUpdates to the API
- Finland Company Data – Search, Lite Profile, Enhanced Profile, and Filing Updates
- Gibraltar Company Data – Search and Lite Profile Updates
- Jersey Company Data – Search and Lite Profile Updates
- Slovenia Company Data – Search, Lite Profile, and Filing List Updates
- Luxembourg Enhanced Profile – Shareholder Data Improvements
- Latvia Company Data – Search, Lite Profile, and Enhanced Profile Updates
- British Virgin Islands (BVI) Company Data Now Available
- Estonia Company Data – Search, Lite Profile, and Enhanced Profile Updates
- Lithuania Company Data – Enhanced Profiles Removed, Search and Lite Profile Updates
- Enhanced UK Company Data – Director Information Improvements
- New Canada integration for search, lite profile and company profile documents
- Italian company identifier changed from codice fiscale to REA
- IntroductionAbout the Companies V2 API
- Company searchSearch for a company by name or number
- Global searchSearch for a company globally
- Lite ProfileBasic company verification details
- Enhanced ProfileCompany profiles with representatives and shareholders
- Filing searchOrder registry extracts and filings
- About testingInformation about the Kyckr V2 test environment
- Supported jurisdictionsJurisdictions and regional codes
Luxembourg Enhanced Profile – Shareholder Data Improvements
Overview
Luxembourg Enhanced Profiles now include much richer shareholder data. We've moved from the European Business Register (EBR) network to a direct integration with the Luxembourg Business Register (LBR).
Key improvements
Fully fielded shareholder data
Before, you only got shareholders listed as generic "Partner" references with no ownership details. Now you get complete shareholding information:
- Share counts – Exact number of shares held by each shareholder
- Ownership percentages – Calculated ownership stakes for each shareholder
- Share class details – Complete information about different share classes (parts sociales)
- Shareholder details – Full corporate information including registration numbers and structured addresses
Before (EBR integration)
Shareholders appeared only as corporate representatives with role "Partner":
{
"data": {
"representatives": {
"corporations": [
{
"isActive": true,
"name": "EXAMPLE HOLDINGS S.à r.l.",
"registeredAddress": {
"buildingName": "123 Example Street",
"fullAddress": "123 Example Street"
},
"role": {
"original": "Partner"
},
"type": "Corporation"
},
{
"isActive": true,
"name": "EXAMPLE INVESTMENTS SAS",
"registeredAddress": {
"buildingName": "456 Sample Road",
"fullAddress": "456 Sample Road"
},
"role": {
"original": "Partner"
},
"type": "Corporation"
}
]
}
}
}After (LBR direct integration)
Shareholders now appear with complete ownership information in the capital array:
{
"data": {
"capital": [
{
"classCode": "parts sociales de classe A",
"classDescription": "parts sociales de classe A",
"description": "parts sociales de classe A",
"quantity": 10000000000,
"currency": "EUR",
"type": "parts sociales de classe A",
"shareholdings": [
{
"count": 4249440000,
"percentage": "42.49",
"shareholders": {
"corporations": [
{
"name": "EXAMPLE HOLDINGS S.à r.l.",
"registrationNumber": "B123456",
"type": "Corporation",
"address": {
"city": "Luxembourg",
"country": "Luxembourg",
"fullAddress": "123, Example Street, Luxembourg, 1234, Luxembourg",
"postcode": "1234",
"rawAddressLines": [
"123",
"Example Street",
"Luxembourg",
"1234",
"Luxembourg"
],
"streetName": "Example Street",
"streetNumber": "123",
"isoCode": "LU"
}
}
]
}
},
{
"count": 5750560000,
"percentage": "57.51",
"shareholders": {
"corporations": [
{
"name": "EXAMPLE INVESTMENTS SAS",
"registrationNumber": "789 002 300",
"registrationAuthority": "Registre de Commerce et des Sociétés de Paris",
"type": "Corporation",
"address": {
"fullAddress": "456, Sample Road, 75001 Paris, France",
"rawAddressLines": [
"456",
"Sample Road",
"75001 Paris",
"France"
],
"streetNumber": "456",
"streetName": "Sample Road",
"city": "Paris",
"postcode": "75001",
"country": "France",
"isoCode": "FR"
}
}
]
}
}
]
}
],
"totalCapital": {
"totalValue": 1000000.0,
"currency": "EUR",
"type": "Fixed"
}
}
}Multiple share classes
Many Luxembourg companies have multiple share classes. You'll see complete information for each one:
{
"data": {
"capital": [
{
"classCode": "parts sociales de classe A",
"classDescription": "parts sociales de classe A",
"quantity": 10000000000,
"currency": "EUR",
"shareholdings": [ /* ... */ ]
},
{
"classCode": "parts sociales de classe B",
"classDescription": "parts sociales de classe B",
"quantity": 10000000000,
"currency": "EUR",
"shareholdings": [ /* ... */ ]
},
{
"classCode": "parts sociales de classe C",
"classDescription": "parts sociales de classe C",
"quantity": 10000000000,
"currency": "EUR",
"shareholdings": [ /* ... */ ]
}
]
}
}Ownership percentage calculation
The percentage field represents ownership within that specific share class only.
Important: In V2, percentages are calculated per share class, not across all share classes combined. This differs from V1 where the percentage represents total ownership across all classes.
For example:
- Class A has 10,000,000,000 shares total
- Shareholder 1 holds 4,249,440,000 Class A shares
- Calculated percentage for Class A:
4,249,440,000 / 10,000,000,000 = 42.49%
If the same shareholder also holds shares in Class B and Class C, each shareholding will have its own percentage calculated relative to that specific share class total.
Rich shareholder metadata
The LBR has exceptionally detailed shareholder data. We analyzed a sample of over 8,000 corporate shareholders from Luxembourg companies and found:
- Luxembourg shareholders: 100% include registration numbers
- Cayman Islands shareholders: 93% include registration numbers
- United States shareholders: 99% include registration numbers
- United Kingdom shareholders: 100% include registration numbers
You get registration numbers, registration authorities, and foreign legal forms for shareholders across 69 countries. This makes Luxembourg Enhanced Profiles great for ownership analysis and corporate structure investigations—you can trace shareholders across jurisdictions using reliable identifiers.
Normalizing country names and foreign registration authorities include ISO country codes alongside registration numbers. This will make it easier to search for foreign shareholders across Kyckr's global network.
Shareholding data availability
Variable capital companies: Some Luxembourg companies have variable capital structures. For these, the shareholdings details may be empty.
Joint shareholders: Sometimes all shareholders hold shares jointly rather than individually. When this happens, you'll see all the shareholders listed in a single shareholdings item without specific share counts or percentages—the registry doesn't document the exact distribution among joint shareholders.
Activity data now included
Luxembourg Enhanced Profiles now include economic activity information with NACE classification codes:
{
"data": {
"activities": [
{
"code": "64.202",
"description": "Sociétés de participation financière (Soparfi)",
"classificationScheme": "NACE",
"type": "Primary"
}
],
"activityDeclarations": [
{
"declaration": "La société a pour objet la prise de participations, sous quelque forme que ce soit...",
"declarationDescription": "Objet social",
"language": "fr"
}
]
}
}This helps you quickly identify the company's business sector and classification.
The activityDeclarations array contains the full text of the company's business purpose (objet social) as stated in the Luxembourg Trade Register extract. The declaration field contains the complete French text describing what the company is authorized to do, while declarationDescription indicates which section of the registry document it comes from (e.g., "Objet social" or "Purpose (Incomplete)" for truncated text).
Company status from observation codes
Luxembourg provides explicit status information through observation codes (O1-O20) in the registry data. We map these to normalized status values:
| Code | French | English | Normalized |
|---|---|---|---|
| (none) | – | Active | Active |
| O1 | avec administrateur provisoire | With provisional administrator | Distressed |
| O2 | en concordat obtenu par le failli | In composition obtained by the bankrupt | Distressed |
| O3 | en concordat préventif de la faillite | In preventive composition of bankruptcy | Distressed |
| O4 | en faillite | In bankruptcy | Distressed |
| O5 | en faillite clôturée | Bankruptcy closed | Inactive |
| O6 | en fermeture d'un établissement d'une société étrangère | Closing of a foreign company establishment | Inactive |
| O7 | en gestion contrôlée | In controlled management | Distressed |
| O8 | en liquidation judiciaire | In judicial liquidation | Distressed |
| O9 | en liquidation judiciaire clôturée | Judicial liquidation closed | Inactive |
| O10 | en Procédure d'insolvabilité (règl. CE 1346/2000) clôturée | Insolvency proceedings closed | Inactive |
| O11 | en Procédure d'insolvabilité (règl. CE 1346/2000) | In insolvency proceedings | Distressed |
| O12 | en Procédure judiciaire étrangère | In foreign judicial proceedings | Distressed |
| O13 | en Procédure judiciaire étrangère clôturée | Foreign judicial proceedings closed | Inactive |
| O14 | avec séquestre | With sequestrator | Distressed |
| O15 | en sursis de paiement | In payment suspension | Distressed |
| O16 | radiée | Struck off | Inactive |
| O17 | en liquidation volontaire | In voluntary liquidation | Distressed |
| O18 | en réorganisation judiciaire | In judicial reorganization | Distressed |
| O19 | en procédure de dissolution administrative sans liquidation | In administrative dissolution without liquidation | Inactive |
| O20 | en procédure de dissolution administrative sans liquidation arrêtée | Administrative dissolution without liquidation stopped | Inactive |
Company relationships
The LBR integration provides company relationship data for merger and demerger history. This appears in the companyRelationships array:
{
"data": {
"companyRelationships": [
{
"relationship": "Merged",
"company": {
"companyNumber": "B123456"
},
"effectiveDate": "2024-01-15",
"description": "Fusion - Fusion par absorption"
}
]
}
}Relationship types:
| Type | Description |
|---|---|
| Merged | Company was involved in a merger (fusion) |
| Demerged | Company was involved in a demerger (scission) |
| Other | Other corporate restructuring events |
The description field contains the French operation type and method from the registry (e.g., "Fusion - Fusion par absorption" for merger by absorption).
Foreign registered bodies
For entities registered in a foreign jurisdiction with a Luxembourg branch, the response includes registrationType and registrationTypeDetails:
{
"data": {
"identifiers": {
"primaryRegistrationNumber": "D12345",
"otherIdentifiers": [
{
"type": "LU_FOREIGN_REG_CD",
"value": "123456789",
"isoCode": "FR"
}
]
},
"registrationType": "Foreign Registered Body",
"registrationTypeDetails": {
"originalCode": "FRA",
"originalDescription": "RCS",
"normalizedCode": "FR",
"normalizedDescription": "France"
}
}
}Sole traders
Sole traders are physical persons operating a business. The registration is for their trading name rather than a separate legal entity. In the response:
- The individual appears as a
Proprietorin therepresentativesarray companyNamecontains the trading name, not a personal name
{
"data": {
"identifiers": {
"primaryRegistrationNumber": "A12345"
},
"companyName": "Example Trading Name",
"legalForm": {
"original": "Sole Trader",
"normalized": "Individual Trader"
},
"representatives": {
"individuals": [
{
"role": {
"original": "Proprietor"
},
"isActive": true,
"type": "Person",
"name": "John Smith",
"nationality": "Luxembourgish",
"placeOfResidence": {
"fullAddress": "123, Example Street, 1234 Luxembourg",
"streetNumber": "123",
"streetName": "Example Street",
"city": "Luxembourg",
"postcode": "1234",
"isoCode": "LU"
}
}
]
}
}
}Aliases
Trade names and business names appear in the aliases array:
{
"data": {
"aliases": [
{
"name": "Alternative Trading Name",
"type": "Trade Name"
},
{
"name": "Branch Business Name",
"type": "Branch Trade Name"
}
]
}
}Additional changes
Representative changes
Role terminology
Representative roles now use French terminology from the LBR:
Changes:
"Administrator / Manager"→"Administrateur - Gérant"(Manager)"Everyday management responsible"→"Délégué à la gestion journalière"(Delegate for daily management)"Partner"→ Now appears in capital shareholdings structure instead
Appointment dates now included
Representatives now include startDate with actual appointment dates:
Note: The birthdate and nationality fields are no longer provided in the LBR integration. The LBR focuses on corporate governance data rather than personal data.
Signatory powers
Representatives now include a powers array showing their signatory authorities:
{
"representatives": {
"individuals": [
{
"role": {
"original": "Administrateur - Gérant"
},
"startDate": {
"original": "2022-03-24",
"normalized": "2022-03-24"
},
"isActive": true,
"powers": [
"pouvoir de signature A"
],
"type": "Person",
"name": "John Smith"
},
{
"role": {
"original": "Administrateur - Gérant"
},
"startDate": {
"original": "2016-06-02",
"normalized": "2016-06-02"
},
"isActive": true,
"powers": [
"pouvoir de signature B"
],
"type": "Person",
"name": "Jane Doe"
},
{
"role": {
"original": "Délégué à la gestion journalière"
},
"startDate": {
"original": "2023-10-02",
"normalized": "2023-10-02"
},
"isActive": true,
"powers": [
"Pouvoir d'exécuter par sa seule signature tout acte, opération ou document en relation avec la gestion journalière et administrative de la Société, dans la limite de EUR 20.000 par opération."
],
"type": "Person",
"name": "Bob Wilson"
}
]
}
}Address structure improvements
Addresses now have more granular structure with separated components. This makes it easier to work with individual address fields:
New fields:
rawAddressLines– Array of address components as they appear in the registrystreetNumber– Building/street numberstreetName– Street namecity– City namecountry– Country namepostcode– Postal codeisoCode– ISO country code (lowercase two-letter code)
Before:
{
"fullAddress": "123 Example Street, Luxembourg, 1234, Luxembourg",
"buildingName": "123 Example Street",
"type": "Address of the local main office"
}After:
{
"fullAddress": "123, Example Street, 1234 Luxembourg",
"rawAddressLines": [
"123",
"Example Street",
"1234 Luxembourg"
],
"streetNumber": "123",
"streetName": "Example Street",
"city": "Luxembourg",
"postcode": "1234",
"isoCode": "LU"
}Date fields
The LBR integration provides two key date fields:
registrationDate– When the company was registered with the RCS (Registre de Commerce et des Sociétés)incorporationDate– When the company was incorporated/founded
{
"data": {
"registrationDate": {
"original": "2016-07-07",
"normalized": "2016-07-07"
},
"incorporationDate": {
"original": "2016-06-02",
"normalized": "2016-06-02"
}
}
}Legal form normalization
French legal forms are now normalized to English AML-relevant entity types:
| French (original) | English (normalized) |
|---|---|
| Société anonyme | Public Limited Company |
| Société à responsabilité limitée | Private Limited Company |
| Société à responsabilité limitée simplifiée | Private Limited Company |
| Société par actions simplifiée | Simplified Joint Stock Company |
| Société européenne | European Company |
| Société en commandite par actions | Partnership Limited by Shares |
| Société en commandite simple | Limited Partnership |
| Société en nom collectif | General Partnership |
| Société civile | Civil Partnership |
| Société coopérative | Cooperative |
| Société d'investissement à capital variable | Investment Fund |
| Fonds commun de placement | Investment Fund |
| Association sans but lucratif | Non-Profit Association |
| Commerçant personne physique | Individual Trader |
| Succursale d'une personne morale de droit étranger | Foreign Branch |
| Fondation | Foundation |
| Groupement d'intérêt économique | Economic Interest Group |
| Mutuelle | Mutual Society |
{
"data": {
"legalForm": {
"original": "Société à responsabilité limitée",
"normalized": "Private Limited Company"
}
}
}