Skip to main content

Table of Contents

Data Sources

Finland uses two official data sources. Company profile data and legal representatives are AI-parsed from the official Trade Register Extract (kaupparekisteriote) PDF document, while activity codes are fetched from the YTJ open data API.
  • PRH VIRRE (Trade Register) — The Finnish Trade Register, maintained by PRH since 1896, is the primary source for Finnish entity data. PRH operates the VIRRE information service for fetching Trade Register Extracts and Articles of Association, and for searching companies by name. The Trade Register Extract PDF is AI-parsed to produce structured company data including company name, legal form, status, registered address, share capital, activity description, and legal representatives.
  • PRH ESR (Beneficial Owner Register) — PRH’s separate Beneficial Owner Register (ESRServices10) provides Ultimate Beneficial Owner (UBO) data. Companies are required to register their beneficial owners with PRH. The ESR API returns structured ownership and voting rights data for natural persons who hold significant control over a company.
  • YTJ (Yritys- ja yhteisötietojärjestelmä / Finnish Business Information System) — The YTJ open data API provides structured company data including official TOL (Toimialaluokitus) activity classification codes assigned by Statistics Finland. It is used to search by id and for fetching TOL codes, from which NACE and ISIC codes are derived deterministically.
Finland’s data extraction is document-based: the system fetches the official Trade Register Extract PDF from PRH’s VIRRE service and uses AI to parse structured company data from it. This means company profile and legal representatives are extracted from the same authoritative document. Legal form, status, activity descriptions, and role classifications are all AI-parsed from the extract. Activity codes (TOL) are sourced separately from the YTJ API and mapped deterministically to NACE and ISIC. UBO data comes from the separate PRH ESR register.

Company Identifiers

Query Identifiers

Company TypeSourceFormatExampleNotes
All companiesPRH Trade Register7 digits + hyphen + check digit1234567-8Business ID (Y-tunnus), validated with check digit algorithm
Business ID (Y-tunnus) Format: 1234567-8 = 7 digits + hyphen + 1 check digit. The check digit is calculated using a modulo-11 algorithm. All Finnish entities registered with PRH receive a Y-tunnus, including limited companies, partnerships, sole traders, cooperatives, foundations, and associations.

Identifiers in API Response

Once you retrieve company data, the identifiers object contains all available identifiers for that entity:
Identifier TypeFormatExampleFound In
businessId7 digits + hyphen + check digit1234567-8All companies
VATFI + 8 digits (no hyphen)FI12345678VAT-registered companies

Search Capabilities

Search TypePatternExampleMatch TypeExpected Results
By Business ID (Y-tunnus)7 digits + hyphen + check digit1505551-4ExactSingle company (1 result)
By NameText string (3-100 chars)"Alko"FuzzyMultiple results
Search Performance: Use Business ID search for best performance and exact matching. Name searches query the PRH VIRRE API and may return multiple results. Name searches support Finnish, Swedish, and English company names.
ID search implementation: Searching by Business ID uses the YTJ open data API for fast, direct lookups. Name searches use the PRH VIRRE API for curated results.

Quirks & Gotchas

QuirkDetails
AI-parsed dataAll company data (profile, status, legal form, legal representatives, activity description) is AI-extracted from the Trade Register Extract PDF. Field availability depends on what is present in the document.
No shareholdersPRH does not provide shareholder information through the Trade Register. Share ownership is privately held by each company. Only total share capital and share classes are registered with PRH.
UBO availability varies by entity typeUBO data comes from PRH’s ESR register, which is separate from the Trade Register. Only entities required to register beneficial owners will have data. Public limited companies (Oyj), state-owned companies, associations (ry), and foundations (sr) typically declare no beneficial owners or are not in the ESR registry. Sole entrepreneurs (Tmi) are not required to register UBOs. Private limited companies (Oy) are the most likely to have UBO data.
No employee countPRH does not provide employee count data.
Processing timeCompany profile and legal representatives are extracted asynchronously from the Trade Register Extract. Typical processing time is 1-3 minutes, longer for companies with extensive management structures.
Trade Register Extract is dual-purposeThe Trade Register Extract is both the source of structured data (AI-parsed) and a downloadable document. Company profile and legal representatives come from the same document.
Bilingual dataFinland is bilingual (Finnish and Swedish). Company names, activity descriptions, and legal forms may appear in either language in the Trade Register Extract. Commercial names may include Finnish, Swedish, and English variants.
Articles of Association availabilityArticles of Association are always listed as available but actual content depends on the company having filed them with PRH.
Legal form AI-enrichedLegal form standardization, English translation, and ISO 20275 assignment are AI-enriched. The local Finnish legal form name is always preserved from the Trade Register Extract.
Activity codes deterministicTOL codes are fetched from the YTJ API. NACE and ISIC codes are derived deterministically (TOL first 4 digits = NACE, then formal ISIC mapping). All activity codes have isAIInferred: false. Falls back to AI inference if the YTJ API does not return a TOL code.
VAT number formatThe VAT number in the identifiers uses the format without country prefix (e.g., 15055514), while the taxId object includes verification against VIES.
Incorporation dateSome companies return both registrationDate (Trade Register entry) and incorporationDate (company formation date), which may differ.

