company-v2Updated: 2026-03-03

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 Proprietor in the representatives array
  • companyName contains 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 registry
  • streetNumber – Building/street number
  • streetName – Street name
  • city – City name
  • country – Country name
  • postcode – Postal code
  • isoCode – 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"
    }
  }
}

Additional resources