Skip to main content

Identifiers

German companies are identified by a composite registration number in the format: {RegisterCourt} {RegisterType} {RegisterNumber}. Example: München HRB 228960 The following identifiers are extracted and available in company.identifiers:
IdentifierDescriptionExample
registerCourtThe court where the company is registeredMünchen
registerTypeThe type of registerHRB
registerNumberThe registration number within that court/type228960

Register Types

  • HRA - Handelsregister Abteilung A (sole proprietorships and partnerships)
  • HRB - Handelsregister Abteilung B (corporations: GmbH, AG, etc.)
  • VR - Vereinsregister (associations registry)
  • Genossenschaftsregister - Cooperative register
  • Gesellschaftsregister - Company register
  • Partnerschaftsregister - Partnership register

Register Courts

There are 129 register courts (Amtsgerichte) across Germany where companies can be registered. Examples include: Aachen, Augsburg, Berlin (Charlottenburg), Düsseldorf, Frankfurt am Main, Hamburg, Köln, München, Nürnberg, Stuttgart.a

Search Functionality

German company search combines cached and live data sources to deliver fast, comprehensive results. We use three complementary sources:
  • Cached search - Fast results (~200ms) from a weekly-refreshed index of active companies
  • Live Unternehmensregister search - Direct queries for active companies in HRB, HRA, Genossenschaftsregister, Partnerschaftsregister, and Gesellschaftsregister registers
  • Live Handelsregister VR search - Direct queries for non-profit organizations in the VR register
To best leverage this multi-surce feature, we recommend you to use Streaming Search documentation.

Intelligent ID Parsing

We parse queries intelligently to extract and validate ID components:
  • ID Components: Bureau/court (154 possible locations, e.g., “München”), register type (e.g., “HRB” for commercial, “HRA” for partnership), and registration number (digits only). Supports fuzzy matching for variations like “Munchen” for “München” in bureaus or approximate spellings in register types.
  • Full ID Match: If all three components are detected and yield an exact match, we return a single precise result from the cache (no name search needed for speed and accuracy).
  • Partial ID: If 1-2 components are present, results are found via live search sources. Partial ID matching is only available through live sources, not the cached index.
  • Name Search Fallback: If no valid ID parts or full ID fails, we perform a comprehensive name search across all sources.
Examples:
  • "München HRB 228960" → Extracts full ID → Single result from cache: Spectra Bau GmbH (exact match, ~200ms).
  • "HRB 12345" → Partial ID → Results from live search sources (prioritized first, then name results appended).
  • "Siemens AG" → No ID → Full name search across all sources returns top matches.
This ensures precise results for known IDs while maintaining broad discoverability. All searches validate against official mappings for accuracy.

Shareholders Extraction

German shareholder extraction uses an intelligent multi-source strategy that adapts based on the company’s legal form. The system automatically determines the optimal extraction path to maximize data quality and efficiency.

Extraction Logic

The extraction process follows this logic:
  1. Legal Form Analysis - The system first analyzes the company’s legal form to determine:
    • Whether it requires public shareholder disclosure
    • Whether it’s a partnership structure (KG, OHG, etc.) or corporate structure (GmbH, AG, etc.)
  2. Primary Source: Gesellschafterliste (Shareholder List) - For companies required to disclose shareholders:
    • We first look for the “Liste der Gesellschafter” document
    • This is the most comprehensive and authoritative source
    • If found with shareholders, we use this exclusively
  3. Fallback Strategy - If no Gesellschafterliste is found or it’s empty: For Partnership Structures (KG, GmbH & Co. KG, OHG):
    • First Priority: Trade register extract (“Aktueller Abdruck”)
      • Extracts Kommanditisten (limited partners)
      • Extracts Komplementär (general partners)
      • Identifies profit transfer agreements (100% control)
    • Last Resort: Financial statements (only if trade register has no partners)
    For Corporate Structures (GmbH, UG, AG, SE, KGaA):
    • Both sources checked in parallel:
      • Trade register extract (for control statements)
      • Financial statements (for parent company identification)

Extraction Flow Diagram

Data Sources Explained

1. Gesellschafterliste (Shareholder List)
  • Official document filed with the trade register
  • Required for: GmbH, UG, KG, OHG, GmbH & Co. KG
  • Contains: Complete list of shareholders/partners with percentages and capital contributions
  • Most authoritative source when available