Mappings

Company Status

Company status is AI-parsed from the Trade Register Extract document. The AI extracts the current registration status and maps it to standardized status values.
Local StatusEnglish TranslationStandardized StatusNotes
RekisterissaRegisteredActiveCompany is currently registered and operating
ActiveActiveActiveAlternative status text in English-language extracts
LakkautettuDissolvedClosedCompany has been dissolved
SelvitystilassaIn LiquidationUnder Insolvency ProceedingLiquidation proceedings in progress
KonkurssissaIn BankruptcyUnder Insolvency ProceedingBankruptcy proceedings in progress
Rekisterista poistettuRemoved from RegisterClosedCompany has been removed from the Trade Register
Because status extraction is AI-parsed from the Trade Register Extract document, the exact local status text may vary. The AI maps Finnish or Swedish status descriptions to standardized values. The active boolean is derived from the statusDetails.status field.
Finland uses a variety of legal forms defined in the Trade Register. Legal form mapping is AI-enriched — the AI parser reads the legal form from the Trade Register Extract and maps it to standardized categories and ISO 20275 codes.

Key Business Forms

Finnish NameAbbreviationEnglish TranslationStandardizedNotes
OsakeyhtiöOyLimited CompanyLimited Liability CompanyMost common Finnish company type
Julkinen osakeyhtiöOyjPublic Limited CompanyCorporationListed or public company

Partnerships

Finnish NameAbbreviationEnglish TranslationStandardizedNotes
Avoin yhtiöAyGeneral PartnershipPartnershipAll partners jointly liable
KommandiittiyhtiöKyLimited PartnershipPartnershipAt least one general and one limited partner

Sole Proprietorships

Finnish NameAbbreviationEnglish TranslationStandardizedNotes
Yksityinen elinkeinonharjoittajaTmiSole TraderSole ProprietorshipIndividual business operator

Cooperatives

Finnish NameAbbreviationEnglish TranslationStandardizedNotes
OsuuskuntaOskCooperativeCooperativeMember-owned cooperative

Non-Profits & Foundations

Finnish NameEnglish TranslationStandardizedNotes
YhdistysAssociationNonprofit OrganizationRegistered association
SäätiöFoundationNonprofit OrganizationRegistered foundation

Branch Offices & European Forms

Finnish NameEnglish TranslationStandardizedNotes
SivuliikeBranchBranch or Representative OfficeBranch of a foreign company
Eurooppayhtiö (SE)European Company (SE)CorporationSocietas Europaea
Eurooppaosuuskunta (SCE)European Cooperative (SCE)CooperativeSocietas Cooperativa Europaea
Because legal form standardization and ISO 20275 assignment are AI-enriched, exact mappings may evolve. The local Finnish legal form name is always preserved verbatim from the Trade Register Extract.
Legal representatives are AI-parsed from the Trade Register Extract document. The AI extracts persons from sections such as “Hallitus” (Board), “Toimitusjohtaja” (CEO), and “Edustaminen” (Representation rules), and classifies them as legal representatives or other key persons.
Finnish RoleEnglish TranslationStandardized RoleClassification
Hallituksen puheenjohtaja / PuheenjohtajaChairman of the BoardChairman of the BoardLegal Representative
Jäsen (under Hallitus)Board MemberBoard MemberLegal Representative
ToimitusjohtajaChief Executive OfficerChief Executive OfficerLegal Representative
Varatoimitusjohtaja / Toimitusjohtajan sijainenDeputy CEODeputy CEOLegal Representative
Finnish RoleEnglish TranslationStandardized RoleClassification
Nimenkirjoittaja / NimenkirjoitusoikeusAuthorized SignatoryAuthorized SignatoryLegal Representative
Prokuristi / ProkuraProcuration HolderAuthorized SignatoryLegal Representative
The classification of each role as legal representative vs. other key person is AI-enriched and depends on the representation rules described in the “Edustaminen” section of the Trade Register Extract. Board members are included as legal representatives when the extract states that the board represents the company by law (e.g., “Lain nojalla yhtiötä edustaa hallitus”). Signatory rights (alone or jointly) are noted but do not affect extraction — all named signatories are included.

