Bulgaria Company Filings API and MCP — Announced Acts from the Commercial Register
Send a UIC (ЕИК) and this source lists the company's announced acts in the Bulgarian Commercial Register, newest first: the announcement date, the type of act, the title and a link to the document. Annual reports, notices, reports and current articles of association all appear here.
- You send
- A Bulgarian UIC (ЕИК) or a registry link
- You get back
- Announced acts, newest first: date, act type, title and document link
- Coverage
- Bulgaria — entities on Commercial Register.
- Price
- 1 point per returned record — $1 per 1,000
- Billed per record actually returned, capped by max_items. A request that returns nothing costs nothing.
Ways to get this data
Three approaches teams use today, and where each one runs into trouble.
| Approach | What it takes | Cost | Trade-off |
|---|---|---|---|
| Commercial Register directly | Open the company on Commercial Register and page through the list | 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 | $1 per 1,000, misses not billed | Covers Bulgaria — other countries are separate sources with the same request format |
What you get back
Every field in the example response below.
| Field | Type | Description |
|---|---|---|
session_id | string | Id of this run, for tracing. |
kind | string | Run type, for example "bg_company_filings". |
human | string | Readable summary of the result, in Markdown. |
machine | object | The structured result. Everything below lives inside it. |
total_points | number | Points charged for this run. |
machine.total_items | number | Number of records returned in this response. |
machine.first_item | object | The first match, repeated from items for quick access. |
machine.items | array | The matches in order. Each one has the fields listed under first_item. |
machine.total_found | number | null | Total matches the register reported, when it says. 230 in the sample. |
machine.page_count | number | Number of result pages read. |
machine.first_item.id | string | Id of the announced act. |
machine.first_item.registration_number | string | Same as id in the sample. |
machine.first_item.company_registration_number | string | UIC of the company. |
machine.first_item.date | string | Date of the announcement. |
machine.first_item.type | string | Type of act, for example "Годишен финансов отчет" (annual financial report). |
machine.first_item.kind | string | Kind of entry, "announced_act" in the sample. |
machine.first_item.name | string | Title of the act. |
machine.first_item.description | string | Title of the act, repeated. |
machine.first_item.period | string | Period the act covers, for example "Year: 2025y." |
machine.first_item.url | string | Link to the document on the register. |
machine.first_item.document_url | string | Link to the document, same as url in the sample. |
machine.first_item.status | null | Not used for filings. |
machine.first_item.address | null | Not used for filings. |
machine.first_item.company_type | null | Not used for filings. |
machine.first_item.incorporation_date | null | Not used for filings. |
machine.blocked | boolean | Whether the register refused the read. false in the sample. |
machine.proxy_traffic_bytes | number | Size of the data transferred for this run, in bytes. |
Example response
A real response, as returned.
{
"session_id": "11111111-1111-1111-1111-111111111111",
"kind": "bg_company_filings",
"company": "831902088",
"company_id": "831902088",
"max_items": 2,
"start_page": 1,
"partial": false,
"human": "# Bulgaria — Commercial Register — company announced acts\n\n- **Company:** 831902088\n- **Results:** 2 of 230 found\n- **Proxy traffic:** 176.6 KB",
"machine": {
"total_items": 2,
"first_item": {
"registration_number": "6ur9nFv4d9T10S-4ZwQ20Oiw",
"company_registration_number": "831902088",
"name": "Одиторска декларация по чл. 100н от ЗППЦК",
"status": null,
"address": null,
"company_type": null,
"incorporation_date": null,
"id": "6ur9nFv4d9T10S-4ZwQ20Oiw",
"date": "2026-09-23",
"type": "Годишен финансов отчет",
"kind": "announced_act",
"description": "Одиторска декларация по чл. 100н от ЗППЦК",
"period": "Year: 2025y.",
"url": "https://portal.registryagency.bg/CR/DocumentAccess/ODMxOTAyMDg4JmUmOTkzMTllYTZjYWQwNGNmYzhmMDU1NzAyNTNhYjA1OTihmgByYzZl-Av7UVhkJJ6ur9nFv4d9T10S-4ZwQ20Oiw",
"document_url": "https://portal.registryagency.bg/CR/DocumentAccess/ODMxOTAyMDg4JmUmOTkzMTllYTZjYWQwNGNmYzhmMDU1NzAyNTNhYjA1OTihmgByYzZl-Av7UVhkJJ6ur9nFv4d9T10S-4ZwQ20Oiw"
},
"items": [
{
"registration_number": "6ur9nFv4d9T10S-4ZwQ20Oiw",
"company_registration_number": "831902088",
"name": "Одиторска декларация по чл. 100н от ЗППЦК",
"status": null,
"address": null,
"company_type": null,
"incorporation_date": null,
"id": "6ur9nFv4d9T10S-4ZwQ20Oiw",
"date": "2026-09-23",
"type": "Годишен финансов отчет",
"kind": "announced_act",
"description": "Одиторска декларация по чл. 100н от ЗППЦК",
"period": "Year: 2025y.",
"url": "https://portal.registryagency.bg/CR/DocumentAccess/ODMxOTAyMDg4JmUmOTkzMTllYTZjYWQwNGNmYzhmMDU1NzAyNTNhYjA1OTihmgByYzZl-Av7UVhkJJ6ur9nFv4d9T10S-4ZwQ20Oiw",
"document_url": "https://portal.registryagency.bg/CR/DocumentAccess/ODMxOTAyMDg4JmUmOTkzMTllYTZjYWQwNGNmYzhmMDU1NzAyNTNhYjA1OTihmgByYzZl-Av7UVhkJJ6ur9nFv4d9T10S-4ZwQ20Oiw"
},
{
"registration_number": "ZDu29dedWzDxArIGsYp9JNCw",
"company_registration_number": "831902088",
"name": "Одиторски доклад за Годишен индивидуален финансов отчет",
"status": null,
"address": null,
"company_type": null,
"incorporation_date": null,
"id": "ZDu29dedWzDxArIGsYp9JNCw",
"date": "2026-09-23",
"type": "Годишен финансов отчет",
"kind": "announced_act",
"description": "Одиторски доклад за Годишен индивидуален финансов отчет",
"period": "Year: 2025y.",
"url": "https://portal.registryagency.bg/CR/DocumentAccess/ODMxOTAyMDg4JmUmMDVlYTkxNDU1MzA1NDcwYWFhMWNhOTVmNGRlZmE4OTMzpjFoPZnJDGoOwmgXsbZDu29dedWzDxArIGsYp9JNCw",
"document_url": "https://portal.registryagency.bg/CR/DocumentAccess/ODMxOTAyMDg4JmUmMDVlYTkxNDU1MzA1NDcwYWFhMWNhOTVmNGRlZmE4OTMzpjFoPZnJDGoOwmgXsbZDu29dedWzDxArIGsYp9JNCw"
}
],
"total_found": 230,
"page_count": 1,
"blocked": false,
"proxy_traffic_bytes": 180846
},
"total_points": 2
}How to run it
The same lookup works from the app, the API, or as a tool an agent can call mid-task.
Results come back in the same envelope as every other source: a session id, a readable summary, the structured result and the points charged.
curl -X POST https://api.neuralverge.ai/functions/v1/run-bg-company-filings \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"company":"831902088","max_items":2}'What teams use it for
Where this field shows up in an actual workflow.
List the annual financial reports a company has announced, with links.
Re-run the list and look for acts newer than the last one you stored.
Attach the latest announced acts to a counterparty record.
Coverage, freshness and limits
What this source covers, how fresh it is, and where it stops.
Bulgaria — entities on Commercial Register.
Read at request time, so the answer reflects the register as it stands when you ask.
Commercial Register is a public register. Every response carries the source URL it was read from and a session id you can trace.
- —Returns the list and document links, not the document text.
- —Titles and types are in Bulgarian.
- —The announced acts are the ones the register publishes; other record sections come from the Bulgaria company source.
Questions, answered
Announced acts such as annual reports, notices, reports and current articles, per the docs. The sample entry is an auditor's declaration filed with the annual financial report.
Related sources
Try bulgaria company filings on your own data
One request format across every source in the catalog.