Skip to main content

Data Sources

Hungary uses two distinct registries depending on the entity type:

Commercial Companies: OCCSZ

The OCCSZ (Országos Cégnyilvántartó és Céginformációs Szolgálat, National Company Register and Company Information Service) operates the official Hungarian company register (Cégjegyzék):
  • OCCSZ XML API: A paid, authenticated XML API providing company search by name, registration number, and tax number. Returns structured XML with company name, registration number, address, tax number, and status.
  • Trade Register Extract (Cégkivonat): A comprehensive PDF document purchased from the OCCSZ API for each company. This is the primary source for all structured company profile data. The PDF is parsed deterministically to extract: legal name, legal form, registration date, share capital, tax number, registered address, legal representatives, auditors, supervisory board members, shareholders, activity codes (TEÁOR), establishments, and company status.
Company profile is derived from the Trade Register Extract. The TRE PDF is purchased from the OCCSZ API, then parsed deterministically. AI enrichment is applied in parallel for address parsing, legal form standardization (ISO 20275), and role classification.

Sole Traders: NAV EVNY

The NAV EVNY (Egyéni Vállalkozók Nyilvántartása, Sole Traders Registry) is operated by the Hungarian Tax Authority (NAV). This is a separate registry from the Cégjegyzék.
  • EVNY Web API: A JSON API behind reCAPTCHA, providing search by registration number (Nyilvántartási szám, 8 digits) or tax number (Adószám, 8 digits). Returns structured JSON with the trader’s name, address, activity codes, status, and registration dates.
  • EVNY Extract: A screenshot-based PDF of the EVNY registry page, available as a document for sole traders.
Sole trader profiles are fully deterministic, no AI needed. The EVNY API returns structured JSON, so all data is mapped directly to domain objects without any AI enrichment (except address geocoding).

Company Identifiers

Query Identifiers

IdentifierSourceFormatExampleNotes
Cégjegyzékszám (Registration number)OCCSZ10 digits (hyphens stripped)0109430929Primary company identifier. Hyphens accepted but removed internally (e.g., 01-09-430929 becomes 0109430929)
Nyilvántartási szám (Sole trader reg. number)EVNY8 digits57478665Primary sole trader identifier. Automatically routes to EVNY
Adószám (Tax number)Both8-11 digits (hyphens stripped)32565144241Full format: XXXXXXXX-X-XX. First 8 digits used for registry search. Searches both OCCSZ and EVNY
VATVIESHU + 8 digitsHU32565144Automatically stripped to 8-digit VAT value for VIES validation
Tax Number Format Breakdown: 32565144-2-41 = 32565144 (company serial number) + 2 (VAT status: 1=VAT free, 2=normal VAT, 4/5=group taxpayers) + 41 (tax office code)

Identifiers in API Response

Once you retrieve company data, the identifiers object contains all available identifiers for that entity:
Identifier TypeFormatExampleNotes
registrationNumber10 digits0109430929Always present. Hyphens stripped
taxNumberUp to 13 characters32565144241Present when available in the TRE
VAT8 digits32565144First 8 digits of tax number, present when tax number is available
EUIDAlphanumericHUOCCSZ.0109430929European Unique Identifier, when available in the TRE (§60)

Search Capabilities

Search TypePatternExampleMatch TypeExpected Results
By Cégjegyzékszám10 digits0109430929ExactSingle company (1 result)
By Nyilvántartási szám8 digits57478665ExactSingle sole trader (1 result, from EVNY)
By Adószám (8 digits)8 digits32565144ExactCompany and/or sole trader (searches both OCCSZ and EVNY in parallel)
By Adószám (11 digits)11 digits32565144241ExactSingle company (first 8 digits used)
By Adószám (with hyphens)XXXXXXXX-X-XX32565144-2-41ExactSingle company (hyphens stripped, first 8 digits used)
By VAT numberHU + 8 digitsHU32565144ExactSingle company (HU prefix stripped, 8 digits extracted)
By company nameText string"bolttech Services"ContainsMultiple results (OCCSZ only; EVNY does not support name search)
8-digit queries search both registries. A pure 8-digit input is ambiguous (could be a sole trader registration number or a tax number), so it is searched in both OCCSZ (by tax number) and EVNY (by both registration number and tax number) in parallel. Results are deduplicated.

