Skip to main content

Start here

This guide contains public integration notes for Luxembourg. Use it for identifier formats, search behavior, and country-specific caveats. The live source of truth for coverage, pricing, data sources, documents, legal forms, roles, and status values is the pricing page.

Luxembourg coverage, pricing, and sources

Open the current catalog for supported datapoints, documents, sources, identifiers, and availability.
Country details below are preserved as integration notes. If a table or example conflicts with the live pricing page, use the pricing page as the source of truth and contact support.

Table of Contents

Data Sources

Luxembourg uses a single official register, the RCS, as its data source. What you get depends on the mode:
  • Onboarding mode (company only): read live from the register’s public data. Returns the RCS number, company name, legal form, registration date, NACE code and registered seat. Status is derived from enforcement measures published by the register.
  • Verification mode (company, legalRepresentatives, shareholders): extracted with AI parsing from the certified trade register extract (“Extrait du RCS”). All three datapoints come from the same extract and are billed as one block (see pricing).

All company types

  • RCS (Registre de Commerce et des Societes) — Operated by Luxembourg Business Registers (LBR), an economic interest grouping comprising the State, the Chamber of Commerce, and the Chamber of Skilled Trades, under the authority of the Ministry of Justice since 2003. The RCS is the central commercial register for the Grand Duchy of Luxembourg, containing registration data for virtually all legal entities: commercial companies, partnerships, sole traders, civil companies, non-profit associations (ASBLs), foundations, investment funds, and branches of foreign entities. In verification mode, company name, legal form, status, registration date, registered address, share capital, activities, legal representatives, and shareholders are AI-parsed from the certified extract.
  • VIES (VAT Information Exchange System) — The EU-wide VAT validation service is used during VAT number searches to resolve a Luxembourg VAT number to a company name, which is then used to search the RCS. In verification mode, VIES also validates the VAT number found on the extract, and the result is returned as taxId with its verification status.
Document-based data extraction: Officers and shareholders are only published on the certified extract (“Extrait du RCS”), so verification mode extracts them from that document using AI parsing. Data quality depends on the document content and parsing accuracy. Onboarding mode does not use the extract and returns only the base fields the register publishes.

Company Identifiers

Query Identifiers

RCS Number Format: The Luxembourg RCS number consists of a letter prefix followed by digits (e.g., B246607). The prefix indicates the entity type: B for commercial companies is the most common. The regex validation pattern is ^[A-Z]\d+$.

RCS Number Prefixes

Identifiers in API Response

Once you retrieve company data, the identifiers object contains all available identifiers for that entity:

Search Capabilities

Search Performance: Identifier-based searches (RCS number, VAT) provide exact matching and faster results. Name searches query the RCS directly and may return multiple results across the register.
VAT Search Flow: VAT searches follow a two-step process: (1) validate the number via VIES to retrieve the official company name, then (2) search the RCS by that company name. The matched company is flagged as an id match and promoted to the top of results. Both formats are accepted: with country prefix (LU32326416) and without (32326416).
Search reliability: All search operations include built-in retry handling for reliability against the RCS API.

Quirks & Gotchas

Mappings

Company Status

Company status is determined from the trade register extract document using a two-step process: (1) a keyword-based heuristic checks for closure indicators in the document text, then (2) the status is AI-enriched for standardization.
If no closure indicators are found in the document text, the company is considered Active by default. The AI enrichment step maps the detected status to a standardized CompanyStatus enum value (ACTIVE, CLOSED, UNDER_INSOLVENCY_PROCEEDING, or UNKNOWN).
Luxembourg legal forms are extracted from the RCS trade register extract via AI parsing. The legalFormCode field from search results provides an initial abbreviation, while the full legal form name is parsed from the certified extract document and AI-enriched to add English translations, standardized types, and ISO 20275 codes.
Because legal form standardization and ISO 20275 assignment are AI-enriched, exact mappings may evolve. The local Luxembourg legal form name from the RCS document is always preserved verbatim.

Key Business Forms

Partnerships

Sole Proprietorships

Cooperatives & European Forms

Non-Profits & Foundations

Investment Vehicles

Insurance & Mutual Associations

Foreign Entities

Legal representatives are extracted from the RCS trade register extract via AI parsing. The AI looks for specific role terms in the document text, such as “Gerant”, “Administrateur”, “Directeur”, “President”, and “Membre du conseil d’administration”. Roles are then AI-enriched with standardized English translations and ISO 5009 codes (when an ISO 20275 ELF code is available for the company’s legal form).
Both individuals and corporate entities can hold legal representative and other key person roles in Luxembourg companies. The classification of each role as legal representative (can legally bind the company) or other key person (supervisory, audit roles) is AI-enriched using ISO 5009 codes when the company’s ISO 20275 (ELF) code is available.

Shareholders

Shareholders are extracted from the RCS trade register extract via AI parsing. The AI looks for Luxembourg-specific shareholder terminology in the document text.

Extraction Logic

The AI parser identifies shareholders from specific sections of the trade register extract:

Ownership Fields

Shareholder extraction quality depends on the structure and completeness of the trade register extract document. Both individual and corporate shareholders are supported. Percentage calculation is derived from the ratio of shares held to total shares when available. Not all legal forms publish shareholder information in the RCS extract — SAs (public limited companies) typically do not list individual shareholders in their extracts.

Activity Code Mapping

Luxembourg uses the NACE Rev. 2 classification. The register publishes one NACE code per company. Returned NACE and ISIC codes are standardized with AI: in verification mode from the activity found on the extract, and in onboarding mode from the register’s NACE label. The system maps activity codes across two levels:
When company data is AI-parsed from the trade register extract, activity descriptions may also be extracted from “Objet social” or “Activite principale” sections and used for the activity classification.

Data Availability

Data Availability Matrix

Legend: ✅ Available | ❌ Not Available | N/A Not Applicable | Async = Asynchronous processing (document delivery typically ~1 hour)

Documents by Company Type

Document Delivery Time: Luxembourg certified trade register extracts are delivered asynchronously. Typical delivery time is approximately 1 hour, and can occasionally take longer.
The certified Extrait du RCS serves as both the official company document and the source from which verification-mode data (company, legal representatives, shareholders) is AI-parsed. RESA publications and RCS filings (including annual accounts) are listed alongside it in availableDocuments.

Example API Responses

All examples use placeholder data. Query: POST /v2/company with { "id": "<id>", "countryCode": "LU", "dataPoints": ["company", "legalRepresentatives", "availableDocuments"] }
Closed companies have active: false and status “Radiee” (struck off). Document data may be more limited compared to active companies, and legal representatives and shareholders may not always be present in the extract.
VAT searches return results with a matchReason object indicating the match type (id) and the identifier used. The matched company is promoted to the top of results.