DACH Company Enrichment: Impressum, Register, VAT & Tech
Pricing
from $4.20 / 1,000 company enricheds
DACH Company Enrichment: Impressum, Register, VAT & Tech
Enrich German, Austrian and Swiss domains: company name, legal form, address, register number, VAT ID checked in VIES, tech stack and mail setup. One row per domain.
Pricing
from $4.20 / 1,000 company enricheds
Rating
0.0
(0)
Developer
Batu T.
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
9 days ago
Last modified
Categories
Security
Limited permissionsShare
Give it a list of German, Austrian or Swiss domains and get back one flat company record per domain. The record combines the legal notice (Impressum) of the website, a live VAT ID check in the official EU VIES service, a tech stack summary of the homepage and the basic mail setup of the domain (MX, SPF, DMARC).
No directories, no commercial registers, no data brokers: every field comes from the company's own website, from EU VIES or from public DNS. That keeps results fresh and runs cheap.
Output per domain
| field | example |
|---|---|
companyName, legalForm | Muster Technik GmbH, GmbH |
street, postalCode, city, country | Hauptstrasse 12, 63739, Aschaffenburg, DE |
managingDirectors | ["Anna Beispiel"] |
phone, fax, email, emails | as published in the Impressum |
registerType, registerNumber, registerCourt | HRB, HRB 12345, Aschaffenburg |
uid | Swiss company UID (CHE-...) |
vatId, vatStatus, vatRegisteredName, vatRegisteredAddress | DE123456789, valid, name and address from VIES |
taxNumber, smallBusiness | tax number, small business note (Paragraph 19 UStG) |
completeness | share of core imprint fields found, 0 to 100 |
cms | WordPress, TYPO3, Wix, Jimdo, Webflow and more |
shopSystem | Shopify, Shopware, WooCommerce, JTL-Shop and more |
analytics, advertising | for example Google Analytics 4, Meta Pixel |
consentTool | Cookiebot, Usercentrics, Borlabs and more |
trackingWithoutConsentTool | true when tracking or ad tags run but no consent tool was detected |
mxPresent, mxHosts | whether the domain receives mail, and where |
spfPresent, spfPolicy | SPF record and its all mechanism (-all, ~all, ?all, +all) |
dmarcPresent, dmarcPolicy | none, quarantine or reject |
partial, partialReason | see below |
error | why a domain could not be processed |
How a domain is processed
- The homepage is fetched once. It is used both to find the Impressum link and to detect the tech stack.
- The Impressum is fetched (or found under common paths such as
/impressumand/imprint) and parsed. Third parties named on the same page, such as the hosting provider, are ignored. - A found DE or AT VAT ID is checked in EU VIES.
- MX, SPF and DMARC are read with three DNS over HTTPS lookups.
No browser is used. A typical domain needs 6 to 8 small requests.
Results, partial results and errors
- Complete record (
partial: false): a company name or a register number was found. Only these are charged. - Partial record (
partial: true, withpartialReason): the website answered, but no company could be identified, for example because there is no Impressum or it is rendered by JavaScript. Tech stack and mail fields are still included. Not charged. - Error item (
error): the input is not a valid domain or the website could not be reached. Not charged.
Inputs
domains: domains or URLs, duplicates are removed.checkTechStack,checkMail,validateVat: switch parts off if you do not need them.respectRobotsTxt: on by default.proxyConfiguration: optional, used only when a website blocks the direct request.
{ "domains": ["webifysystems.de", "https://www.example.at"], "checkMail": true }
Pricing
You pay per enriched company: a domain where a company name or register number was found. Partial records and errors are not charged.
Limits
- Imprints that are only rendered by JavaScript, or published as an image or PDF, return a partial record.
- Register data is read as published in the Impressum. It is not checked against the commercial register.
- Swiss UIDs are returned but not validated, because Switzerland is not part of EU VIES.
- DKIM, TLS and security headers are not checked, to keep runs cheap.
Data protection
Only public legal notices are read. Names and contact details in an Impressum are published by law, but your own use must still comply with GDPR, for example for direct marketing.
Not affiliated with the European Commission (VIES) or any company whose website is processed.
FAQ
What am I charged for? One event per domain where a company name or a register number was found in the Impressum (partial: false). Partial records, error items and duplicate domains are not charged.
Where does the data come from? Only from the company's own website (homepage and Impressum), the EU VIES REST service for DE and AT VAT IDs, and public DNS over HTTPS (Google, Cloudflare as fallback) for MX, SPF and DMARC. No commercial register or data broker is queried.
Do I need a proxy? No. Requests go direct. If you set proxyConfiguration, a request that fails with HTTP 403, 429, 503 or a connection error is retried once through the proxy.
What happens when a website cannot be read? You get an error item with input, domain, error and checkedAt, for example when the website is not reachable or its robots.txt answers with a server error (treated as disallow all). If the site answers but no company can be identified, you get a partial record with partialReason instead.
How many domains can one run handle? Up to maxDomains (default 1000) after duplicates are removed, processed with concurrency 1 to 10 (default 5). No browser is used.
Use with AI agents (MCP)
This Actor works as a tool for Claude, ChatGPT, Cursor and other MCP clients through the Apify MCP server. Add only this Actor:
https://mcp.apify.com?tools=webify-lab/dach-company-enrichment
On first use the server signs you in with OAuth. Alternatively send the header Authorization: Bearer <APIFY_TOKEN>. Agents on the default Apify MCP setup can also find this Actor with search-actors and run it with call-actor. Pricing is the same as in Apify Console: you pay per result.