Understanding the Finnish Trade Register: A Developer's Guide
The Finnish Trade Register, maintained by the Patent and Registration Office (PRH), is the authoritative source of truth for company information in Finland. Understanding how its data is structured is key to building reliable B2B applications on top of it.
The YTJ data model
The Yritys- ja Yhteisötietojärjestelmä (YTJ) is the publicly accessible system that contains the business ID (Y-tunnus) of all registered Finnish businesses. Each company in YTJ has:
- businessId — a unique identifier in the format
XXXXXXX-X(7 digits, dash, 1 check digit) - name — can have multiple historical entries with registration dates
- registrationDate — when the company was first registered
- companyForms — the legal form (Osakeyhtiö, Avoin yhtiö, etc.)
- addresses — registered and visiting addresses with postal codes
- businessLines — TOL 2008 classification codes
The Y-tunnus check digit
The check digit is computed using a weighted modulo algorithm. Optiva validates Y-tunnuses client-side before hitting the API, saving unnecessary network requests.
Digits: d1 d2 d3 d4 d5 d6 d7
Weights: 7 9 10 5 8 4 2
Sum = d1*7 + d2*9 + d3*10 + d4*5 + d5*8 + d6*4 + d7*2
Remainder = Sum mod 11
Check = (11 - Remainder) mod 11
If Check equals 1, the Y-tunnus is invalid.
Pro-registry data
Beyond YTJ, the PRH Trade Register contains richer information not available through the public YTJ API:
- Board members and signatories — with personal IDs (masked in public access)
- Share capital and share classes
- Auditors
- Beneficial ownership (actual beneficiaries)
Optiva accesses this data through a combination of the PRH Open Data API and our licensed data feed.
How we handle data freshness
Finnish registry data changes continuously. We run a scheduled sync that:
- Pulls the PRH bulk export (updated nightly)
- Cross-references with our local D1 database
- Updates changed records using a content hash comparison
- Triggers monitoring alerts for watched companies
This means Optiva’s data is typically no more than 24 hours old — and for critical lookups, we offer a live passthrough to the PRH API.
Ready to integrate? Our API documentation is available for all registered developers.