Latvia Company Registry Scraper
Pricing
from $12.75 / 1,000 results
Latvia Company Registry Scraper
Look up Latvian companies by name or registration number and export their full profile: legal form, status, registered address, board members and officers, beneficial owners, shareholders and equity capital. 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
9 days ago
Last modified
Categories
Share
Latvia Company Registry Scraper
Here is one real result, with every field the actor returns:
{"name": "Akciju sabiedrība \"Kurzemes degviela\"","regNumber": "40003229495","status": "Active","legalForm": "Akciju sabiedrība","legalFormCode": "AS","registerType": "Komercreģistrs","registeredDate": "1994-11-22","terminatedDate": null,"address": "Saldus nov., Saldus pag., \"Torņi\"","postalIndex": "3862","sepaCode": "LV92ZZZ40003229495","officerCount": 1,"primaryOfficerName": "Lūsiņš Argods","primaryOfficerRole": "Chair Of Board","officers": ["Lūsiņš Argods - Chair Of Board"],"beneficialOwnerCount": 2,"primaryBeneficialOwner": "Argods Lūsiņš","primaryBeneficialOwnerNationality": "LV","beneficialOwners": ["Argods Lūsiņš - LV", "Antra Lūsiņa - LV"],"shareholderCount": 0,"shareholders": [],"capitalAmount": 2176655.4,"capitalCurrency": "EUR","capitalType": "Apmaksātais pamatkapitāls","financialYear": null,"employees": null,"revenue": null,"profitBeforeTax": null,"netIncome": null,"financialsCurrency": null,"matchedBy": "registrationNumber","sourceQuery": "40003245752, 40003229495","source": "Latvia Enterprise Register","observedAt": "2026-07-16T16:45:46.109Z","error": null}
Note: in the source, each
officersandbeneficialOwnersstring joins the name and role/nationality with a long dash (for exampleLūsiņš Argods [dash] Chair Of Board). It is shown here as a hyphen (-); the names and roles are unchanged. This company had no annual report on file, so the financial fields are genuinelynull.
The most complete Latvia company registry scraper available. It returns every field the Latvian Enterprise Register exposes per company, including officers, beneficial owners (UBO), shareholders, share capital and the latest annual-report financials, plus optional contact enrichment, searchable by name or registration number.
📥 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 searches the Latvian Enterprise Register (Uzņēmumu reģistrs) for each company name or registration number you pass, and writes one normalized record per company to the run's dataset. Each record includes the legal name, registration number, status, legal form, register type, registered and terminated dates, address and SEPA creditor ID, plus the full officer list, beneficial owners (UBO) with nationality, shareholders, share capital, and the latest annual-report financials (year, employees, revenue, profit before tax, net income). Missing source values are returned as null.
An optional contact-enrichment add-on (enrichContacts, paid) attempts to find a public business email and contact person for results without one, billed only when an email is found.
Quickstart
Open the actor, paste this into the input, and press Run. It looks up Swedbank in the Latvian register.
{"companyNames": ["Swedbank"],"maxCompanies": 10}
For exact, fast lookups pass registration numbers directly in registrationNumbers (for example 40003245752). You can combine names and registration numbers in a single run.
Input reference
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
companyNames | string[] | no | ["Swedbank"] | Company names or name fragments to search for. One run searches every name in the list. |
registrationNumbers | string[] | no | (empty) | Exact Latvian registration numbers (regcode) to fetch, for example 40003245752. Fastest and most precise. |
maxCompanies | integer | no | 20 | Maximum companies to return across the whole run. |
enrichContacts | boolean | no | false | Paid add-on. For results without an email, attempt to find a public business email and contact name. Billed per attempt, plus extra when an email is found. |
enrichContactsMax | integer | no | 50 | Cap how many results the enrichment add-on tries. Free Apify accounts are capped at 3. |
Output reference
One dataset item per company. Types: string, integer, number, string[], or null when the source value is absent.
| Field | Type | Description |
|---|---|---|
name | string | Company name. |
regNumber | string | Registration number (regcode). |
status | string | Company status, for example Active, Terminated. |
legalForm | string | Legal form name. |
legalFormCode | string | Legal form code, for example AS, SIA, FIL. |
registerType | string | Register the company sits in, for example Komercreģistrs. |
registeredDate | string | Registration date (YYYY-MM-DD). |
terminatedDate | string | Termination date, or null if active. |
address | string | Registered address. |
postalIndex | string | Postal index. |
sepaCode | string | SEPA creditor ID, or null. |
officerCount | integer | Number of officers / board members. |
primaryOfficerName | string | Primary officer name. |
primaryOfficerRole | string | Primary officer role. |
officers | string[] | Officers / board members (name and role). |
beneficialOwnerCount | integer | Number of beneficial owners (UBO). |
primaryBeneficialOwner | string | Primary beneficial owner name. |
primaryBeneficialOwnerNationality | string | Primary beneficial owner nationality (ISO code). |
beneficialOwners | string[] | Beneficial owners (name and nationality). |
shareholderCount | integer | Number of shareholders. |
shareholders | string[] | Shareholders. |
capitalAmount | number | Share capital amount, or null. |
capitalCurrency | string | Share capital currency, for example EUR. |
capitalType | string | Capital type. |
financialYear | integer | Year of the latest filed annual report, or null. |
employees | integer | Employees in the latest annual report, or null. |
revenue | number | Net turnover for the latest reported year, or null. |
profitBeforeTax | number | Income before taxes for the latest reported year, or null. |
netIncome | number | Net income (profit or loss) for the latest reported year, or null. |
financialsCurrency | string | Currency of the reported financials. |
matchedBy | string | How the record matched: companyName or registrationNumber. |
sourceQuery | string | The query that produced this record. |
source | string | Data source. Always the Latvia Enterprise Register. |
observedAt | string | ISO 8601 timestamp of when the record was collected. |
enrichedEmail | string | Public business email found by the enrichment add-on, or null. |
enrichedContactName | string | Contact person name found, or null. |
enrichedJobTitle | string | Contact job title, or null. |
enrichedEmailStatus | string | Email confidence: verified, likely, guessed, or not_found. |
enrichedSource | string | Where the enriched contact was found, or null. |
enrichedConfidence | number | Enrichment confidence score, or null. |
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":["airBaltic"],"registrationNumbers":["40003245752","40003229495"],"maxCompanies":10}). The officers and beneficialOwners strings joined name and role with a long dash in the source; shown here as a hyphen.
{"name": "Akciju sabiedrība \"Kurzemes degviela\"","regNumber": "40003229495","status": "Active","legalForm": "Akciju sabiedrība","legalFormCode": "AS","registerType": "Komercreģistrs","registeredDate": "1994-11-22","terminatedDate": null,"address": "Saldus nov., Saldus pag., \"Torņi\"","postalIndex": "3862","sepaCode": "LV92ZZZ40003229495","officerCount": 1,"primaryOfficerName": "Lūsiņš Argods","primaryOfficerRole": "Chair Of Board","officers": ["Lūsiņš Argods - Chair Of Board"],"beneficialOwnerCount": 2,"primaryBeneficialOwner": "Argods Lūsiņš","primaryBeneficialOwnerNationality": "LV","beneficialOwners": ["Argods Lūsiņš - LV", "Antra Lūsiņa - LV"],"shareholderCount": 0,"shareholders": [],"capitalAmount": 2176655.4,"capitalCurrency": "EUR","capitalType": "Apmaksātais pamatkapitāls","matchedBy": "registrationNumber","sourceQuery": "40003245752, 40003229495","source": "Latvia Enterprise Register","observedAt": "2026-07-16T16:45:46.109Z","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~latvia-companies-scraper/run-sync-get-dataset-items?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"registrationNumbers":["40003245752"],"maxCompanies":10}'
Start a run asynchronously:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~latvia-companies-scraper/runs?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"companyNames":["Air Baltic","Swedbank"],"maxCompanies":50}'
Apify CLI:
apify call scrapers_lat/latvia-companies-scraper \--input '{"companyNames":["Swedbank"],"maxCompanies":10}'
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. - Add-on billed separately. Contact enrichment is billed per attempt plus extra when an email is found.
- 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 10 records per run, and contact enrichment is capped at 3 attempts. Upgrade for higher
maxCompaniesand full enrichment.
FAQ and troubleshooting
A run returned 0 records. Why? The name or registration number matched nothing in the register. Check spelling, try a shorter name fragment, or use the exact regcode. Zero-result runs are not charged.
What is the fastest way to pull specific companies?
Pass their registration numbers in registrationNumbers. This skips the name search and matches exactly.
Do I get beneficial owners (UBO)?
Yes. beneficialOwners, beneficialOwnerCount, primaryBeneficialOwner and the nationality are captured for KYB and compliance workflows.
Why are the financial fields null?
The company had no annual report on file for a recent year. Financials populate when a filed annual report is available. Missing values are returned as null, never invented.
Can I get a contact email?
Turn on enrichContacts (paid). For each result without an email, the add-on attempts to find a public business email and contact name, with an enrichedEmailStatus confidence label.
Is this an official register tool? No. This actor is independent and has no affiliation with the Latvian Enterprise Register. It reads only data the register publishes publicly. Use it in accordance with the register's terms.
Related scrapers
- Belgium KBO Companies Scraper: Belgian company register with officers and addresses.
- Denmark CVR Companies Scraper: Danish company register with owners and financials.
- Finland Companies Scraper: Finnish business register profiles.
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 the Latvian Enterprise Register. Accesses only publicly available register data. Use in accordance with the register's terms.
