Iceland Company Registry Scraper (Kennitala, VAT, Directors)
Pricing
from $12.75 / 1,000 results
Iceland Company Registry Scraper (Kennitala, VAT, Directors)
Look up Icelandic companies by name or kennitala and get registration ID, legal form, registered and postal address, municipality, ISAT activity, VAT (VSK) number and directors. Export to JSON, CSV or Excel.
Pricing
from $12.75 / 1,000 results
Rating
0.0
(0)
Developer
Scrapers Lat
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
18 days ago
Last modified
Categories
Share
Iceland Company Registry Scraper (Kennitala, VAT, Directors)
Here is one real result, with every field the actor returns (annual-statement history trimmed for length, kept real):
{"kennitala": "4612023490","name": "Icelandair ehf.","status": "active","legalForm": "Einkahlutafélag (ehf)","legalFormCode": "E1","registeredAddress": "Flugvöllum 1, 221 Hafnarfjörður","postalAddress": "Flugvöllum 1, 221 Hafnarfjörður","municipality": "Hafnarfjörður","municipalityCode": "1400","vatNumber": "77630","vatRegisteredDate": "01.01.2003","isatCode": "51.10.1","isatActivity": "Farþegaflutningar með áætlunarflugi","isatCodes": ["51.10.1"],"registeredDate": "09.12.2002","directors": ["Guðmundur Hafsteinsson - stjórnarformaður"],"directorsCount": 1,"beneficialOwners": [{ "name": "Bogi Nils Bogason", "birthDate": "1969-APRÍL", "residenceCountry": "Ísland", "citizenship": "Ísland", "ownershipPercent": "-", "ownershipType": "Beint ákvörðunarvald" }],"beneficialOwnersCount": 1,"annualStatements": [{ "year": "2025", "submittedDate": "29.04.2026", "type": "Ársreikningur" },{ "year": "2024", "submittedDate": "22.09.2025", "type": "Ársreikningur" },{ "year": "2023", "submittedDate": "02.05.2024", "type": "Ársreikningur" }],"latestAnnualStatementYear": 2025,"formerNames": [],"url": "https://www.skatturinn.is/fyrirtaekjaskra/leit/kennitala/4612023490","queryInput": "Icelandair","aiCompanySummary": null,"aiRiskLevel": null,"aiRiskFlags": null,"source": "Iceland Company Registry","observedAt": "2026-08-14T09:41:00.000Z","error": null}
The most complete Iceland company registry scraper available. It returns every field the official registry exposes per company, including VAT (VSK) registration, ISAT activity, directors, disclosed beneficial owners and the full annual-accounts filing history, plus optional contact enrichment and AI KYB add-ons.
📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples
Table of contents
- What it does
- Quickstart
- Input reference
- Output reference
- Example output record
- Run via API and CLI
- Fetch results
- Billing and limits
- FAQ and troubleshooting
What it does
The actor looks up Icelandic companies on the official company registry (fyrirtækjaskrá) by name or kennitala, opens each company's detail page, and writes one normalized record per company to the run's dataset. Each record carries the company identity (kennitala, name, status, legal form), registered and postal address, municipality, ISAT activity codes, VAT (VSK) number and registration date, directors, disclosed beneficial owners (with birth year/month, residence, citizenship, ownership share and control type) and the complete annual-accounts filing history. It reads only publicly available registry data (no account or key required).
Optional add-ons find a public business contact email and name for each company, and use AI to produce a KYB summary and due-diligence risk flags.
Quickstart
Open the actor, paste this into the input, and press Run. It searches the registry for Icelandair and Marel and returns up to 2 full company records.
{"companyNames": ["Icelandair", "Marel"],"maxCompanies": 2}
You can also fetch companies directly by kennitalaNumbers (10-digit ID). At least one of companyNames or kennitalaNumbers is required.
Input reference
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
companyNames | string[] | conditional | (empty) | One or more company names or partial names to search, for example ["Marel", "Icelandair"]. Every match is expanded to a full record. |
kennitalaNumbers | string[] | conditional | (empty) | One or more 10-digit kennitala IDs, with or without a hyphen, for example ["6204830369"]. Each is fetched directly. |
maxCompanies | integer | no | 30 | Maximum company records to collect across all searches and lookups. Free Apify plans are capped at 25 per run. |
enrichContacts | boolean | no | false | Paid add-on. For results without an email, attempt to find a public business contact email and name. Billed per attempt, plus an extra charge only when an email is found. |
enrichContactsMax | integer | no | 50 | Cap how many results the contact add-on tries to enrich. Free Apify accounts are capped at 3. |
withCompanySummary | boolean | no | false | Paid add-on. AI KYB summary of each company (aiCompanySummary). Paid plans only, billed per record produced. |
withRiskFlags | boolean | no | false | Paid add-on. AI due-diligence risk level and red flags (aiRiskLevel, aiRiskFlags). Paid plans only, billed per record produced. |
At least one of companyNames or kennitalaNumbers must be supplied, or the run returns a single item with an error field.
Output reference
One dataset item per company. Types: string, integer, boolean, string[], object[], or null when the source value is absent.
| Field | Type | Description |
|---|---|---|
kennitala | string | 10-digit company ID number. |
name | string | Company name. |
status | string | active, inactive, or null when unknown. |
legalForm | string | Legal form label, for example Einkahlutafélag (ehf). |
legalFormCode | string | Legal form code, for example E1. |
registeredAddress | string | Registered (legal) address. |
postalAddress | string | Postal address. |
municipality | string | Municipality name. |
municipalityCode | string | Municipality code. |
vatNumber | string | Active VAT (VSK) number, else null. |
vatRegisteredDate | string | VAT registration date (DD.MM.YYYY). |
isatCode | string | Primary ISAT activity code. |
isatActivity | string | Primary ISAT activity description. |
isatCodes | string[] | All ISAT activity codes listed. |
registeredDate | string | Company registration date (DD.MM.YYYY). |
directors | string[] | Directors/officers with role labels. |
directorsCount | integer | Number of directors listed. |
beneficialOwners | object[] | Disclosed beneficial owners: name, birthDate, residenceCountry, citizenship, ownershipPercent, ownershipType. |
beneficialOwnersCount | integer | Number of beneficial owners disclosed. |
annualStatements | object[] | Annual-accounts filing history: year, submittedDate, type. |
latestAnnualStatementYear | integer | Most recent filed annual-statement year, else null. |
formerNames | string[] | Previous company names on record. |
url | string | Registry detail page URL. |
queryInput | string | The input term that matched this company. |
enrichedEmail | string | Contact email found by the add-on (only when enrichContacts is on), else absent. |
enrichedContactName | string | Contact person name found by the add-on, else absent. |
enrichedJobTitle | string | Contact job title found by the add-on, else absent. |
enrichedEmailStatus | string | Verification status of the found email, else absent. |
enrichedConfidence | string | Confidence label for the found contact, else absent. |
enrichedSource | string | Where the contact was found, else absent. |
aiCompanySummary | string | AI KYB summary (paid add-on), else null. |
aiRiskLevel | string | AI risk level low/medium/high (paid add-on), else null. |
aiRiskFlags | string[] | AI due-diligence red flags (paid add-on), else null. |
source | string | Always Iceland Company Registry. |
observedAt | string | ISO 8601 timestamp of when the record was collected. |
error | string | null on success. On a failed run, a single item with a populated error field is written instead. |
Example output record
Real record from a live run (input {"companyNames":["Icelandair","Marel"],"maxCompanies":2,"withCompanySummary":true,"withRiskFlags":true}). Annual history trimmed for length, all values real:
{"kennitala": "4612023490","name": "Icelandair ehf.","status": "active","legalForm": "Einkahlutafélag (ehf)","legalFormCode": "E1","registeredAddress": "Flugvöllum 1, 221 Hafnarfjörður","municipality": "Hafnarfjörður","vatNumber": "77630","vatRegisteredDate": "01.01.2003","isatCode": "51.10.1","isatActivity": "Farþegaflutningar með áætlunarflugi","registeredDate": "09.12.2002","directors": ["Guðmundur Hafsteinsson - stjórnarformaður"],"directorsCount": 1,"beneficialOwners": [{ "name": "Bogi Nils Bogason", "birthDate": "1969-APRÍL", "residenceCountry": "Ísland", "citizenship": "Ísland", "ownershipPercent": "-", "ownershipType": "Beint ákvörðunarvald" }],"beneficialOwnersCount": 1,"latestAnnualStatementYear": 2025,"url": "https://www.skatturinn.is/fyrirtaekjaskra/leit/kennitala/4612023490","queryInput": "Icelandair","aiCompanySummary": "Icelandair ehf. is an active company registered in Hafnarfjörður, Iceland, established on December 9, 2002, and operates as a limited liability company (einkahlutafélag). The company is engaged in passenger transportation by scheduled flights and is VAT registered. It has one director, Guðmundur Hafsteinsson, serving as the chairman, and one disclosed beneficial owner, Bogi Nils Bogason. The latest annual statement is for the year 2025, with a total of 37 annual statements on file.","aiRiskLevel": "low","aiRiskFlags": [],"source": "Iceland Company Registry","observedAt": "2026-08-14T09:41:00.000Z","error": null}
Run via API and CLI
Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.
Run synchronously and get dataset items in one call:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~iceland-companies-scraper/run-sync-get-dataset-items?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"companyNames":["Marel"],"maxCompanies":10}'
Start a run asynchronously:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~iceland-companies-scraper/runs?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"kennitalaNumbers":["4612023490"]}'
Apify CLI:
apify call scrapers_lat/iceland-companies-scraper \--input '{"companyNames":["Icelandair"],"withCompanySummary":true}'
Fetch results
Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:
# JSONcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"# CSVcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"# Paginate large datasetscurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"
<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.
Billing and limits
- Pay per result. You are charged per company record returned (
resultevent). See the pricing tab for the current per-result price. - Paid add-ons. Contact enrichment and the AI add-ons (
ai_company_summary,ai_risk_flags) charge separate events only when they produce output, and are disabled or capped for free plans. - No charge on failure. If a run errors, the actor writes a single item with a populated
errorfield and does not charge for it. Empty runs cost nothing. - Spend cap respected. Set
maxTotalChargeUsdon the run; once reached, the actor stops emitting and charging further billable results. - Free Apify plans are capped at 25 company records per run, and contact enrichment is capped at 3 results. Upgrade for more.
FAQ and troubleshooting
A run returned an error item asking for input. Why?
You must provide at least one of companyNames or kennitalaNumbers. That error item is not charged.
What are beneficial owners here? The ultimate individuals who own or control the company (raunverulegir eigendur), as disclosed to the registry, with birth year/month, residence, citizenship, ownership share and control type. High-value KYB/AML data.
Why is ownershipPercent a dash?
The registry publishes a control type without a numeric share for some owners; missing source values are returned as recorded, never invented.
Can I get financial figures? This actor returns the annual-accounts filing history (which years were filed and when), not the figures themselves. For structured financials use a dedicated financials scraper where available.
Is this an official government tool? No. This actor is independent and has no affiliation with Skatturinn or the Icelandic government. It reads only data that is publicly available on the registry. Use it in accordance with the source's terms.
Related scrapers
- Finland Companies Scraper: Finnish company registry records.
- Norway Companies Scraper: Norwegian company registry records.
- Denmark CVR Companies Scraper: Danish company registry records.
- Estonia Business Register Scraper: Estonian company registry and financials.
- GLEIF LEI Company Records Scraper: global Legal Entity Identifier records.
More scrapers at scrapers.lat
Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.
Independent tool, not affiliated with Skatturinn or the Icelandic government. Accesses only publicly available company registry data. Use in accordance with the source's terms of service.
