Skip to main content

Overview

Registry

RCS (Registre de Commerce et des Societes)Official company registry of Luxembourg
The RCS (Registre de Commerce et des Societes) is the official business register of Luxembourg, accessed via the LBR (Luxembourg Business Registers) XML API. Unlike many jurisdictions that rely on PDF document parsing, Luxembourg provides fully fielded structured XML data directly from LBR — with detailed shareholding information, court ruling data, and granular status codes. Lite Profile and Search are returned synchronously. Enhanced Profile orders complete synchronously when fulfilment is fast; slow orders currently time out, addressed by the upcoming async order pattern (preview) — see Enhanced Profile — async workflow below.

Company Identifiers

Search Capabilities

Data Availability

Status Codes

Luxembourg has 20 detailed observation codes for non-active statuses. The statusDetailsBeta field provides granular status information including court ruling dates, court names, and specific closure reasons.

Activity Codes

Luxembourg uses NACE Rev. 2 for classifying business activities.
Only approximately 28% of Luxembourg entities have NACE codes in the registry data. The company’s stated purpose (objet social) is available in activityDeclarations.

Address Format

Luxembourg addresses use a component-based structure: Example format:

Address Components

Source data uses 3-letter ISO country codes (e.g., LUX, FRA, BEL) which are converted to 2-letter codes (LU, FR, BE) in the API response.

Implementation Notes

Fully Structured Data: Unlike jurisdictions that rely on PDF parsing (with 1-6 hour processing delays), Luxembourg provides fully fielded XML data directly from LBR — with structured shareholding information, detailed court ruling data, and comprehensive status tracking.

Representatives

Luxembourg classifies representatives into multiple categories:

Capital and Shareholding Data

Structured Shareholding: Luxembourg provides fully fielded shareholding data including shareholder names, share counts, and share types - a significant advantage over jurisdictions where this data must be parsed from documents.
Share classes commonly include:
  • Parts de categorie A / Parts de categorie B - Class A/B shares
  • Parts sociales - Social shares
  • Actions - Regular shares
Capital type is indicated as either “Fixed” (Fixe) or “Variable”.

Foreign Entities

For foreign-registered entities with a Luxembourg presence:

Branches/Establishments

Branch data is available in beta_establishments[] (beta feature) and includes:
  • Branch address and trading name
  • Permanent representatives specific to the branch
  • Branch creation date and active status
Beta Feature: The beta_establishments array contains branch/establishment data and may be subject to changes. Contact support for details on accessing this data.

Enhanced Profile — async workflow

Luxembourg Enhanced Profile uses a mixed sync / async fulfilment pattern. Some orders complete within the ~40s connection-hold window; others exceed it. For slow orders the endpoint returns 202 with an orderId instead of timing out — retrieve the completed profile via the polling workflow.
Once the async order pattern is live, build for both responses on V1: handle the 200 (fast path) and the 202 (async path). For V2 production integrations — use POST /v2/companies/{kyckrId}/enhanced + poll GET /v2/orders/{orderId}, which returns an orderId immediately with no server-side connection hold. See the V1 (GET + 202 fallback) and V2 (POST + poll recommended) release notes for full integration guidance. Lite Profile and Search remain synchronous and return data immediately.