2. Trade Register Extract (Aktueller Abdruck)
  • Official certified extract from the Handelsregister
  • For partnerships (KG, OHG): Lists Kommanditisten (limited partners) with capital contributions
    • Only economic owners extracted: Kommanditisten who provide capital and own the partnership
    • Komplementäre excluded: General partners (managers with unlimited liability) are NOT included as they are not economic owners
    • Percentage calculation: When multiple Kommanditisten are listed with capital amounts, percentages are automatically calculated
  • For all companies: Shows profit transfer agreements (Gewinnabführungsvertrag) indicating 100% control
  • Extracted using AI from PDF document
3. Financial Statements
  • Annual reports and financial filings
  • Used to identify parent companies through control relationships
  • Fallback for companies without disclosure requirements (AG, SE, KGaA)
  • Last resort for partnerships when trade register has no partner information

Key Features

  • Intelligent prioritization: Partnership structures check trade register before financial statements
  • Economic ownership focus: Only returns actual shareholders/owners, excludes Komplementäre (general partners who manage but don’t own)
  • Automatic percentage calculation: For KG structures, calculates ownership percentages from capital contributions when all Kommanditisten are listed
  • Deduplication: Multiple sources are combined and deduplicated by shareholder identity
  • Capital extraction: Supports German partnership terms like “Kommanditeinlage” and “Haftsumme”
  • Source attribution: Each shareholder record includes the source document and extraction method

Partnership Structures (KG) - Important Notes

German KG (Kommanditgesellschaft) and GmbH & Co. KG have two types of partners:
  1. Komplementär (General Partner):
    • Manages the company with unlimited personal liability
    • NOT included in shareholder results - they are managers, not economic owners
    • Example: In “ABC GmbH & Co. KG”, the “ABC GmbH” is the Komplementär
  2. Kommanditisten (Limited Partners):
    • Provide capital and own the economic value
    • Have limited liability (only lose their capital contribution)
    • These ARE included as shareholders with calculated percentages
Example: VREF Germany ACB GmbH & Co. KG
  • ACB Verwaltungs GmbH (Komplementär) → Excluded (manager, not owner)
  • Swiss Life AG (5,100 EUR) → Included as 5.1% shareholder
  • VREF Germany Real Estate Acquico (94,900 EUR) → Included as 94.9% shareholder

Reliability and Retry Strategy

In verification mode, our commitment is to provide constantly up-to-date information. This freshness requirement means that the observed success rate depends directly on the availability and success rate of the third-party register being queried. Since the verification endpoint is designed for asynchronous processing, we have chosen to optimize for reliability rather than execution speed. We implement retry strategies to significantly increase the success rate, accepting a possible increase in delivery time. Our priority is clear: ensure eventual delivery rather than a definitive failure. Both Unternehmensregister and Handelsregister are quite unstable, requiring aggressive retry strategies. For Germany’s live workflows (company profile and document retrieval), we use 10 retry attempts within 1 hour total, with exponential backoff starting at 1 minute and capping at 8 minutes between retries.

Onboarding Profile

The Onboarding Profile endpoint provides fast, cost-effective access to company profile data for Germany, optimized for onboarding workflows. Note: Retries do not apply to the onboarding endpoint - it is optimized for speed and cost efficiency rather than reliability.

Caching Strategy

The onboarding profile uses a cached data approach for maximum speed and reliability:
  • Cache Refresh: Data is cached and refreshed approximately every month
  • Cache Coverage: The cache covers companies from HRB, HRA, Genossenschaftsregister, Partnerschaftsregister, and Gesellschaftsregister registers
  • VR Register: The cache does not support the VR (Vereinsregister) register

Fallback Behavior

When cached data is not available, the system automatically falls back to live data sources:
  • New Companies: Companies not yet indexed in the cache are fetched live from the register
  • VR Register Companies: All VR register companies are fetched live since they’re not included in the cache
This hybrid approach ensures:
  • Fast responses for most companies (from cache)
  • Complete coverage for all companies (via live fallback)
  • Reliability even when cache misses occur

Performance

The onboarding profile is optimized for speed with a P90 response time target of under 5 seconds, making it ideal for real-time onboarding flows.

Financial Documents and Pricing

Some financial documents are more expensive:
  • Regular companies must publish annual financial statements; these are available free of charge in the Handelsregister.
  • Micro-companies may publish voluntarily. Because publication is optional, retrieval of these documents is paid.