Enrichment from Trade Register Extract

The AI parser also extracts:
  • Start dates: From person-level “Rekisteröity DD.MM.YYYY” dates or section-level registration dates
  • Nationality: From “Voimassa olevat henkilötiedot” section (e.g., “Suomen kansalainen” = FI)
  • Residence: City and country from personal details section

Other Key Persons

Auditors (“Tilintarkastajat”) and deputy board members (“Varajäsen”) are excluded from the legal representative extraction. These roles are present in the Trade Register Extract but are not currently extracted as structured data.

Shareholders

The Finnish Trade Register (PRH) does not provide structured shareholder data. Individual shareholder information is not available through the PRH VIRRE API or the Trade Register Extract. Shareholder details may appear within the Articles of Association document if the company’s bylaws reference specific shareholders or share classes, but this is not extracted as structured data.
Finland’s Trade Register does not maintain a shareholder register. Share ownership information is held privately by each company. Only the total share capital and share classes are registered with PRH.

Activity Code Mapping

The official TOL (Toimialaluokitus) code is fetched from the YTJ open data API. NACE and ISIC codes are then derived deterministically — no AI inference is involved when TOL is available.
TOL (from YTJ API) → NACE Rev. 2 (deterministic) → ISIC Rev. 4 (formal mapping)
The derivation is straightforward: TOL codes at 4 digits are identical to NACE Rev. 2 class codes (5-digit TOL codes are truncated to 4 digits, as the 5th digit is a Finnish sub-class). ISIC is then derived from NACE using the official UN correspondence table.
ClassificationSourceExampleAI Inferred?
TOLYTJ API (official, assigned by Statistics Finland)47250No
NACEDerived from TOL (first 4 digits → XX.YY)47.25No
ISICDerived from NACE (formal UN mapping)4722No
Deterministic mapping: When the YTJ API returns a TOL code, all activity codes (TOL, NACE, ISIC) have isAIInferred: false. If the YTJ API does not return a TOL code for a given company, the system falls back to AI inference from the Finnish activity description text (in which case isAIInferred will be true).

Supported Entity Families

Entity FamilySupportedNotes
CompaniesOy, Oyj, Ay, Ky, Osk, SE, SCE — all commercial entity forms
Sole traders / entrepreneursTmi (Yksityinen elinkeinonharjoittaja)
Associations / organisationsYhdistys (associations), Säätiö (foundations)
Closed / dissolved entitiesLakkautettu (dissolved), Rekisterista poistettu (removed from register)

Data Availability

Data Availability Matrix

Data TypeAll Company TypesNotes
Company Profile✅ AsyncAI-parsed from Trade Register Extract (1-3 min)
Onboarding Profile✅ AsyncCompany profile + legal representatives in a single request
Legal Representatives✅ AsyncAI-parsed from Trade Register Extract (1-3 min)
ShareholdersNot available from PRH
Ultimate Beneficial Owners⚠️From PRH ESR register. Available for private limited companies (Oy). Not available for Oyj, state-owned, associations, foundations, or sole entrepreneurs.
EstablishmentsNot available from PRH
Activity CodesTOL from YTJ, NACE + ISIC derived deterministically
Employee CountNot available from PRH
Phone / WebsiteNot available from PRH
Commercial NamesFinnish, Swedish, and English name variants from PRH
Share CapitalAmount and currency from Trade Register Extract
VAT VerificationVerified against EU VIES system
Legend: ✅ Available | ❌ Not Available | ⚠️ Conditionally Available | Async = Asynchronous processing (1-3 min typical)
Why UBOs are not always available: Finnish law requires a natural person to hold >25% of shares or voting rights (or exercise other significant control) to be registered as a UBO. Public companies (Oyj) have dispersed ownership below this threshold. State-owned companies have no natural person owner. Associations, foundations, and cooperatives have no “owners” in the legal sense. Sole entrepreneurs (Tmi) are not separate legal entities from their owner, so UBO registration does not apply.