Company Profile

For the companyProfile endpoint, use the 10-digit Cégjegyzékszám for companies or the 8-digit Nyilvántartási szám for sole traders:
  • Company: 0109430929, 0106216884, 01-09-430929
  • Sole trader: 57478665, 59173988

Company Status

Company status is determined deterministically from the Trade Register Extract. No AI inference is involved for status determination.

Status Logic

Status is determined in priority order from the Trade Register Extract:
PriorityConditionLocal StatusStandardized StatusNotes
1§1 has “Törlés hatálya” (deletion date)Törölve (reason)ClosedChecked first. Company was deleted from registry
2Name contains “végelszámolás” in quotesvégelszámolás alattClosedVoluntary dissolution in progress
3Name contains “felszámolás” in quotesfelszámolás alattUnder Insolvency ProceedingBankruptcy/insolvency proceedings
4Name contains “kényszertörlés” in quoteskényszertörlés alattClosedAdministrative dissolution in progress
5Name contains “szerkezetátalakítás” in quotesszerkezetátalakítás alattActiveStructural transformation (company remains active)
6No closure markersHatályosActiveDefault. Company is active

Closure Reasons

When status is Closed, the closure reason is derived from the “Megjegyzés” (remark) field in §1 or from the quoted status in the company name:
Hungarian Deletion MethodStandardized Closure Reason
Contains “átalakulás” (transformation)Merger
Contains “felszámolás” (liquidation)Bankruptcy
Contains “kényszertörlés” (forced deletion)Administrative Dissolution
Contains “végelszámolás” (voluntary winding)Voluntary Dissolution
Any other methodOther

Sole Trader Status (EVNY)

Sole trader status is determined from the EVNY API’s structured fields:
ConditionLocal StatusactiveStandardized StatusNotes
vallalkozasAllapot = “Működő”MűködőtrueActiveNormal operating trader
szuneteltetes presentSzünetelőfalseActive (dormant)Voluntary dormancy (up to 2 years). Entity still legally exists but is not trading. additionalInfo contains dormancy start date
felfuggesztes presentFelfüggesztettfalseUnder Insolvency ProceedingSuspended by NAV (tax authority). additionalInfo contains reason and dates
In vallalkozasMegszunt arrayMegszűntfalseClosedTerminated. Closure reason and date when available
The local legal form (Cégforma) is extracted deterministically from the TRE and then enriched with AI for ISO 20275 code and standardized company type.

Key Business Forms

Abbr.Hungarian NameEnglish TranslationStandardized
KFTKorlátolt Felelősségű TársaságLimited Liability CompanyLimited Liability Company
BTBetéti TársaságLimited PartnershipPartnership
ZRTZártkörűen Működő RészvénytársaságPrivate Limited CompanyCorporation
NYRTNyilvánosan Működő RészvénytársaságPublic Limited CompanyCorporation
KKTKözkereseti TársaságGeneral PartnershipPartnership
ECEgyéni CégIndividual CompanySole Proprietorship

Sole Entrepreneurs

Abbr.Hungarian NameStandardized
EVEgyéni VállalkozóSole Proprietorship

Foreign Entities

Abbr.Hungarian NameStandardized
FILKülföldi Vállalkozás Magyarországi FióktelepeBranch or Representative Office
-Külföldi Székhelyű Vállalkozás FióktelepeBranch or Representative Office

Other Forms

Abbr.Hungarian NameStandardized
SZÖVSzövetkezetCooperative
EGYEgyesülésAssociation
ALAAlapítványFoundation
KHTKözhasznú TársaságPublic Benefit Company
Legal form standardization and ISO 20275 assignment are AI-enriched; the local Hungarian legal form name is always preserved verbatim from the TRE.
Legal representatives are extracted from Section 13 (§13) of the Trade Register Extract: “A vezető tisztségviselő(k), a képviseletre jogosult(ak) adatai” (Data of executive officers and those authorized to represent).

