Start here
This guide contains public integration notes for Bulgaria. Use it for identifier formats, search behavior, and country-specific caveats. The live source of truth for coverage, pricing, data sources, documents, legal forms, roles, and status values is the pricing page.Bulgaria coverage, pricing, and sources
Open the current catalog for supported datapoints, documents, sources, identifiers, and availability.
Country details below are preserved as integration notes. If a table or example conflicts with the live pricing page, use the pricing page as the source of truth and contact support.
Table of Contents
- Data Sources
- Company Identifiers
- Search Capabilities
- Quirks & Gotchas
- Mappings
- Data Availability
- Example API Responses
Data Sources
Bulgaria has two official registers, operated by the same Registry Agency and sharing one UIC numbering space. They cover complementary sets of entities and never overlap, so a single lookup resolves to whichever register holds the entity.- Trade Register (Търговски регистър). Operated by the Registry Agency (Агенция по вписванията) under the Ministry of Justice, the Trade Register is the official commercial register for traders and non-profit legal entities. It is our primary source for those entities, providing structured data for company identification, status, legal form, address, share capital, shareholders, legal representatives, supervisory board members, and UBOs.
- BULSTAT register (Регистър БУЛСТАТ). Also operated by the Registry Agency, BULSTAT holds the entities that are not in the Commercial Register: civil-law partnerships (ДЗЗД / Дружество по ЗЗД), freelancers and self-employed professionals, foreign entities and branches, associations, foundations, community centres (читалища), cooperatives, and state/municipal institutions. When a UIC is not a Commercial-Register trader, we resolve it automatically from BULSTAT, returning the same structured company data (identity, registered seat, activity, status, management, and ownership participation) plus a Trade Register Extract. For a natural-person subject only the register-public correspondence address is returned; the register’s own masked fields are never surfaced.
- Open Data (data.egov.bg). Bulk datasets published periodically by the Registry Agency on Bulgaria’s government Open Data portal. Contains historical deed filings with company data including status, legal form, address, capital, activity codes (NKID/NACE), legal representatives, and shareholders. Used for search and onboarding profile (fast, pre-indexed lookups).
Open Data for fast lookups: The seach and onboarding profile use
pre-indexed Open Data for sub-second response times. The company profile and
UBO endpoints query the live Trade Register for the most current data.
Data Source Priority & Routing
A lookup first resolves which register holds the entity, then queries the right sources for it. The Commercial Register and BULSTAT share one UIC space and never overlap, so a single UIC resolves to exactly one of them.Commercial-Register entity (traders and non-profit legal entities) — data comes from two sources in parallel:
- Trade Register (Live API). Real-time query to the Registry Agency portal for the most current data
- Open Data (Pre-indexed). Batch-processed data providing fast lookups with broader field coverage (activity codes, NACE/ISIC)
Attribute-Level Source Mapping
The mapping above applies to Commercial-Register entities. A BULSTAT entity
gets its identity, registered seat, activity, status, management, and ownership
participation from the single live BULSTAT query — there is no Open Data layer
and no UBO datapoint for these entities.
Company Identifiers
Query Identifiers
The UIC (Unified Identification Code), also known as EIK (Единен
идентификационен код), is the primary identifier used across all endpoints.
The Commercial Register and BULSTAT share this one numbering space, so you pass
the same UIC regardless of which register holds the entity — routing to the
right register is automatic. A legacy 10-digit BULSTAT code is remapped to its
current UIC automatically. You can also search by VAT number using the
BG
prefix (e.g., BG831094393).Identifiers in API Response
Once you retrieve company data, theidentifiers object contains:
Search Capabilities
Search Source Priority
Search queries use pre-built indexes, live registry lookups, and the BULSTAT register:- Pre-built index by ID. Fast lookup in pre-indexed Open Data for identifier-based searches
- Pre-built index by name. Full-text search in pre-indexed Open Data for name-based searches
- VAT number lookup. Validates VAT via EU VIES service, then searches by VIES-returned company name
- Live Trade Register by name. Fallback to live API for name searches not found in index
- Live Trade Register by ID. Fallback to live API for ID searches not found in index
- BULSTAT by ID / name. Makes non-trader entities (civil-law partnerships, self-employed persons, foreign entities, associations, foundations) findable by UIC or Cyrillic name. Lower priority, so Commercial-Register results stream first and BULSTAT results follow.
Search streams results as each source resolves. Commercial-Register hits (fast,
pre-indexed) return first; a BULSTAT-only entity surfaces a moment later. Once an
entity has been retrieved via
/v2/company, it is indexed and returns quickly on
subsequent searches.Supported Entity Families
Quirks & Gotchas
Mappings
Company Status
Company status is determined deterministically from deed status codes and company name patterns. No AI inference is involved.Deed Status Codes
Status Detection from Company Name
When the company name contains specific keywords, the status is overridden regardless of the deed status code:Company name patterns take priority over deed status codes. A company with
deed status
E (Amended) but “в ликвидация” in its name is correctly mapped
as Closed with Liquidation as the closure reason.Legal Forms
Bulgaria uses numeric codes from the Trade Register, string codes from Open Data, and legal-form names from the BULSTAT register. The deterministic mapping covers every common Commercial-Register and BULSTAT legal form — including civil-law partnerships, cooperatives, associations, foundations, foreign entities, and state/municipal institutions — with the ISO 20275 (ELF) code taken from the official Bulgarian GLEIF list. For a rarer form outside the static map, the standardized type and ISO 20275 code are filled in by AI enrichment in verification mode only; in onboarding mode the local Bulgarian name is returned verbatim without a standardized mapping. The local Bulgarian legal form name is always preserved verbatim in every mode.Common Legal Forms
Sole Traders
Sole trader (ЕТ) vs. self-employed natural person. Both are one-person
operators standardized as
Sole Proprietorship, but they come from two
different registers and are distinguished by their local name:- Sole trader (Едноличен търговец, ЕТ) is a natural person registered as a
trader in the Commercial Register — a registered one-person business
(
localName: "Едноличен търговец", ISO 20275946C). The trader is returned underlegalRepresentativesand, for a beneficial-ownership request, as the sole 100% beneficial owner. - Self-employed natural person (freelancer / free-profession practitioner —
lawyer, notary, farmer, etc.) is not a trader and is held only in the
BULSTAT register (
localName: "Физическо лице", no ISO 20275 code, since the register states no legal form). It has no shareholders and no ultimate beneficial owners (both return a benign not-applicable response).
Sole Proprietorship
is the fleet-standard bucket for one-person operators (as with Estonia’s FIE) —
so the register of origin and the local name carry the distinction.Partnerships
Cooperatives
Non-Profits & Public Entities
Branch Offices
Variable Capital Companies
BULSTAT-only Forms
These forms are not held in the Commercial Register — they are resolved from the BULSTAT register:The deterministic mapping covers every common Commercial-Register and BULSTAT
legal form, with the ISO 20275 (ELF) code taken from the official Bulgarian
GLEIF list (only currently-active ELF codes are used). For a rarer form outside
the static map, the standardized type and ISO 20275 code are filled in by AI
enrichment in verification mode only; in onboarding mode the local Bulgarian
name is returned verbatim. The local Bulgarian legal form name is always
preserved verbatim in every mode.
Legal Representatives
The deterministic mapping covers the common Bulgarian executive and management roles from both the Commercial Register and BULSTAT. For an unmapped role, keyword matching on the Bulgarian text infers the standardized role (e.g. a role containing “директор” maps to Director), and in verification mode AI enrichment resolves anything the keyword pass cannot. Role names are always preserved in Bulgarian alongside the English translation.Common Executive & Management Roles (can bind the company)
Common Executive & Management Roles (can bind the company)
The most common role is Управител (Manager) for OOD/EOOD companies and
Изпълнителен директор (Executive Director) for AD/EAD companies. Both
individual and corporate legal representatives are supported. Roles not in the
static mapping are classified via keyword matching on the Bulgarian role text
(e.g., a role containing “директор” is mapped to Director).
Other Key Persons
Board members, auditors, and controllers are extracted separately from legal representatives. For joint-stock companies (AD/EAD), this covers both board structures: the one-tier Board of Directors (Съвет на директорите) and the two-tier Management Board (Управителен съвет) plus Supervisory Board (Надзорен съвет). A board member who also represents the company is returned underlegalRepresentatives, not duplicated here. Common board and audit roles are mapped deterministically. Unknown roles are classified via keyword matching on the Bulgarian text, falling back to Other when no keyword matches.
Common Board & Supervisory Roles (oversight, NOT legal representatives)
Common Board & Supervisory Roles (oversight, NOT legal representatives)
Shareholders
Shareholders are extracted from the Trade Register for OOD, EOOD, KD, and single-member EAD entities. Multi-shareholder AD (joint-stock) companies do not disclose their individual shareholders in the Bulgarian Trade Register. Entities with no share capital — ET (sole traders) and BULSTAT natural persons (freelancers / self-employed) and non-profits (associations, foundations) — have no shareholders: theshareholders datapoint returns an explicit not-applicable response (at no charge) and the person or officers are returned under legalRepresentatives instead.
Extraction Logic
Ownership Fields
Since Bulgaria’s euro adoption (1 January 2026), the register reports the
company’s share capital in EUR while partner holdings remain filed in
BGN. Ownership percentages are therefore derived from the sum of the
partners’ BGN holdings (no currency conversion), so they always total 100%.
The held amounts (
nominalCapitalHeld) are returned in their filed currency
(BGN); the company-level capital is the register’s EUR figure. For a
single-member company (ЕООД), the sole owner holds the entire registered
capital, so their nominalCapitalHeld equals the company’s registered capital
(the EUR figure). A sole trader (ЕТ) has no registered capital, so the field is
omitted.Both individual and corporate shareholders are supported. Corporate
shareholders include the company’s legal name, registration number (when
available), and country code. Foreign corporate shareholders are identified by
markers in the registry text.
Activity Code Mapping
Bulgaria uses the NKID (Национална класификация на икономическите дейности) classification, which is Bulgaria’s national transposition of the European NACE Rev. 2 standard.When Open Data provides a NKID code, the full NKID → NACE → ISIC chain is
deterministic (no AI). When only the live Trade Register API is available
(company not yet in Open Data), NACE and ISIC codes are AI-inferred from
the free-text activity description. Check the
isAIInferred flag on each
activity code to distinguish.Data Availability
Data Availability Matrix
Legend: ✅ Available | ❌ Not Available
The matrix above describes Commercial-Register entities. BULSTAT-only
entities (civil-law partnerships, self-employed persons, foreign entities,
associations, foundations, cooperatives, institutions) are resolved from a
single live BULSTAT query — Open Data does not cover them. They return identity,
registered seat, activity, status, management, and (where applicable) ownership
participation, plus a Trade Register Extract. Ultimate beneficial owners are not
applicable for BULSTAT-only entities, and personal data is anonymised by the
register, so legal-representative and key-person street addresses are not
returned.
Documents by Company Type
The Trade Register Extract is always available for any registered company —
for a Commercial-Register entity it is an extract of the trade-register record,
and for a BULSTAT-only entity it is a printable extract of the BULSTAT detail
page. Articles of Association and Financial Statements are available only
when a Commercial-Register company has filed them with the registry (they are not
offered for BULSTAT-only entities). Additional document types (shareholder
meeting notices, transformation plans, insolvency documents) may be available
depending on the company’s filing history.
Conditional Document Types
Conditional Document Types
The following additional documents may be available depending on the company’s filing history:
Example API Responses
All examples use placeholder data. Query:POST /v2/company with { "id": "123456789", "countryCode": "BG", "dataPoints": ["company", "legalRepresentatives"] }
Active EOOD (Single-Member LLC) with Sole Owner
Active EOOD (Single-Member LLC) with Sole Owner
Active ET (Sole Trader)
Active ET (Sole Trader)
shareholders datapoint is therefore not applicable — it returns a benign not-applicable response (at no charge) rather than a fabricated record. The trader is returned under legalRepresentatives, and, where a beneficial-ownership datapoint is requested, as the sole 100% beneficial owner.Active KD (Limited Partnership) with Partners
Active KD (Limited Partnership) with Partners
sharePercentage, because the register records partner roles rather than share amounts.Active EAD (Single-Member Joint Stock Company)
Active EAD (Single-Member Joint Stock Company)
shareholders at 100% with the full registered capital. Multi-shareholder AD companies do not disclose individual shareholders. Board members are returned in otherKeyPersons. This example shows a one-tier Board of Directors (Съвет на директорите); two-tier companies instead have a Management Board (Управителен съвет) plus a Supervisory Board (Надзорен съвет). A board member who also represents the company (the Executive Director above) is returned once, under legalRepresentatives.Closed Company (In Liquidation)
Closed Company (In Liquidation)
UBO Response
UBO Response
Query: Note: UBO data is fetched live from the Commercial Register beneficial-ownership declarations. Not all companies have UBO filings, so the field may be absent if no declaration has been filed. Beneficial ownership is a Commercial-Register concept: for entities held only in the BULSTAT register (civil-law partnerships, self-employed persons, foreign entities, associations, and foundations) the
POST /v2/company with { "id": "123456789", "countryCode": "BG", "dataPoints": ["ultimateBeneficialOwners"] }ultimateBeneficialOwners datapoint returns a benign not-applicable response (at no charge) — a self-employed person is never synthesised as their own beneficial owner. A sole trader (ЕТ), by contrast, is a Commercial-Register entity whose trader is legitimately returned as the sole 100% beneficial owner.Available Documents
Available Documents
Query: Note: The Trade Register Extract is always available. Articles of Association and Financial Statements are conditional, only listed when the company has filed them with the registry.
POST /v2/company with { "id": "123456789", "countryCode": "BG", "dataPoints": ["availableDocuments"] }BULSTAT Entity — Civil-Law Partnership (ДЗЗД)
BULSTAT Entity — Civil-Law Partnership (ДЗЗД)
Query: Note: A civil-law partnership (ДЗЗД) is held only in the BULSTAT register — it is resolved automatically when the UIC is not a Commercial-Register trader. Unlike sole traders and self-employed persons, a ДЗЗД has participating members, so
POST /v2/company with { "id": "175883961", "countryCode": "BG", "dataPoints": ["company", "legalRepresentatives", "shareholders"] }shareholders returns them (with participation percentage where the register states it). Note there is no VAT identifier: it is only added when a VIES check confirms the entity is VAT-registered. Identifiers, values, and names above are illustrative.BULSTAT Entity — Self-Employed Natural Person
BULSTAT Entity — Self-Employed Natural Person
Query: Note: A self-employed natural person (freelancer / free-profession practitioner) is held only in BULSTAT and is not a sole trader (ЕТ) — sole traders live in the Commercial Register. Both standardize as
POST /v2/company with { "id": "1122334455", "countryCode": "BG", "dataPoints": ["company", "legalRepresentatives", "shareholders", "ultimateBeneficialOwners"] }Sole Proprietorship; they are distinguished by the local name (Физическо лице vs Едноличен търговец) and the register of origin. The person has no share capital, so both shareholders and ultimateBeneficialOwners return a benign not-applicable response (at no charge) rather than a fabricated record. There is no VAT identifier or taxId unless a VIES check confirms VAT registration. BULSTAT anonymises personal data, so only the register-public correspondence locality is returned, not a full street address. Identifiers, values, and names above are illustrative.