# Germany Insolvency Register Search (Insolvenzbekanntmachungen) (`regdata/germany-insolvency-scraper`) Actor

Search Germany's official insolvency register (Insolvenzbekanntmachungen) by company or debtor name. Get court, case number, publication date, seat and the Handelsregister reference. No API key.

- **URL**: https://apify.com/regdata/germany-insolvency-scraper.md
- **Developed by:** [getregdata](https://apify.com/regdata) (community)
- **Categories:** Lead generation, Automation, Integrations
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $28.00 / 1,000 insolvency search sessions

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Germany Insolvency Register Search (Insolvenzbekanntmachungen)

Search the **official German insolvency register** - **Insolvenzbekanntmachungen**, the Bund-Länder justice portal where every German court publishes its insolvency proceedings - by **company name or debtor name** and get clean, structured JSON: **court, case number (Aktenzeichen), publication date, debtor name and seat**, and - for companies - the **commercial-register reference** (e.g. `Koblenz, HRB 25603`) that cross-links straight to the **Handelsregister**. No API key needed.

An insolvency publication is the single most important negative signal in German B2B: it tells you a company (or an individual sole trader) is in bankruptcy, restructuring, or has had a filing dismissed for lack of assets. Screening a counterparty against it is essential for **credit risk, KYB / KYC, supplier and customer onboarding, and debtor monitoring**. There is **no open public API** for this register, and it **rate-limits and blocks aggressive scraping** - this actor is the reliable, keyless API for it.

### Why this actor

The register has no bulk API and throttles / IP-blocks scrapers, so the handful of existing tools are unreliable. This actor routes every request through managed anti-bot infrastructure for a **stable success rate**, drives the register's own JSF search form exactly as a browser would, and parses each publication - including the **Handelsregister cross-reference** that lets you tie an insolvency straight back to the company's officers and registration.

### No key, no setup

The anti-bot handling and proxying run on our infrastructure and are included in the price. **No API key, no CAPTCHA, no proxy to configure.** Just send a name.

### Pairs with the Handelsregister (the full German due-diligence flow)

This actor is the **debtor / insolvency check** half of a German KYB workflow. Chain it with the **identity** half:

1. **[Germany Handelsregister Company Scraper](https://apify.com/regdata/handelsregister-scraper)** - confirm the company, its officers (with dates of birth) and registration (HRB/HRA number + register court).
2. **This actor** - screen that same company name against the insolvency register, and match the `registerCourt` + `registerNumber` back to the Handelsregister record.

The same pattern powers our EU suite: **[Poland CRBR Beneficial Owners](https://apify.com/regdata/crbr-beneficial-owners-scraper)** / **[KRS Board Members](https://apify.com/regdata/krs-fullnames-scraper)** to source the people and companies, then **[Poland KRZ Debtor Registry](https://apify.com/regdata/krz-debtor-scraper)** to screen them for insolvency. Source the party, then check the party.

### Quick Start

Click **Try it** and search by a company or debtor name (contains-match, last two weeks by default):

```json
{
  "name": "Wirecard"
}
````

Check for **older** insolvencies (a targeted name search may widen the window):

```json
{
  "name": "Wirecard",
  "dateFrom": "2020-01-01"
}
```

**Monitor a watchlist** (ideal on a daily schedule - you get any new insolvency publications for your counterparties):

```json
{
  "watchlist": ["Muster Bau GmbH", "Beispiel Handel AG", "Nord Logistik GmbH"]
}
```

### Input

| Field | Type | Description |
|------|------|-------------|
| `name` | string | Company name or surname to look up. Contains-match by default. |
| `watchlist` | array | A list of names to check in one run - the monitoring use case. Overrides `name`. |
| `firstName` | string | Optional first name, to narrow an individual-debtor search. |
| `city` | string | Optional seat / place of residence to narrow the search. |
| `state` | string | Optional German state (`Bayern` / `BY`, `Nordrhein-Westfalen` / `NW`, ...) - narrows the search and helps a broad term stay under the register's 1,000-match cap. |
| `exactMatch` | boolean | Off (default) = contains-search. On = match the term exactly. |
| `dateFrom` | string | Start of the publication-date window (`YYYY-MM-DD`). Default: two weeks ago. Widen for a historical check. |
| `dateTo` | string | End of the publication-date window (`YYYY-MM-DD`). Default: today. |
| `subject` | string | Optional filter by type of decision (openings, dismissals for lack of assets, residual-debt-discharge decisions, ...). |
| `maxResults` | integer | Cap on exported publications across all queries (default `200`). |

### Output

One dataset item per insolvency publication:

```json
{
  "publicationDate": "27.02.2026",
  "publicationDateISO": "2026-02-27",
  "caseNumber": "1542 IN 1356/20",
  "court": "München",
  "debtorName": "Wirecard Global Sales GmbH",
  "debtorType": "company",
  "debtorLastName": null,
  "debtorFirstName": null,
  "seat": "München",
  "register": "München, HRB 223366",
  "registerCourt": "München",
  "registerType": "HRB",
  "registerNumber": "223366",
  "matchedName": "Wirecard",
  "jurisdiction": "DE",
  "source": "Insolvenzbekanntmachungen (Bund-Länder-Justizportal)",
  "sourceUrl": "https://neu.insolvenzbekanntmachungen.de/ap/suche.jsf",
  "retrievedAt": "2026-07-02T00:00:00.000Z"
}
```

For individuals, `debtorName` is `"Surname, Firstname"` and is split into `debtorLastName` / `debtorFirstName`; `register` fields are null. For companies, the `registerCourt` + `registerType` + `registerNumber` are the direct link to the **Handelsregister** record.

### Common use cases

- **Credit risk & onboarding** - before extending terms, check whether a customer or supplier is in insolvency, restructuring, or was dismissed for lack of assets.
- **KYB / KYC** - screen a counterparty (or the officers / UBOs surfaced by our registry actors) against the German insolvency register.
- **Debtor & portfolio monitoring** - run a `watchlist` on a daily schedule and get alerted to new insolvency publications for the companies you care about.
- **Legal & collections** - find the court, case number and register reference for a proceeding.

### Data source & compliance

- **Source:** the official **Insolvenzbekanntmachungen** portal (`neu.insolvenzbekanntmachungen.de`), operated by the German federal and state justice administrations. Every record is stamped with its source URL and retrieval timestamp.
- **Public records.** Insolvency publications are a public disclosure open to anyone; this actor reads the open public search and does not log in or bypass any paywall or access control.
- **Query-driven** - it looks up the names you ask for, not a bulk copy of the register. The register's own 1,000-match cap means broad browsing is refused - by design this tool is for targeted checks.
- Use the data lawfully (KYB, credit risk, counterparty due diligence, B2B) and gently. Not a consumer report - do not use for consumer-credit decisions where dedicated bureaus and legal bases apply.

### Notes

- The register caps any single search at **1,000 matches** - a term that is too broad is reported back so you can refine it (fuller name, add a `state`, or a shorter date range).
- Targeted **name searches return matches from any date range**; the two-week default keeps broad terms fast and under the cap. Widen `dateFrom` for a one-off historical check.
- The free Apify plan returns a small preview; upgrade to a paid plan for full, uncapped searches.

# Actor input Schema

## `name` (type: `string`):

The debtor to look up: a company name (e.g. "Wirecard") or a person's surname. Matched as a contains-search across the official insolvency register. Leave empty when using a watchlist.

## `watchlist` (type: `array`):

A list of company names or surnames to check in one run. Ideal for scheduled monitoring - run this Actor daily against your counterparties and get any new insolvency publications. Overrides the single "name" field when set.

## `firstName` (type: `string`):

Optional first name, to narrow an individual-debtor search.

## `city` (type: `string`):

Optional city to narrow the search (matches the debtor's registered seat or place of residence).

## `exactMatch` (type: `boolean`):

Off (default): contains-search - the term is matched anywhere in the name. On: match the term exactly as typed (you may include the portal wildcard \* yourself).

## `state` (type: `string`):

Optional filter by German state - narrows the search and helps a broad term stay under the register's 1,000-match cap. Use a name ("Bayern", "Nordrhein-Westfalen") or a code ("BY", "NW").

## `dateFrom` (type: `string`):

Start of the publication-date window (YYYY-MM-DD). Defaults to two weeks ago. For a one-off historical check, widen this - a targeted name search returns matches from any date. Broad terms over long windows may hit the 1,000-match cap.

## `dateTo` (type: `string`):

End of the publication-date window (YYYY-MM-DD). Defaults to today.

## `subject` (type: `string`):

Optional filter by the type of decision within the proceeding.

## `maxResults` (type: `integer`):

Maximum publications to export across all queries in this run.

## Actor input object example

```json
{
  "name": "Bau",
  "exactMatch": false,
  "state": "NO_CODE",
  "subject": "NO_CODE",
  "maxResults": 200
}
```

# Actor output Schema

## `publications` (type: `string`):

Insolvency publication records in the default dataset.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "name": "Bau"
};

// Run the Actor and wait for it to finish
const run = await client.actor("regdata/germany-insolvency-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "name": "Bau" }

# Run the Actor and wait for it to finish
run = client.actor("regdata/germany-insolvency-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "name": "Bau"
}' |
apify call regdata/germany-insolvency-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=regdata/germany-insolvency-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Germany Insolvency Register Search (Insolvenzbekanntmachungen)",
        "description": "Search Germany's official insolvency register (Insolvenzbekanntmachungen) by company or debtor name. Get court, case number, publication date, seat and the Handelsregister reference. No API key.",
        "version": "1.0",
        "x-build-id": "S37dfCY5EdxxnqVmg"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/regdata~germany-insolvency-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-regdata-germany-insolvency-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/regdata~germany-insolvency-scraper/runs": {
            "post": {
                "operationId": "runs-sync-regdata-germany-insolvency-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/regdata~germany-insolvency-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-regdata-germany-insolvency-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "name": {
                        "title": "Company name or surname",
                        "type": "string",
                        "description": "The debtor to look up: a company name (e.g. \"Wirecard\") or a person's surname. Matched as a contains-search across the official insolvency register. Leave empty when using a watchlist."
                    },
                    "watchlist": {
                        "title": "Watchlist (bulk / monitoring)",
                        "type": "array",
                        "description": "A list of company names or surnames to check in one run. Ideal for scheduled monitoring - run this Actor daily against your counterparties and get any new insolvency publications. Overrides the single \"name\" field when set.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "firstName": {
                        "title": "First name (individuals)",
                        "type": "string",
                        "description": "Optional first name, to narrow an individual-debtor search."
                    },
                    "city": {
                        "title": "Seat / place of residence",
                        "type": "string",
                        "description": "Optional city to narrow the search (matches the debtor's registered seat or place of residence)."
                    },
                    "exactMatch": {
                        "title": "Exact match",
                        "type": "boolean",
                        "description": "Off (default): contains-search - the term is matched anywhere in the name. On: match the term exactly as typed (you may include the portal wildcard * yourself).",
                        "default": false
                    },
                    "state": {
                        "title": "Federal state (Bundesland)",
                        "enum": [
                            "NO_CODE",
                            "BW",
                            "BY",
                            "BE",
                            "BB",
                            "HB",
                            "HH",
                            "HE",
                            "MV",
                            "NI",
                            "NW",
                            "RP",
                            "SL",
                            "SN",
                            "ST",
                            "SH",
                            "TH"
                        ],
                        "type": "string",
                        "description": "Optional filter by German state - narrows the search and helps a broad term stay under the register's 1,000-match cap. Use a name (\"Bayern\", \"Nordrhein-Westfalen\") or a code (\"BY\", \"NW\").",
                        "default": "NO_CODE"
                    },
                    "dateFrom": {
                        "title": "Published from",
                        "type": "string",
                        "description": "Start of the publication-date window (YYYY-MM-DD). Defaults to two weeks ago. For a one-off historical check, widen this - a targeted name search returns matches from any date. Broad terms over long windows may hit the 1,000-match cap."
                    },
                    "dateTo": {
                        "title": "Published to",
                        "type": "string",
                        "description": "End of the publication-date window (YYYY-MM-DD). Defaults to today."
                    },
                    "subject": {
                        "title": "Type of publication (Gegenstand)",
                        "enum": [
                            "NO_CODE",
                            "ABWMASS",
                            "ENT_RSB",
                            "ENT_VERF",
                            "ENT_AUF_VERF",
                            "EROEFF",
                            "SICHMASS",
                            "SONST",
                            "VERTVERZ",
                            "INSO_PLAN"
                        ],
                        "type": "string",
                        "description": "Optional filter by the type of decision within the proceeding.",
                        "default": "NO_CODE"
                    },
                    "maxResults": {
                        "title": "Max results",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Maximum publications to export across all queries in this run.",
                        "default": 200
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