Extraction Details

  • Individual representatives: Name, birth date, residence address (Hungarian or foreign), role, start date, tax ID
  • Company representatives: Legal name, registered address, role, start date
  • Representation mode: Extracted deterministically from Hungarian signing authority terms in §13. Each legal representative includes a representationMode field indicating how they can sign for the company:
    • { mode: "sole" }: Can sign alone (“önálló” or “egyedüli”)
    • { mode: "joint" }: Must sign jointly with others (“együttes”)
    • null: No signing authority explicitly stated
Legal representatives are only available for active companies. Closed companies use a minimal TRE format that may not include Section 13. This is a register limitation.
The following roles are deterministically mapped from Hungarian registry terminology. No AI is involved for these known roles:
Hungarian RoleEnglish TranslationStandardized Role
ügyvezetőManaging DirectorManaging Director
cégvezetőCompany ManagerManaging Director
vezető tisztségviselőExecutive OfficerManaging Director
ügyvezető (vezető tisztségviselő)Managing Director (Executive Officer)Managing Director
vezérigazgatóCEOCEO
igazgatósági tagBoard MemberBoard Member
elnökChairmanChairman
képviseletre jogosult tagMember with Representation RightsOther
Roles matching the table above are mapped deterministically (AI is skipped). For roles not matching any known pattern, AI provides the English translation and standardized classification. The original Hungarian role name is always preserved as localName.

Other Key Persons

The TRE contains additional personnel data beyond legal representatives:
  • Auditors (§14): Both audit firms and individually responsible auditors, with name, address, and registration number
  • Supervisory Board Members (§15): Name, birth date, address, start date

Shareholders

Shareholder data is extracted from Part II of the Trade Register Extract when available. The TRE contains structured ownership information including:
  • Individual shareholders: Name, birth date, address, share amount/percentage, voting rights
  • Company shareholders: Legal name, registration number, address, share amount/percentage
Shareholder data availability depends on the company type and the TRE content. Not all company types include Part II (ownership section) in their TRE.

Activity Code Mapping

Hungary uses the TEÁOR (Tevékenységek Egységes Ágazati Osztályozási Rendszere) classification, which is the Hungarian adaptation of NACE Rev. 2. Activity codes are extracted from the TRE and mapped across three levels:
TEÁOR (Hungarian) → NACE Rev. 2 (European) → ISIC Rev. 4 (International)
ClassificationSourceExampleAI Inferred?
TEÁORTRE (§902)6201No (official)
NACEDerived from TEÁOR62.01No (deterministic conversion)
ISICDerived from NACE via mapping table6201No (deterministic)
TEÁOR codes are extracted directly from the TRE and are never AI-inferred. The main activity is identified when the TRE marks it as “Főtevékenység” (main activity).

Data Availability Matrix

Data TypeCommercial Companies (OCCSZ)Sole Traders (EVNY)Non-Profits / FoundationsNotes
Company Profile✅ Async✅ Async⚠️ LimitedCompanies: variable pricing. Sole traders: fixed price only
Legal Representatives✅ (active only)✅ (owner as legal rep)⚠️ LimitedOCCSZ: §13 of TRE. EVNY: owner mapped as Sole Proprietor
Other Key Persons⚠️ LimitedAuditors (§14), Supervisory Board (§15) from TRE
Shareholders⚠️✅ (100% owner)OCCSZ: Part II of TRE. EVNY: owner = 100% shareholder
Ultimate Beneficial OwnersNot available from registry
Activity CodesTEÁOR from TRE/EVNY, converted to NACE + ISIC
Documents✅ (Paid)✅ (Free)OCCSZ: TRE PDF, dynamic pricing. EVNY: screenshot PDF, free
EstablishmentsOCCSZ: §6/§7 from TRE. EVNY: telephely addresses
Legend: ✅ Available | ❌ Not Available | ⚠️ Conditionally Available | Async = Asynchronous processing
Egyéni Cég (EC) (Individual Company) is a different entity type from Egyéni Vállalkozó (EV). EC is registered in the Cégjegyzék and falls under the Commercial Companies column.

Documents by Entity Type

Commercial Companies (Cégjegyzékszám)

Document TypeAPI CategoryFormatSKUAvailabilityNotes
Cégkivonat (Trade Register Extract)tradeRegisterExtractPDFhun-register-extract✅ All companiesDynamic pricing from OCCSZ API

Sole Traders (Nyilvántartási szám)

