Estonia Company Registry API and MCP — Directors, Shareholders, VAT & Tax Standing
Send an Estonian registry code, or the link to the company on the e-Business Register, and you get the full company record as structured JSON: status, legal form, registered address, EUID, share capital, contact details, activities with EMTAK and NACE codes, directors, supervisory board, shareholders, beneficial owners and the data protection officer.
- You send
- An Estonian registry code or a link to the record on the register
- You get back
- Status, legal form, VAT, activities, directors, shareholders, beneficial owners, tax standing, financials, rulings and filed documents
- Coverage
- Estonia — entities on e-Business Register (Ariregister).
- Price
- 5 pts — $5 per 1,000
- Charged only when the record resolves. A lookup that finds nothing is not billed.
Ways to get this data
Three approaches teams use today, and where each one runs into trouble.
| Approach | What it takes | Cost | Trade-off |
|---|---|---|---|
| e-Business Register (Ariregister) directly | Open e-Business Register (Ariregister) and read the record | Usually free, sometimes per-document | A different interface, language and data shape for every country you add |
| Collecting it yourself | Build and host a crawler per register, then keep each one alive | Infrastructure and maintenance | Registers change their pages without warning, and nobody is on the hook when yours breaks |
| NeuralVerge | One request, the same shape as every other source in the catalog | $5 per 1,000, misses not billed | Covers Estonia — other countries are separate sources with the same request format |
What you get back
Every field in the example response below.
| Field | Type | Description |
|---|---|---|
company.registration_number | string | Estonian registry code. |
company.name | string | Registered company name. |
company.status | string | Register status, e.g. "Entered into the register". |
company.address | string | Registered address as one string. |
company.url | string | Link to the company on the register. |
company.company_type | string | Legal form, e.g. Private limited company. |
company.incorporation_date | string | Date of registration (YYYY-MM-DD). |
company.deletion_date | null | Deletion date; null in the sample because the company is active. |
company.euid | string | European Unique Identifier of the company. |
company.capital_eur | number | Share capital in euro. |
company.financial_year_period | string | Financial year start and end, as published. |
company.email | string | Contact e-mail on the register. |
company.phone | string | Contact phone on the register. |
company.activity | string | Principal activity, in words. |
company.emtak_code | string | EMTAK activity code of the principal activity. |
company.activities[] | array | Registered activities: activity, emtak_code, type (principal or secondary), nace_code and the report it comes from. |
company.directors[] | array | Management board members: name, role, start_date, end_date. |
company.supervisory_board[] | array | Supervisory board members with role, dates and a historic flag. |
company.invalid_names[] | array | Former names of the company. |
company.articles_of_association_amended | string | Date the articles were last amended. |
company.articles_of_association[] | array | Versions of the articles: effective_date, valid_until, status and a download link. |
company.representation_rule | string | Text of the rule on who may represent the company. |
company.vat_number | string | VAT number. |
company.vat_period | string | Current VAT registration period, as published. |
company.vat_history[] | array | Earlier and current VAT registrations with start and end dates. |
company.e_invoice | string | E-invoice operator details, as published. |
company.shareholders_total | number | Number of shareholders on the register. |
company.shareholders[] | array | Shareholders: name, registry_code, is_legal_entity, ownership_percent, contribution_amount, contribution_currency, ownership_type, dates and a historic flag. |
company.beneficial_owners[] | array | Beneficial owners: name, type of control, start and end dates, historic flag. |
company.beneficial_owners_updated | string | Date the beneficial-owner list was last updated. |
company.data_protection_officer[] | array | Data protection officer: name, valid_from, valid_until, email. |
company.tax_debt | boolean | Whether the company has a tax debt. |
company.tax_debt_note | string | The register's note on tax debt, with its date. |
company.tax_period | string | Quarter the tax figures refer to. |
company.state_taxes_eur | number | State taxes for that period, in euro. |
company.labour_taxes_eur | number | Labour taxes for that period, in euro. |
company.taxable_turnover_eur | null | Taxable turnover; null in the sample. |
company.employees | number | Employee count for the tax period. |
company.employees_by_year[] | array | Employees per reporting year with the principal activity. |
company.financials[] | array | Revenue and profit by year; profit can be null. |
company.annual_reports_total | number | Number of annual reports on file. |
company.documents_total | number | Number of documents on file. |
company.proceedings[] | array | Court proceedings: number, registration_date, status. |
company.rulings[] | array | Registrar rulings: number, type, date, status. |
company.entries[] | array | Register entries: entry_no, entry_type, date and the ruling it refers to. |
company.commercial_pledge_entries[] | array | Commercial pledge entries; empty in the sample. |
company.letters[] | array | Letters on file; empty in the sample. |
company.capital_remarks[] | array | Remarks on changes to the capital, in Estonian. |
company.notations[] | array | Notations on the register card: entry_no, card_column, contents. |
blocked | boolean | True when the register could not be read. |
pages_opened | number | Register pages read for this lookup. |
Example response
A real response, as returned.
{
"session_id": "11111111-1111-1111-1111-111111111111",
"kind": "ee_company",
"company": "12417834",
"company_id": "12417834",
"human": "# Estonia — e-Business Register — company\n\n- **Number:** 12417834\n- **Pages opened:** 4\n- **Proxy traffic:** 1.20 MB\n- **Name:** Bolt Technology OÜ\n- **Status:** Entered into the register\n- **Type:** Private limited company\n- **Registered:** 2013-02-07\n- **Address:** Harju maakond, Tallinn, Kesklinna linnaosa, Vana-Lõuna tn 15, 10134",
"machine": {
"company": {
"registration_number": "12417834",
"name": "Bolt Technology OÜ",
"status": "Entered into the register",
"address": "Harju maakond, Tallinn, Kesklinna linnaosa, Vana-Lõuna tn 15, 10134",
"url": "https://ariregister.rik.ee/eng/company/12417834",
"company_type": "Private limited company",
"incorporation_date": "2013-02-07",
"deletion_date": null,
"euid": "EEARIREG.12417834",
"capital_eur": 31324039,
"financial_year_period": "01.01 - 31.12",
"email": "registry.notices@bolt.eu",
"phone": "+372 56645297",
"activity": "Other information technology and computer service activities",
"emtak_code": "62901",
"activities": [
{
"activity": "Other information technology and computer service activities",
"emtak_code": "62901",
"type": "Principal activity",
"nace_code": "62.90",
"source": "Annual report (24.06.2026)"
},
{
"activity": "Leasing of intellectual property and similar products, except copyrighted works",
"emtak_code": "77401",
"type": "Secondary activity",
"nace_code": "77.40",
"source": "Annual report (24.06.2026)"
}
],
"directors": [
{
"name": "Markus Villig",
"role": "Management board member",
"start_date": "2013-02-07",
"end_date": null
},
{
"name": "Ahto Kink",
"role": "Management board member",
"start_date": "2021-08-06",
"end_date": null
}
],
"invalid_names": [
"Taxify OÜ",
"MTAKSO OÜ"
],
"articles_of_association_amended": "2025-03-04",
"e_invoice": "Telema, Telema AS (10584597) PEPPOL (updated on 05.10.2026)",
"vat_number": "EE102090374",
"vat_period": "01.05.2026 - ..",
"vat_history": [
{
"vat_number": "EE102090374",
"start_date": "2026-05-01",
"end_date": null,
"end_registered_date": null
},
{
"vat_number": "EE102090374",
"start_date": "2018-12-01",
"end_date": "2026-04-30",
"end_registered_date": "2026-04-17"
}
],
"annual_reports_total": 14,
"documents_total": 285,
"financials": [
{
"year": 2025,
"revenue": 2270854000,
"profit": null
},
{
"year": 2024,
"revenue": 0,
"profit": -213227000
}
],
"articles_of_association": [
{
"effective_date": "2025-03-04",
"valid_until": null,
"approval_date": null,
"status": "Valid",
"download_url": "https://ariregister.rik.ee/eng/company/12417834/file/9012654873"
},
{
"effective_date": "2022-01-14",
"valid_until": "2025-03-04",
"approval_date": "2021-12-20",
"status": "Expired",
"download_url": "https://ariregister.rik.ee/eng/company/12417834/file/9008619813"
}
],
"representation_rule": "Every member of the Management Board may represent the private limited company in concluding all transactions.",
"special_representation_conditions": [],
"shareholders_total": 183,
"shareholders": [
{
"name": "Mordor Management OÜ",
"registry_code": "14166520",
"is_legal_entity": true,
"ownership_percent": 14.25,
"contribution_amount": 4463282,
"contribution_currency": "EUR",
"ownership_type": "Sole ownership",
"start_date": "2025-06-18",
"end_date": null,
"historic": false
},
{
"name": "D1 Master Holdco I LLC",
"registry_code": "3210422",
"is_legal_entity": true,
"ownership_percent": 14.09,
"contribution_amount": 4414192,
"contribution_currency": "EUR",
"ownership_type": "Sole ownership",
"start_date": "2022-01-06",
"end_date": null,
"historic": false
}
],
"supervisory_board": [
{
"name": "Martin Villig",
"role": "Chairman of the supervisory board",
"start_date": "2021-08-06",
"end_date": null,
"historic": false
},
{
"name": "Niall Fraser Wass",
"role": "Member of the supervisory board",
"start_date": "2026-06-19",
"end_date": null,
"historic": false
}
],
"beneficial_owners": [
{
"name": "Markus Villig",
"control": "Control or influence through other means (contractual, family relations etc)",
"start_date": "2022-04-13",
"end_date": null,
"historic": false
}
],
"beneficial_owners_updated": "2026-06-24",
"data_protection_officer": [
{
"name": "Gabrielė Kaveckytė",
"valid_from": "2026-06-15",
"valid_until": null,
"email": "privacy@bolt.eu"
}
],
"tax_debt": false,
"tax_debt_note": "The legal person has no tax debt as of 06.10.2026.",
"tax_period": "II quarter of 2026",
"state_taxes_eur": 6629497,
"labour_taxes_eur": 7169940,
"taxable_turnover_eur": null,
"employees": 625,
"proceedings": [
{
"number": "46356130",
"registration_date": "2026-09-04",
"status": "Dissolved"
},
{
"number": "46336622",
"registration_date": "2026-08-11",
"status": "Dissolved"
}
],
"rulings": [
{
"number": "Ä 10179055 / M13",
"type": "Ruling",
"date": "2026-07-29",
"status": "Entered into force (29.07.2026)",
"entry_into_force_or_deadline": null
},
{
"number": "Ä 10179055 / M12",
"type": "A ruling on the elimination of the deficiencies to correct external entry data",
"date": "2026-07-22",
"status": "The deficiencies have been rectified (29.07.2026)",
"entry_into_force_or_deadline": "Additional term 05.08.2026"
}
],
"entries": [
{
"entry_no": 50,
"entry_type": "Amending entry",
"date": "2026-06-03",
"ruling_number": "Ä 10179055 / 50",
"ruling_type": "Entry"
},
{
"entry_no": 49,
"entry_type": "Amending entry",
"date": "2026-01-06",
"ruling_number": "Ä 10179055 / 49",
"ruling_type": "Entry"
}
],
"commercial_pledge_entries": [],
"letters": [],
"capital_remarks": [
"29.09.2017 osanike otsusega vähendati osakapitali 2900 euro võrra ja samaaegselt suurendati 61 529 euro võrra."
],
"employees_by_year": [
{
"period_start": "2025-01-01",
"period_end": "2025-12-31",
"principal_activity": "Other information technology and computer service activities",
"employees": 4245
}
],
"notations": [
{
"entry_no": 5,
"card_column": "6",
"contents": "Aadressiandmed on muudetud äriseadustiku § 511¹ ning regionaalministri 19. juuni 2013. a määruse nr 6 „Kohanime vormistamise ja kasutamise kord” alusel."
}
]
},
"blocked": false,
"pages_opened": 4,
"proxy_traffic_bytes": 1259842
},
"total_points": 5
}How to run it
The same lookup works from the app, the API, or as a tool an agent can call mid-task.
One company per request. Pass the registration number or the link to the record on the register.
curl -X POST https://api.neuralverge.ai/functions/v1/run-ee-companies \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"company":"12417834"}'What teams use it for
Where this field shows up in an actual workflow.
Confirm that an Estonian counterparty is registered, who may represent it and who owns it, before you contract.
Pull shareholders and beneficial owners, with start dates and a historic flag, in the same call as the signing rules.
Check the VAT number, VAT history and the register's tax-debt note for a supplier or customer.
Read revenue and profit by year, employee counts and the list of rulings and proceedings for a target company.
Coverage, freshness and limits
What this source covers, how fresh it is, and where it stops.
Estonia — entities on e-Business Register (Ariregister).
Read at request time, so the answer reflects the register as it stands when you ask.
e-Business Register (Ariregister) is a public register. Every response carries the source URL it was read from and a session id you can trace.
- —Looks up one company per request by registry code or register link. For a name, use the Estonia company search source first.
- —Financial figures such as profit can be null when the register does not show them; the sample has a null profit for 2025.
- —Free-text fields such as capital remarks and notations come back in Estonian.
Questions, answered
Not on this source. It takes a registry code or a register link. Use Estonia company search to find the registry code from a name, then send the code here.
Related sources
Try ariregister company on your own data
One request format across every source in the catalog.