Denmark CVR Company Health & KYB Risk Score avatar

Denmark CVR Company Health & KYB Risk Score

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Denmark CVR Company Health & KYB Risk Score

Denmark CVR Company Health & KYB Risk Score

Look up Danish companies in the official CVR registry and get a transparent 0-100 health/KYB risk score with a full reason breakdown. Company data only - GDPR-safe.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

Nicolas van Arkens

Nicolas van Arkens

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Share

Look up any Danish company in the official CVR registry (Det Centrale Virksomhedsregister) and get back a single, explainable 0–100 health score with a letter grade (A–F) and a risk band (LOW / MEDIUM / HIGH).

Most CVR tools hand you raw registry fields and leave the judgement to you. This one does the judgement: it turns the registry data into a defensible KYB/risk signal, and shows you the reason for every point.

What it's for

  • KYB onboarding — score a Danish company in one call before you let it onto your platform.
  • AML / compliance screening — automatically catch ceased, dissolved, and bankrupt entities.
  • B2B sales & supplier due diligence — rank prospects or vendors by operational substance and standing.
  • Lead enrichment — append a health grade to a list of Danish companies.

Input

FieldDescription
companiesList of lookups. Each can be an 8-digit CVR number (24256790), a VAT number (DK24256790), or a company name (Novo Nordisk). CVR number matches most reliably.
countrydk (Denmark, default) or no (Norway).
contactEmailA real email or app name. The registry requires every caller to self-identify; it is sent only in the request header.
includeRawDataInclude the normalized raw registry fields alongside the score (default true).

Output (one record per company)

{
"query": "24256790",
"found": true,
"country": "dk",
"name": "Novo Nordisk A/S",
"vat": "24256790",
"healthScore": 100,
"grade": "A",
"riskBand": "LOW",
"components": {
"longevity": { "score": 30, "max": 30, "reason": "Long-standing entity (~36 yr)." },
"statusIntegrity": { "score": 30, "max": 30, "reason": "Active and in normal standing." },
"operationalFootprint": { "score": 20, "max": 20, "reason": "3 production units. ~50000+ employees." },
"transparency": { "score": 20, "max": 20, "reason": "Public contact details. Industry-classified. Address listed." }
},
"raw": { "name": "...", "address": "...", "industrycode": "...", "productionUnitCount": 3, "...": "..." }
}

How the score works

The score is fully transparent and additive (max 100), then gated:

  • Longevity (0–30) — how long the entity has existed.
  • Status integrity (0–30) — active and solvent vs. distressed.
  • Operational footprint (0–20) — production units + employee headcount.
  • Transparency (0–20) — reachable, industry-classified, address not protected.

A fatal flag — bankruptcy, cessation, or dissolution — caps the total at 25 (grade F, HIGH risk) no matter how strong the other signals are. A bankrupt 30-year-old company is exactly what a KYB check exists to catch, so it cannot score "investable".

Data source & privacy

Data comes from the official Danish CVR registry via its free public JSON gateway. Company-level (legal-entity) data only — this actor never requests or returns beneficial-ownership or natural-person records, which are access-restricted in Denmark since September 2025. GDPR-safe by construction.

For very high request volumes, the Danish Business Authority also offers an authenticated system-to-system distribution feed; the scoring logic in src/scoring.py is source-agnostic and can be pointed at it.

Notes

  • Be specific with name searches — an exact CVR number always beats a fuzzy name.
  • The actor paces requests gently to respect the free gateway's rate limits.
  • Pricing is pay-per-result.