Document TypeAPI CategoryFormatSKUAvailabilityNotes
EVNY ExtracttradeRegisterExtractPDF-✅ All sole tradersFree, included with profile
Document prices are fetched in real-time from the OCCSZ API and displayed in the price field before purchase. Pricing is based on document size (kbyte-based billing) and may vary between companies.
TRE price is variable. Unlike flat-rate documents, the Trade Register Extract price depends on the document size. Larger companies with more historical data will have higher prices. The price is always shown before purchase.

Pricing

Pricing differs by entity type:
  • Commercial companies (OCCSZ): Variable pricing. The total cost depends on the underlying Trade Register Extract price (which varies by company) plus a fixed profile fee.
  • Sole traders (EVNY): Fixed pricing. Only the fixed profile fee applies. The EVNY data source is free.
Budget control. For commercial companies, because pricing is variable, the profileMaxBudget parameter lets you set a maximum spend (in credit cents). If the estimated cost exceeds your budget, the request fails with a budget_exceeded error that includes the quoted price, so you can retry with a higher budget. For sole traders, only the fixed profile fee is checked.

Data Source Priority & Routing

For a given entity, data follows a deterministic retrieval path:
Company Profile Resolution Flow:
  1. Search: Query the OCCSZ XML API by registration number to verify the company exists and obtain the tax number
  2. Available Documents: Fetch the TRE price quote from OCCSZ
  3. Budget check: If profileMaxBudget is set, compare the estimated cost (TRE with markup + fixed profile fee) against the budget. Reject with budget_exceeded if over budget
  4. Download TRE: Purchase and download the Trade Register Extract PDF from OCCSZ
  5. PDF to Markdown: Convert the PDF to structured markdown using PyMuPDF4LLM
  6. Deterministic parsing: Parse the markdown to extract all structured data (name, address, legal form, capital, representatives, shareholders, activities, establishments, status)
  7. AI enrichment (parallel): Enrich in parallel: address parsing, legal form standardization (ISO 20275), currency parsing, role classification for legal representatives, establishment address parsing
  8. VIES VAT validation: A qualified VIES check validates the VAT number (HU + first 8 digits of tax number) and obtains a consultation number
Document Resolution Flow:The Trade Register Extract PDF is purchased directly from the OCCSZ API. The price is fetched first, then the document is downloaded and stored. The same PDF used for company profile extraction is delivered as the document.

Attribute-Level Source Mapping

AttributeSourceAI Enriched?Notes
Legal nameTRE (§2)NoExtracted deterministically from markdown
Registration numberTRE (§1 header)NoHyphens stripped
Tax numberOCCSZ search + TRE (§21)NoFrom search result internalIdentifiers or TRE
Registered addressTRE (§5)YesParsed from Hungarian format, AI-enriched for structuring
Legal formTRE (Cégforma field)YesDeterministic extraction, AI-enriched for ISO 20275
Registration dateTRE (§8)NoFounding date
StatusTRE (§1 + name)NoDeterministic: §1 deletion date/reason checked first, then quoted status in name, then default active
Share capitalTRE (§11)PartialAmount and known currencies (HUF, EUR, USD, GBP, CHF) deterministic; AI fallback only for unrecognized currencies
Legal representativesTRE (§13)PartialDeterministic extraction; known roles mapped deterministically, unknown roles AI-enriched
AuditorsTRE (§14)NoDeterministic extraction
Supervisory boardTRE (§15)NoDeterministic extraction
ShareholdersTRE (Part II)NoDeterministic extraction when available
Activity codes (TEÁOR/NACE)TRE (§902)NoDeterministic extraction and conversion
Activity codes (ISIC)TRE (§902)NoDeterministic: NACE → ISIC via official UN correspondence table
EstablishmentsTRE (§6, §7)YesDeterministic extraction, address AI-enriched
VAT verificationVIESNoQualified check with consultation number

Example API Responses

