Table of Contents
- Data Sources
- Company Identifiers
- Search Capabilities
- Quirks & Gotchas
- Mappings
- Data Availability
- Example API Responses
Data Sources
Portugal uses a combination of a private business intelligence platform and the official registration authority. For a given entity, data comes from a single primary source (all-or-nothing model). There are two distinct data pathways: one for structured company profile data and one for official document retrieval.Company Profile Data
- Racius — A Portuguese business information platform (founded 2012) that aggregates company data from official registries. Used as the primary source for all structured company data. The system retrieves a company report from Racius, from which all structured attributes are extracted via AI parsing: company name, legal form, status, registration date, registered address, share capital, activity codes (CAE), legal representatives, and shareholders.
Official Documents
- Instituto dos Registos e do Notariado (IRN) — The Portuguese registration and notary authority, operating under the Ministry of Justice since 2007. Used exclusively for official document retrieval. Two document types are available: the Certidao de Registo Comercial (permanent commercial register certificate) and the Certidao do Ultimo Pacto Social/Estatutos Atualizados (latest articles of association). Both are delivered via an email-based purchase flow through the IRN portal.
Publications (Onboarding Profile)
- Publicacoes do Registo Comercial — Official commercial register publications. Used as the data source for the onboarding profile datapoint (a lighter, faster alternative to the full company profile). Publications include legal announcements, corporate acts, and other mandatory filings. The system downloads up to 10 most recent publications, combines them chronologically, and uses AI parsing to extract company data, legal representatives, and shareholders. The most recent publication determines the current company status.
AI-parsed data: Portugal’s company profile data is entirely AI-parsed from Racius HTML reports. There is no structured company API available. All attributes — including legal form, status, legal representatives, and shareholders — are extracted by AI from HTML content using parallel model racing (OpenAI GPT-4.1-mini, Cerebras, Groq). The first successful response wins.
Company Identifiers
Query Identifiers
| Company Type | Source | Format | Example | Notes |
|---|---|---|---|---|
| All companies | IRN / Racius | 9-digit NIPC/NIF | 501442600 | Numero de Identificacao de Pessoa Coletiva |
Identifiers in API Response
Once you retrieve company data, theidentifiers object contains all available identifiers for that entity:
| Identifier Type | Format | Example | Found In |
|---|---|---|---|
NIF / NIPC | 9 digits | 501442600 | All registered companies |
VAT | PT + 9 digits | PT501442600 | Companies with EU VAT registration |
Search Capabilities
| Search Type | Pattern | Example | Match Type | Expected Results |
|---|---|---|---|---|
| By NIF/NIPC | 9 digits | 501442600 | Exact | Single company (1 result) |
| By Name | Text string | "Exemplo Empresa" | Fuzzy | Multiple results |
Search implementation: Portugal search is performed via the Racius platform. Both NIF-based and name-based searches are routed through the same search workflow. Results include company name, NIF, and address (city/region). Brand results are automatically filtered out.
Quirks & Gotchas
| Quirk | Details |
|---|---|
| All profile data is AI-parsed | Company profile, legal form, status, legal representatives, and shareholders are all extracted from Racius HTML reports via AI parsing. There is no structured API. |
| Multi-model AI racing | Portugal uses parallel AI model racing (OpenAI GPT-4.1-mini, Cerebras GPT-OSS-120B, Groq GPT-OSS-120B) for faster parsing. The first successful response wins (Promise.any). |
| Email-based document purchase | Certificates require an email-based purchase flow through the IRN portal. A document request is submitted through the IRN portal and the access code is received by email. |
| Up to 24-hour document delivery | After obtaining an access code, the system waits for document availability on the IRN portal (up to 24 hours). Most documents are available within 1-2 hours. |
| Access code reuse (1 year) | Once obtained, access codes are valid for 1 year. Subsequent requests for the same document type reuse the existing code, bypassing the email purchase flow entirely. |
| CAE classification | Portugal uses CAE (Classificacao de Actividades Economicas), currently CAE Rev. 3 maintained by INE (Statistics Portugal). CAE closely mirrors NACE. Codes are extracted from the Racius report by AI. |
| NIPC check digit | The 9th digit of the NIPC is a check digit calculated using modulo 11 with weights [9, 8, 7, 6, 5, 4, 3, 2]. The system can generate valid NIPCs for internal use. |
| No direct registry API | Unlike many European countries, Portugal does not offer a structured API for commercial register data. All data is sourced through the Racius intermediary platform. |
| Racius requires login | Fetching full company reports from Racius requires authentication. |
| Retrieval may be slower than API-based countries | Both search and company report retrieval require interaction with the Racius web platform, which is inherently slower than direct API calls. |
| Onboarding profile uses publications | The onboarding profile datapoint uses a different data source than the full company profile. It queries the pt.publications_raw table for official publications, downloads their HTML/PDF content, and parses with AI. This provides faster results but may have less comprehensive data. |
| Publication-based status detection | For the onboarding profile, company status is determined from the most recent publication’s announcement type. Terms like “Dissolucao”, “Liquidacao”, “Encerramento”, or “Extincao” in the announcement type indicate the company is dissolved/closed. |
| Legal representative exclusions | The AI parser is instructed to exclude board members, administrators, and auditors from the legal representatives list. Only persons with active executive authority are returned. |
Mappings
Company Status
Company status is extracted from Racius HTML reports via AI parsing. There is no deterministic status mapping — the AI infers the status from the document content and standardizes it.| Local Status | English Translation | Standardized Status |
|---|---|---|
| Ativa / Em Actividade | Active | Active |
| Encerrada | Closed | Closed |
| Dissolvida | Dissolved | Closed |
| Em Liquidacao | In Liquidation | Closed |
| Extinta | Extinct / Terminated | Closed |
| Insolvente | Insolvent | Under Insolvency Proceeding |
Legal Forms
Portuguese legal forms are extracted from Racius HTML reports via AI parsing. The AI identifies the legal form from the company report and provides both the local Portuguese name and standardized classification. ISO 20275 (ELF) codes are assigned via AI enrichment.Key Business Forms
| Abbreviation | Portuguese Name | English Translation | Standardized | ISO 20275 |
|---|---|---|---|---|
| Lda. | Sociedade por Quotas | Private Limited Company | Limited Liability Company | USOG |
| S.A. | Sociedade Anonima | Public Limited Company | Corporation | DFE5 |
| Unipessoal Lda. | Sociedade Unipessoal por Quotas | Single-Member Private Limited Company | Limited Liability Company | VF4C |
| S.A.D. | Sociedade Anonima Desportiva | Sports Public Limited Company | Corporation | W9W3 |
| S.C. | Sociedade em Comandita | Limited Partnership | Partnership | - |
| S.N.C. | Sociedade em Nome Coletivo | General Partnership | Partnership | - |
Sole Entrepreneurs
| Abbreviation | Portuguese Name | English Translation | Standardized | ISO 20275 |
|---|---|---|---|---|
| ENI | Empresario em Nome Individual | Sole Trader | Sole Proprietorship | VALH |
Cooperatives
| Abbreviation | Portuguese Name | English Translation | Standardized | ISO 20275 |
|---|---|---|---|---|
| CRL | Cooperativa de Responsabilidade Limitada | Limited Liability Cooperative | Cooperative | - |
| SCE | Societas Cooperativa Europaea | European Cooperative Society | Cooperative | V6YL |
Non-Profits
| Type | Portuguese Name | English Translation | Standardized | ISO 20275 |
|---|---|---|---|---|
| Associacao | Associacao | Association | Nonprofit Organization | ALPT |
| Fundacao | Fundacao | Foundation | Nonprofit Organization | - |
Public & Government Entities
| Abbreviation | Portuguese Name | English Translation | Standardized | ISO 20275 |
|---|---|---|---|---|
| EPE | Entidade Publica Empresarial | Public Business Entity | Government-Owned Entity | A8CT |
| EM | Empresa Municipal | Municipal Enterprise | Government-Owned Entity | PIDC |
| EEM | Entidade Empresarial Municipal | Municipal Business Entity | Government-Owned Entity | D7OA |
| EIM | Empresa Intermunicipal | Intermunicipal Enterprise | Government-Owned Entity | IX01 |
| EMet | Empresa Metropolitana | Metropolitan Enterprise | Government-Owned Entity | XD16 |
| - | Pessoa Coletiva de Direito Publico | Public Law Legal Entity | Government-Owned Entity | P5S3 |
European & International Forms
| Abbreviation | Portuguese Name | English Translation | Standardized | ISO 20275 |
|---|---|---|---|---|
| AEIE | Agrupamento Europeu de Interesse Economico | European Economic Interest Grouping | Other | - |
| ACE | Agrupamento Complementar de Empresas | Complementary Grouping of Companies | Other | - |
| - | Pessoa Coletiva Internacional | International Legal Entity | Other | QFXD |
Legal form extraction and standardization are entirely AI-inferred from the Racius report content. ISO 20275 (ELF) codes are added via AI enrichment. The local Portuguese legal form name from the source document is always preserved verbatim. The tables above list the most common forms; the AI can recognize additional forms not listed here.
Legal Representatives
Legal representatives are extracted from Racius HTML reports via AI parsing. The AI is specifically instructed to exclude board members, administrators, and auditors — only active legal representatives with executive authority are returned.Executive Roles (AI-extracted)
Executive Roles (AI-extracted)
| Portuguese Role | English Translation | Typical Entity Type |
|---|---|---|
| Gerente | Manager | Lda., Unipessoal Lda. |
| Administrador | Administrator/Director | S.A. |
| Presidente do Conselho de Administracao | Chairman of the Board | S.A. |
| Administrador Delegado | Managing Director | S.A. |
| Administrador Unico | Sole Director | S.A. |
| Director-Geral | General Director | Various |
| Presidente | President | Associations, Cooperatives |
| Representante Legal | Legal Representative | Various |
AI-inferred role classification: Since all role data is AI-parsed from HTML content, the exact role names may vary depending on how Racius presents them. The AI translates Portuguese role names to English and classifies them as legal representatives or other key persons based on context. Both individual and corporate representatives are supported.
Other Key Persons
Other key persons (supervisory roles, auditors, etc.) are excluded from the Portugal response. The AI parser is instructed to return only active legal representatives with executive authority.Shareholders
Shareholders are extracted from Racius HTML reports via AI parsing. Both individual and corporate shareholders are supported.Extraction Logic
| Data Extracted | Source | Notes |
|---|---|---|
| Shareholder name | AI-parsed from Racius report | Full name for individuals, legal name for companies |
| Shareholder type | AI-classified | individual or company |
| Share percentage | AI-parsed when available | sharePercentage field |
| Address | AI-parsed when available | When present in the report |
Self-reference exclusion: The AI parser is specifically instructed not to include the queried company itself as a shareholder. Entries listed as “Outros” (Others) without specific details are also excluded.
Activity Code Mapping
Portugal uses the CAE (Classificacao Portuguesa de Actividades Economicas), currently in Revision 3, maintained by INE (Instituto Nacional de Estatistica / Statistics Portugal). CAE extends the European NACE Rev. 2 standard. The system maps activity codes across three levels:| Classification | Source | Example | AI Inferred? |
|---|---|---|---|
| CAE | Racius HTML report (AI-parsed) | 62010 | No (extracted from source) |
| NACE | Derived from CAE or AI | 6201 | Sometimes |
| ISIC | Derived from NACE or AI | 6201 | Sometimes |
CAE codes are extracted from the Racius report by AI parsing. The AI is specifically instructed to recognize the CAE classification format. NACE and ISIC derivations use formal mapping tables when possible, with AI fallback. The
isAIInferred flag distinguishes official vs. AI-derived codes.Data Availability
Data Availability Matrix
| Data Type | Company Profile (Racius) | Onboarding Profile (Publications) | Notes |
|---|---|---|---|
| Company Name & Address | ✅ | ✅ | AI-parsed from HTML |
| Legal Form | ✅ | ✅ | AI-inferred with ISO 20275 enrichment |
| Company Status | ✅ | ✅ | AI-inferred; publications use announcement type |
| Registration Date | ✅ | ✅ | When available in source |
| Share Capital | ✅ | ✅ | Amount and currency |
| Activity Codes (CAE) | ✅ | ✅ | Mapped to NACE/ISIC |
| Activity Description | ✅ | ✅ | Business purpose text |
| Legal Representatives | ✅ | ✅ | Executive roles only (AI-filtered) |
| Shareholders | ✅ | ✅ | Individual and corporate |
| Ultimate Beneficial Owners | ❌ | ❌ | Not available from Racius or publications |
| Establishments | ❌ | ❌ | Not available from Racius |
| Employee Count | ❌ | ❌ | Not available from Racius |
Documents by Company Type
All Companies (NIPC)
| Document Type | API Category | Format | SKU | Availability | Notes |
|---|---|---|---|---|---|
| Certidao de Registo Comercial | certifiedTradeRegisterExtract | PRT_CERTIFIED_REGISTER_EXTRACT | ✅ All companies | Permanent certificate from IRN | |
| Certidao do Ultimo Pacto Social | articleOfAssociation | PRT_STATUS | ✅ All companies | Latest company statutes from IRN |
Document Delivery Flow
Certificate Purchase Flow (Certidao de Registo Comercial & Pacto Social)
Certificate Purchase Flow (Certidao de Registo Comercial & Pacto Social)
Example API Responses
All examples use placeholder data. Query:POST /company with { "id": "<id>", "countryCode": "PT", "dataPoints": ["companyProfile"] }
Active Sociedade por Quotas (Lda.)
Active Sociedade por Quotas (Lda.)
Active Sociedade Anonima (S.A.)
Active Sociedade Anonima (S.A.)
Closed Company
Closed Company
active: false. Data availability (legal representatives, shareholders) may be limited compared to active companies.Sociedade Unipessoal por Quotas (Unipessoal Lda.)
Sociedade Unipessoal por Quotas (Unipessoal Lda.)
Available Documents
Available Documents
Documents are returned when
"dataPoints": ["documents"] is requested.| API Category | Document | Format | Notes |
|---|---|---|---|
certifiedTradeRegisterExtract | Certidao de Registo Comercial | Email-based purchase flow, up to 24h delivery | |
articleOfAssociation | Certidao do Ultimo Pacto Social/Estatutos Atualizados | Latest company statutes, same delivery flow |
Data Source Priority & Routing
For a given entity, data comes from a single primary source — the system does not merge attributes across data sources (all-or-nothing model).Source Priority for Company Profile:
- Racius — A company report is retrieved from Racius. If the company is found, all structured attributes are extracted via AI parsing from the report. This is the only source for the company profile datapoint.
- If the company is not found on Racius, a
SourceError.notFoundis returned.
- Publications — The system queries for official commercial register publications. Up to 10 most recent publications are downloaded (HTML preferred, PDF fallback), combined chronologically, and parsed via AI.
- If no publications exist for the company, a
SourceError.notFoundis returned.
Attribute-Level Source Mapping
All company profile attributes come from a single AI parsing of the Racius HTML report:| Attribute | Source | Notes |
|---|---|---|
| Company name | Racius (AI-parsed) | Extracted from report header |
| Legal form | Racius (AI-parsed) | Enriched with ISO 20275 code |
| Status | Racius (AI-parsed) | Enriched to standardized status |
| Registered address | Racius (AI-parsed) | Street, city, postal code |
| Share capital | Racius (AI-parsed) | Amount and currency |
| Activity codes (CAE) | Racius (AI-parsed) | Enriched to NACE/ISIC |
| Activity description | Racius (AI-parsed) | Business purpose text |
| Registration date | Racius (AI-parsed) | Incorporation/registration date |
| Legal representatives | Racius (AI-parsed) | Executive roles only |
| Shareholders | Racius (AI-parsed) | Individuals and companies |