Documents by Company Type

All Finnish company types have the same documents available:
Document TypeAPI CategoryFormatSKUPriceNotes
Trade Register ExtracttradeRegisterExtractPDFfin-register-extractPaidOfficial kaupparekisteriote from PRH. Also used as source for AI-parsed company data.
Articles of AssociationarticlesOfAssociationPDFfin-article-of-associationPaidCompany bylaws (yhtiöjärjestys), share classes, governance rules.
Trade Register Extract Language: The Trade Register Extract is provided in Finnish (or Swedish for Swedish-registered companies). There is no English translation available from PRH. The AI parser handles Finnish/Swedish text extraction.
Both documents are always listed as available for any Finnish company. However, actual content depends on PRH having the document on file.

Example API Responses

All examples use placeholder data. Query: POST /company with { "id": "<id>", "countryCode": "FI", "dataPoints": ["companyProfile"] }
{
  "company": {
    "id": "1234567-8",
    "countryCode": "FI",
    "identifiers": { "businessId": "1234567-8", "VAT": "12345678" },
    "taxId": { "type": "eu_vat", "value": "12345678", "country": "FI", "verification": { "status": "verified", "verifiedName": "Esimerkki Teknologia Oy" } },
    "legalName": "Esimerkki Teknologia Oy",
    "commercialNames": ["Esimerkki Teknologia Oy", "Example Technology Ltd"],
    "registrationDate": "2019-06-15",
    "activityDescription": "Ohjelmistojen suunnittelu ja valmistus",
    "status": { "localName": "Active", "active": true, "statusDetails": { "status": "ACTIVE" } },
    "legalForm": { "localName": "Osakeyhtiö", "englishTranslation": "Limited Company", "standardized": "Limited Liability Company", "iso20275Code": "PPMX" },
    "capital": { "amount": 2500, "currency": "EUR", "formatted": "2 500,00 €" },
    "activities": {
      "TOL": [{ "code": "62010", "description": "Computer programming activities", "isAIInferred": false }],
      "NACE": [{ "code": "62.01", "description": "Computer programming activities", "isAIInferred": false }],
      "ISIC": [{ "code": "6201", "description": "Computer programming activities", "isAIInferred": false }]
    },
    "legalAddress": { "addressLine1": "Mannerheimintie 10", "city": "Helsinki", "postalCode": "00100", "countryCode": "FI" }
  },
  "legalRepresentatives": [
    { "type": "individual", "entityId": "person_001", "startDate": "2023-04-04", "role": { "localName": "Puheenjohtaja", "englishTranslation": "Chairman of the Board", "standardized": "Chairman of the Board" }, "individual": { "name": { "fullName": "Mikko VIRTANEN", "firstName": "Mikko", "lastName": "VIRTANEN" }, "birthDate": { "day": 15, "month": 3, "year": 1980 }, "nationality": "FI", "residenceAddress": { "city": "Helsinki", "countryCode": "FI" } } },
    { "type": "individual", "entityId": "person_002", "startDate": "2023-04-04", "role": { "localName": "Jäsen", "englishTranslation": "Board Member", "standardized": "Board Member" }, "individual": { "name": { "fullName": "Anna KORHONEN", "firstName": "Anna", "lastName": "KORHONEN" }, "birthDate": { "day": 22, "month": 7, "year": 1985 }, "nationality": "FI", "residenceAddress": { "city": "Espoo", "countryCode": "FI" } } },
    { "type": "individual", "entityId": "person_003", "startDate": "2019-06-15", "role": { "localName": "Toimitusjohtaja", "englishTranslation": "Chief Executive Officer", "standardized": "Chief Executive Officer" }, "individual": { "name": { "fullName": "Pekka MÄKELÄ", "firstName": "Pekka", "lastName": "MÄKELÄ" }, "birthDate": { "day": 1, "month": 11, "year": 1975 }, "nationality": "FI", "residenceAddress": { "city": "Helsinki", "countryCode": "FI" } } }
  ]
}
{
  "company": {
    "id": "9876543-1",
    "countryCode": "FI",
    "identifiers": { "businessId": "9876543-1", "VAT": "98765431" },
    "taxId": { "type": "eu_vat", "value": "98765431", "country": "FI", "verification": { "status": "verified", "verifiedName": "Suuri Teollisuus Oyj" } },
    "legalName": "Suuri Teollisuus Oyj",
    "commercialNames": ["Suuri Teollisuus Oyj", "Grand Industry Plc"],
    "registrationDate": "1990-03-20",
    "incorporationDate": "1985-11-01",
    "activityDescription": "Teollisuuskoneiden valmistus ja myynti",
    "status": { "localName": "Active", "active": true, "statusDetails": { "status": "ACTIVE" } },
    "legalForm": { "localName": "Julkinen osakeyhtiö", "englishTranslation": "Public Limited Company", "standardized": "Corporation", "iso20275Code": "J4FB" },
    "capital": { "amount": 500000, "currency": "EUR", "formatted": "500 000,00 €" },
    "activities": {
      "TOL": [{ "code": "28990", "description": "Manufacture of other special-purpose machinery n.e.c.", "isAIInferred": false }],
      "NACE": [{ "code": "28.99", "description": "Manufacture of other special-purpose machinery n.e.c.", "isAIInferred": false }],
      "ISIC": [{ "code": "2899", "description": "Manufacture of other special-purpose machinery", "isAIInferred": false }]
    },
    "legalAddress": { "addressLine1": "Teollisuuskatu 5", "city": "Espoo", "postalCode": "02150", "countryCode": "FI" }
  },
  "legalRepresentatives": [
    { "type": "individual", "entityId": "person_001", "startDate": "2022-05-10", "role": { "localName": "Puheenjohtaja", "englishTranslation": "Chairman of the Board", "standardized": "Chairman of the Board" }, "individual": { "name": { "fullName": "Jukka NIEMI", "firstName": "Jukka", "lastName": "NIEMI" }, "birthDate": { "day": 8, "month": 4, "year": 1968 }, "nationality": "FI", "residenceAddress": { "city": "Espoo", "countryCode": "FI" } } },
    { "type": "individual", "entityId": "person_002", "startDate": "2022-05-10", "role": { "localName": "Jäsen", "englishTranslation": "Board Member", "standardized": "Board Member" }, "individual": { "name": { "fullName": "Liisa HÄKKINEN", "firstName": "Liisa", "lastName": "HÄKKINEN" }, "birthDate": { "day": 30, "month": 9, "year": 1972 }, "nationality": "FI", "residenceAddress": { "city": "Helsinki", "countryCode": "FI" } } },
    { "type": "individual", "entityId": "person_003", "startDate": "2020-01-15", "role": { "localName": "Toimitusjohtaja", "englishTranslation": "Chief Executive Officer", "standardized": "Chief Executive Officer" }, "individual": { "name": { "fullName": "Markus LAINE", "firstName": "Markus", "lastName": "LAINE" }, "birthDate": { "day": 17, "month": 6, "year": 1970 }, "nationality": "FI", "residenceAddress": { "city": "Helsinki", "countryCode": "FI" } } }
  ]
}
Note: Public limited companies (Oyj) follow the same data structure as private limited companies (Oy). The incorporationDate may differ from registrationDate for older companies.
{
  "company": {
    "id": "5551234-7",
    "countryCode": "FI",
    "identifiers": { "businessId": "5551234-7", "VAT": "55512347" },
    "legalName": "Kauppa ja Palvelut Oy",
    "commercialNames": ["Kauppa ja Palvelut Oy"],
    "registrationDate": "2005-02-14",
    "activityDescription": "Tukkukauppa ja varastointi",
    "status": { "localName": "Active", "active": true, "statusDetails": { "status": "ACTIVE" } },
    "legalForm": { "localName": "Osakeyhtiö", "englishTranslation": "Limited Company", "standardized": "Limited Liability Company", "iso20275Code": "PPMX" },
    "capital": { "amount": 50000, "currency": "EUR", "formatted": "50 000,00 €" },
    "activities": {
      "TOL": [{ "code": "46900", "description": "Non-specialised wholesale trade", "isAIInferred": false }],
      "NACE": [{ "code": "46.90", "description": "Non-specialised wholesale trade", "isAIInferred": false }],
      "ISIC": [{ "code": "4690", "description": "Non-specialized wholesale trade", "isAIInferred": false }]
    },
    "legalAddress": { "addressLine1": "Satamakatu 12", "city": "Turku", "postalCode": "20100", "countryCode": "FI" }
  },
  "legalRepresentatives": [
    { "type": "individual", "entityId": "person_001", "startDate": "2023-06-01", "role": { "localName": "Puheenjohtaja", "englishTranslation": "Chairman of the Board", "standardized": "Chairman of the Board" }, "individual": { "name": { "fullName": "Heikki SALMINEN", "firstName": "Heikki", "lastName": "SALMINEN" }, "nationality": "FI" } },
    { "type": "individual", "entityId": "person_002", "startDate": "2023-06-01", "role": { "localName": "Toimitusjohtaja", "englishTranslation": "Chief Executive Officer", "standardized": "Chief Executive Officer" }, "individual": { "name": { "fullName": "Sari NIEMINEN", "firstName": "Sari", "lastName": "NIEMINEN" }, "nationality": "FI" } },
    { "type": "individual", "entityId": "person_003", "startDate": "2023-06-01", "role": { "localName": "Prokuristi", "englishTranslation": "Authorized Signatory", "standardized": "Authorized Signatory" }, "individual": { "name": { "fullName": "Timo LAHTINEN", "firstName": "Timo", "lastName": "LAHTINEN" }, "nationality": "FI" } }
  ]
}
Note: Procurists (prokura holders) are included as legal representatives with the standardized role “Authorized Signatory”. Signatory rules (alone or jointly) are not modeled as separate fields.
Query with "dataPoints": ["ultimateBeneficialOwners"] for Holvi Payment Services Oy (2193756-4):
{
  "request": {
    "companyId": "2193756-4",
    "countryCode": "FI",
    "requestId": "ca738be0-d117-4f41-8076-61f51e2a6b52",
    "dataStatus": {
      "dataPoints": {
        "ultimateBeneficialOwners": { "status": "succeeded" }
      }
    }
  },
  "ultimateBeneficialOwners": [
    {
      "entityId": "person_001",
      "nationality": "FI",
      "name": {
        "fullName": "Tuomas Matti Toivonen",
        "firstName": "Tuomas Matti",
        "lastName": "Toivonen"
      },
      "birthDate": { "day": 25, "month": 2, "year": 1976 },
      "residenceAddress": { "city": "Kauniainen", "countryCode": "FI" },
      "control": {
        "types": ["ownership-of-shares", "voting-rights"],
        "description": "Ownership: 100%. Voting rights: 100%. Role: ES",
        "details": [
          { "type": "shares", "percentageValue": 100, "nature": "direct" },
          {
            "type": "voting-rights",
            "percentageValue": 100,
            "nature": "direct"
          }
        ]
      }
    }
  ]
}
Note: UBO data comes from PRH’s ESR register (separate from Trade Register). Control types include ownership-of-shares (from ownershipExtent), voting-rights (from voteExtent), and significant-influence-or-control (from otherBeneficialOwnership). The residenceAddress.city is resolved from the Finnish municipality code (kuntanumero). Companies that declare no beneficial owners return an empty array. Public companies (Oyj), state-owned entities, associations, and foundations typically have no UBO data.
Query with "dataPoints": ["availableDocuments"]:
{
  "availableDocuments": [
    {
      "id": "doc-uuid-001",
      "sku": "fin-register-extract",
      "name": "Trade Register Extract",
      "type": "trade_register_extract",
      "format": "pdf",
      "description": "Trade register extract from the Finnish Business Registry (PRH)"
    },
    {
      "id": "doc-uuid-002",
      "sku": "fin-article-of-association",
      "name": "Article of Association",
      "type": "article_of_association",
      "format": "pdf",
      "description": "Article of Association from the Finnish Business Registry (PRH)"
    }
  ]
}
Note: Both documents are always listed as available for any Finnish company. The Trade Register Extract is the source document for AI-parsed company data.