All examples use placeholder data. Query: POST /company with { "id": "<id>", "countryCode": "HU", "dataPoints": ["companyProfile"] }
{
  "company": {
    "id": "0109430929",
    "countryCode": "HU",
    "identifiers": { "registrationNumber": "0109430929", "taxNumber": "32565144241", "VAT": "32565144" },
    "taxId": {
      "type": "eu_vat",
      "value": "32565144",
      "country": "HU",
      "verification": {
        "status": "verified",
        "verifiedName": "PELDA TECHNOLOGIA KFT",
        "consultationNumber": "WAPIXXXXXXXXXXXX"
      }
    },
    "legalName": "Példa Technológia Korlátolt Felelősségű Társaság",
    "registrationDate": "2024-05-28",
    "status": { "localName": "Aktív", "active": true, "statusDetails": { "status": "ACTIVE" } },
    "legalForm": { "localName": "Korlátolt Felelősségű Társaság", "englishTranslation": "Limited Liability Company", "standardized": "Limited Liability Company", "iso20275Code": "P9F2" },
    "capital": { "amount": 3100000, "currency": "HUF" },
    "activities": {
      "TEAOR": [{ "code": "6201", "description": "Számítógépes programozás", "isAIInferred": false }],
      "NACE": [{ "code": "62.01", "description": "Computer programming activities", "isAIInferred": false }],
      "ISIC": [{ "code": "6201", "description": "Computer programming activities", "isAIInferred": false }]
    },
    "legalAddress": { "addressLine1": "2 Ferenciek tere", "city": "Budapest", "postalCode": "1053", "countryCode": "HU" }
  },
  "legalRepresentatives": [
    {
      "type": "individual",
      "role": { "localName": "ügyvezető", "englishTranslation": "Managing Director", "standardized": "Managing Director" },
      "representationMode": { "mode": "sole" },
      "individual": {
        "name": { "fullName": "Nagy István", "firstName": "Nagy", "lastName": "István" },
        "birthDate": { "year": 1985, "month": 6, "day": 15 },
        "residenceAddress": { "addressLine1": "10 Andrássy út", "city": "Budapest", "postalCode": "1061", "countryCode": "HU" }
      },
      "startDate": "2024-05-28"
    }
  ]
}
{
  "company": {
    "id": "0106216884",
    "countryCode": "HU",
    "identifiers": { "registrationNumber": "0106216884", "taxNumber": "28383040242" },
    "legalName": "Példa Kereskedelmi Betéti Társaság \"végelszámolás alatt\"",
    "registrationDate": "1993-11-23",
    "status": {
      "localName": "Törölve (kérelemre)",
      "active": false,
      "statusDetails": { "status": "CLOSED", "closureReason": "VOLUNTARY_DISSOLUTION", "closureDate": "2017-01-06T00:00:00.000Z" }
    },
    "legalForm": { "localName": "Betéti Társaság", "englishTranslation": "Limited Partnership", "standardized": "Partnership", "iso20275Code": "S3DA" },
    "legalAddress": { "addressLine1": "121 Andrássy út", "city": "Budapest", "postalCode": "1062", "countryCode": "HU" }
  },
  "legalRepresentatives": []
}
Note: Closed companies have active: false and may have empty legal representatives. The closureDate is extracted from the TRE. Companies that were in liquidation (“végelszámolás alatt”) before deletion retain that marker in their legal name.
{
  "company": {
    "id": "57478665",
    "countryCode": "HU",
    "identifiers": { "registrationNumber": "57478665", "taxNumber": "59443494129", "VAT": "59443494" },
    "taxId": {
      "type": "eu_vat",
      "value": "59443494",
      "country": "HU",
      "verification": { "status": "verified", "verifiedName": "KOVÁCS ÁDÁM" }
    },
    "legalName": "KOVÁCS ÁDÁM e.v.",
    "registrationDate": "2022-09-01",
    "activityDescription": "Reklámfelület ügynöki értékesítése",
    "status": { "localName": "Működő", "active": true, "statusDetails": { "status": "ACTIVE" } },
    "legalForm": { "localName": "Egyéni vállalkozó", "englishTranslation": "Sole Proprietorship", "standardized": "Sole Proprietorship" },
    "activities": {
      "TEÁOR": [{ "code": "731201", "description": "Reklámfelület ügynöki értékesítése" }],
      "NACE": [{ "code": "73.12", "description": "Media representation" }],
      "ISIC": [{ "code": "7310", "description": "Media representation" }]
    },
    "legalAddress": { "addressLine1": "VINCELLÉR UTCA 2 10 em. 87 ajtó", "city": "DEBRECEN", "postalCode": "4031", "countryCode": "HU" }
  },
  "legalRepresentatives": [
    {
      "type": "individual",
      "role": { "localName": "Egyéni vállalkozó", "englishTranslation": "Sole Proprietor", "standardized": "Owner" },
      "individual": { "name": { "fullName": "KOVÁCS ÁDÁM", "firstName": "ÁDÁM", "lastName": "KOVÁCS" } }
    }
  ],
  "shareholders": [
    {
      "type": "individual",
      "sharePercentage": 100,
      "individual": { "name": { "fullName": "KOVÁCS ÁDÁM", "firstName": "ÁDÁM", "lastName": "KOVÁCS" } }
    }
  ]
}
Note: Sole traders always have exactly one legal representative (the owner, role “Sole Proprietor”) and one 100% shareholder. Activity codes use 6-digit TEÁOR codes from EVNY (vs 4-digit from OCCSZ TRE). Legal name includes the “e.v.” suffix (egyéni vállalkozó).
Documents are returned when "dataPoints": ["availableDocuments"] is requested.
API CategoryDocumentNotes
tradeRegisterExtractCégkivonat (Trade Register Extract) PDFDynamic pricing from OCCSZ. Available for all companies (active and closed)
{
  "documents": {
    "tradeRegisterExtract": {
      "id": "doc_abc123",
      "name": "Trade Register Extract",
      "description": "Trade register extract from the Hungarian Trade Register (Ministry of Justice)",
      "format": "pdf",
      "type": "tradeRegisterExtract",
      "price": {
        "amount": 2.27,
        "currency": "EUR"
      }
    }
  },
  "request": {
    "companyId": "0109430929",
    "countryCode": "HU",
    "dataStatus": {
      "dataPoints": {
        "availableDocuments": { "status": "succeeded" }
      }
    }
  }
}
Note: The price field reflects the real-time cost from the OCCSZ API. Prices are in EUR and vary based on document size.

