Finnish Company Data

Look up a Finnish company at the Finnish Patent and Registration Office (PRH) by business ID or name.

Pay by wallet (x402) Finland: all company records finnish-company-data

Example

Input
{
  "company_name": "Nokia Oyj"
}
Answer
{
  "status": "active",
  "address": "Karakaari, 7, 02610 ESBO",
  "website": "www.nokia.com",
  "business_id": "0112038-9",
  "company_name": "Nokia Oyj",
  "business_type": "Public limited company",
  "industry_code": "70100",
  "registration_date": "1896-12-19",
  "industry_description": "Activities of head offices"
}

Inputs

FieldTypeRequiredWhat it is
namestringNoAlias for company_name
taskstringNoFree-text alias — business ID or company name
querystringNoFree-text alias — business ID or company name
org_numberstringNoAlias for business_id
business_idstringNoFinnish Business ID (e.g. 0112038-9)
company_namestringNoFinnish company name (resolved via scored PRH search)

Output fields

How reliably each field appears in a successful answer.

FieldTypeAppears
statusone of active, inactive, bankrupt, liquidation, restructuring, pending, unknownAlways (present in every successful answer)
addressstringUsually (present for most inputs)
websitestring or nullSometimes (present only for some inputs)
vat_numberstring or nullAlways (present in every successful answer)
business_idstringAlways (present in every successful answer)
company_namestringAlways (present in every successful answer)
business_typestringAlways (present in every successful answer)
industry_codestringAlways (present in every successful answer)
registration_datestringAlways (present in every successful answer)
industry_descriptionstring or nullUsually (present for most inputs)
match_confidence—Sometimes (present only for some inputs)
matched_registry_name—Sometimes (present only for some inputs)

How to call it

The same tool through each route. MCP clients reach it through Strale’s server at https://api.strale.io/mcp; the call below is what the agent sends.

# Needs an API key. max_price_cents caps what this call may cost.
curl -X POST https://api.strale.io/v1/do \
  -H "Authorization: Bearer $STRALE_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "capability_slug": "finnish-company-data",
    "inputs": {
      "company_name": "Nokia Oyj"
    },
    "max_price_cents": 5
  }'

Limitations

  • Official registry data access

    Data comes from the official registry's public API under its open-data terms (https://avoindata.prh.fi/en); results carry the registry as their source.

  • Registry status interpretation

    Status uses Business ID status and dissolution endDate, not Trade Register membership. Current KONK, SELTILA and SANE situations distinguish bankruptcy, liquidation and restructuring; ended situations are ignored.

  • Sole traders without a business ID are not covered

    Does not cover sole traders (toiminimi) without a separate business ID, a coverage gap of about 10%.

    What to do instead: Search the YTJ register (ytj.fi) by the trader's personal name to find toiminimi entries without a Y-tunnus

  • Financial figures can be up to 12 months old

    Financial data from annual reports — can be up to 12 months old

    What to do instead: Check the report_date field and query PRH's financial statement database for the most recent filing

  • Name search requires the registered Finnish spelling

    PRH's name search does not fold diacritics — "Mehilainen" finds nothing while "Mehiläinen" matches. ASCII-typed names for companies with ä/ö/å in their registered name will be refused rather than resolved.

    What to do instead: Type the company name with its native spelling, or provide the Business ID directly (e.g. 0112038-9)

  • Bare brands may not match the full registered name

    Name matching is deliberately conservative — a single-word query only resolves when the registered name normalises to exactly that word ("Nokia" → Nokia Oyj works; "Nordea" is refused because the registered name is "Nordea Bank Abp"). Companies whose legal name carries descriptive words beyond the brand are refused from a bare brand query rather than guessed.

    What to do instead: Provide more of the legal name ("Nordea Bank") or the Business ID directly