Quirks & Gotchas

QuirkDetails
Hyphens in identifiersBoth Cégjegyzékszám and Adószám may contain hyphens (e.g., 01-09-430929, 28383040-2-42). These are stripped internally before processing.
Leading zeros in registration numbersRegistration numbers always have 10 digits. Numbers with leading zeros (e.g., 0109430929, Budapest court code 01) are preserved correctly.
Liquidation detected from company nameCompanies in liquidation are identified by the presence of “végelszámolás alatt” or “v.a.” in the legal name, not from a dedicated status field.
TRE price is variableTrade Register Extract pricing is kbyte-based. Larger companies (more history, more sections) cost more. Prices are always shown before purchase.
Company profile = TREThe company profile is entirely derived from the Trade Register Extract PDF. Requesting a company profile will purchase and parse the TRE.
No shareholders for all company typesPart II (ownership section) is not present in all TRE documents. Availability depends on the company type and registry content.
No legal reps for closed companiesSection 13 (legal representatives) may be absent in TRE documents for closed companies.
Closure reason defaults to OTHERWhen a company is closed (“Törölve”) and the deletion method doesn’t match a known pattern, the closure reason defaults to OTHER. Known patterns: átalakulás (Merger), felszámolás (Bankruptcy), kényszertörlés (Administrative Dissolution), végelszámolás (Voluntary Dissolution).
Tax number truncated to 13 digitsThe tax number (Adószám) is truncated to 13 characters in the identifiers to standardize the format.
TEÁOR = NACEHungarian TEÁOR codes map 1:1 to NACE Rev. 2 codes (same numeric values, different formatting).
HUF to EUR conversionDocument prices are quoted in HUF by the OCCSZ API and converted to EUR for the API response.
8-digit IDs are ambiguousA pure 8-digit input could be a sole trader registration number or a tax number. Both OCCSZ and EVNY are searched in parallel, with deduplication.
Sole traders use 6-digit TEÁOR codesEVNY provides 6-digit TEÁOR codes (e.g., 731201) vs. 4-digit from OCCSZ TRE (e.g., 7312). The first 4 digits are identical and map to the same NACE/ISIC codes.
EVNY name search not supportedThe EVNY API does not support name-based search. Only registration number and tax number queries are available for sole traders.