ForHosting KIT · Entwickler-Tools

Dänemark CPR prüfen

Geben Sie 0707610018 ein und sehen Sie: eine gültige dänische CPR-Nummer einer Frau, geboren am 7. Juli 1961, mit bestandener Mod-11-Kontrolle. Die Schreibweise mit Bindestrich wie 070761-0018 funktioniert ebenso. Praktisch für Kontoeröffnungen und Personaldaten. Kostenlos in Ihrem Browser.

  • Kostenlos
  • Läuft in Ihrem Browser
  • Ohne Anmeldung
  • Ihre Daten bleiben auf Ihrem Gerät
Nutzen Sie es über WebAPIE-MailTelegramApp bald
Wenn Sie eingeben
Zahl
0707610018
Erhalten Sie
Eingabe
0707610018
Geburtsdatum
1961-07-07
Tag
7
Monat
7

Die dänische CPR-Nummer (Personnummer des Det Centrale Personregister) ist der nationale zivile Identifikator für Steuern, Gesundheitswesen, Banken, Beschäftigung und die meisten öffentlichen Formulare in Dänemark. In der üblichen Form hat sie zehn Ziffern: sechs für das Geburtsdatum als Tag-Monat-Jahr (DDMMYY) und vier Serienziffern, die Jahrhundert-Hinweise, eine Laufnummer und eine abschließende Prüfziffer kodieren. Klassische Nummern wenden eine gewichtete Modulo-elf-Summe über alle zehn Ziffern an, sodass ein einzelner Tippfehler in der Regel abgelehnt wird, bevor der Identifikator gespeichert oder abgeglichen wird. Diese Fähigkeit prüft nur diese Struktur. Sie stellt sicher, dass das eingebettete Datum ein echter Kalendertag nach den offiziellen Jahrhundertregeln der siebten Ziffer ist, meldet ob die klassische Modulo-elf-Summe glatt teilt, und liefert das Geburtsdatum im ISO-Format sowie das aus der letzten Ziffer abgeleitete Geschlecht (ungerade männlich, gerade weiblich). Formen mit Bindestrich wie DDMMYY-XXXX werden nach Normalisierung akzeptiert.

Wie eine dänische CPR-Nummer aufgebaut und geprüft wird

Nach dänischer Zivilregisterpraxis ist eine CPR-Personnummer zehn Ziffern, kompakt als DDMMYYXXXX oder mit Bindestrich nach dem Datum als DDMMYY-XXXX. Positionen eins und zwei sind der Geburtstag, drei und vier der Monat, fünf und sechs das zweistellige Jahr.

Die siebte Ziffer wirkt an der Jahrhundertauflösung mit, damit das volle vierstellige Geburtsjahr ohne separates Jahrhundertfeld rekonstruiert werden kann: Ziffern null bis drei mapen auf neunzehnhundert plus das zweistellige Jahr; Ziffern vier und neun mapen auf zweitausend wenn das Jahr sechsunddreißig oder weniger ist und bleiben sonst in neunzehnhundert; Ziffern fünf bis acht mapen auf zweitausend wenn das Jahr siebenundfünfzig oder weniger ist und sonst auf achtzehnhundert für die ältesten Kohorten.

Sobald das volle Jahr bekannt ist, prüft die Fähigkeit, dass der Tag in diesem Monat existiert, einschließlich neunundzwanzigster Februar nur in gregorianischen Schaltjahren, mit reiner Arithmetik und ohne Host-Uhr. Die klassische Kontrollregel multipliziert die zehn Ziffern mit den festen Gewichten vier, drei, zwei, sieben, sechs, fünf, vier, drei, zwei und eins und verlangt, dass die gewichtete Summe durch elf teilbar ist. Die letzte Ziffer ist zugleich Geschlechtsindikator: ungerade für männlich und gerade für weiblich.

Wo dänische CPR-Prüfungen in reale Abläufe passen

Banken und Fintechs validieren zehnstellige CPR-Werte bei der Kontoeröffnung, damit eine einzelne Vertauschung keinen Phantomkunden und keinen abgelehnten KYC-Datensatz erzeugt. ETL-Jobs, die dänische Kunden- oder Mitarbeiter-Masterdateien laden, laufen jede CPR-Spalte in einem CSV- oder XML-Feed ab, rufen diese Fähigkeit auf und stellen Zeilen mit valid false unter Quarantäne — sowohl menschliche Edits als auch Off-by-one-Fehler in Generatoren. Kommunale und schulische Systeme akzeptieren oft sowohl Bindestrich- als auch Kompaktformen; Leerzeichen und Bindestriche vor der Ziffernprüfung zu entfernen hält den Vertrag einfach, ohne einen zweiten Algorithmus zu erfinden.

Behandeln Sie eine bestandene CPR-Prüfung nicht als Nachweis, dass der Inhaber im Bevölkerungsregister lebt, eine dänische Gesundheitskarte besitzt oder für einen Dienst autorisiert ist; sie beweist nur, dass das Datum nach den Jahrhundertregeln kalendergültig ist und dass die klassische Modulo-elf-Ziffer mit den offiziellen Gewichten übereinstimmt, solange diese Regel noch gilt.

Eingegebene dänische CPR in Onboarding-Formularen prüfen

Wenn eine Anmeldung, ein Bank-KYC oder ein HR-Formular eine Personnummer erfasst, rufen Sie die Prüfung auf und blockieren Sie die Absendung bei valid false, während Sie das extrahierte ISO-Geburtsdatum zur Korrektur anzeigen.

CPR-Spalten in dänischen Stammdaten auditieren

Validieren Sie jede CPR in einer CRM-, EHR- oder Payroll-CSV im Batch und stellen Sie Zeilen mit unmöglichem Datum oder nicht mehr passender klassischer Modulo-elf-Kontrolle unter Quarantäne.

Was prüft die Dänemark-CPR-Kontrolle?

Sie prüft, ob eine zehnstellige dänische Personnummer ein reales Kalender-Geburtsdatum enthält (Jahrhundert aus der siebten Ziffer) und ob die klassische gewichtete Mod-11-Kontrolle über alle zehn Ziffern besteht.

Welches Format soll gesendet werden?

Senden Sie zehn Ziffern DDMMYYXXXX, optional mit Bindestrich oder Leerzeichen (zum Beispiel 070761-0018). Nach dem Entfernen von Leerzeichen und Bindestrichen muss der Körper genau zehn Ziffern 0–9 sein.

Kann eine echte CPR-Nummer die Mod-11-Kontrolle verfehlen?

Ja. Nummern, die nach der Lockerung der Regel im Oktober 2007 vergeben wurden, können echt sein, obwohl die Mod-11-Summe nicht aufgeht. Das Werkzeug meldet diese Kontrolle getrennt, damit Sie streng prüfen oder nur das Datum gelten lassen können.

Wie wird das vollständige Geburtsjahr ermittelt?

Aus der siebten Ziffer und dem zweistelligen Jahr. Die Ziffern 0 bis 3 stehen für die 1900er; 4 und 9 für die 2000er bis Jahr 36, sonst die 1900er; 5 bis 8 für die 2000er bis Jahr 57, sonst die 1800er.

Beweist eine gültige CPR-Nummer, dass die Person lebt oder gemeldet ist?

Nein. Es findet keine Abfrage im Personenregister statt. Eine bestandene Prüfung zeigt nur, dass Datum und Kontrollziffer stimmen, nicht dass die Person lebt, registriert ist oder Anspruch auf eine Leistung hat.

Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.

POSThttps://api.kit.forhosting.com/enc/cpr-denmark

Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.

curl -X POST https://api.kit.forhosting.com/enc/cpr-denmark \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"number":"0707610018"}'
{
  "number": "0707610018"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.cpr_denmark",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.

pro Anfrage$0.002

Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.

HTTPCodeBedeutung
401unauthorizedDer API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer).
402insufficient_balanceIhr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht.
404unknown_typeUnbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog.
429rate_limitedZu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt.

Falsche Länge, nichtnumerische Körper und unmögliche Daten scheitern mit invalid_input statt stillschweigendem Abschneiden. Dieselbe reine Arithmetik läuft kostenlos im Browser und zum veröffentlichten API-Preis, ohne Abfrage des Bevölkerungsregisters und ohne die Behauptung, dass eine bestandene Prüfung beweist, dass die Person lebt, registriert oder zu einem Dienst berechtigt ist.

Wie eine dänische CPR-Nummer aufgebaut und geprüft wird

Nummern, die nach der Lockerung im Oktober zweitausendsieben ausgegeben wurden, können behördlich sein, auch wenn die Modulo-elf-Summe scheitert; dieses Werkzeug meldet weiterhin mod11_valid, damit Aufrufer eine strenge oder nur datumsbasierte Richtlinie anwenden.

Eingabevertrag, Antwortform und Fehlerverhalten

Nach der Normalisierung verlangt die Engine genau zehn Ziffern. Sie parst Tag, Monat und zweistelliges Jahr, löst das volle Jahr aus der siebten Ziffer und lehnt unmögliche Kalenderdaten mit einer klaren Meldung ab, die den falschen Tag oder Monat benennt. Falsche Länge nach dem Strip, leere Zeichenketten, fehlendes number und Körper ohne Ziffern scheitern vor jeder Prüfsumme und werden nicht berechnet. Bevorzugen Sie diesen Endpunkt, wenn Sie ein Formular, eine KYC-Datei, einen HR-Import oder eine Gesundheitsaufnahme an eine vom Nutzer oder Partner-Feed eingegebene CPR koppeln und in einem Aufruf sowohl die Datumsprüfung als auch die klassische Kontrolle brauchen. Senden Sie einen JSON-Body mit einem Pflichtfeld number, das den CPR-Körper enthält. Leerzeichen und Bindestriche werden entfernt, sodass übliche dänische Anzeigeformen wie null sieben null sieben sechs eins Bindestrich null null eins acht nach Normalisierung akzeptiert werden; andere Satzzeichen und Buchstaben werden als nichtnumerische Eingabe mit invalid_input abgelehnt, damit ein still bereinigter Wert nie in den Speicher gelangt. Bei einem realen Datum enthält die Antwort immer input als normalisierte zehnstellige Zeichenkette, valid true nur wenn auch die klassische Modulo-elf-Kontrolle besteht, birth_date als ISO-Jahr-Monat-Tag-Zeichenkette, day, month und year als Ganzzahlen, date als das sechsstellige DDMMYY-Fragment, serial als den vierstelligen Schwanz, gender als male oder female, mod11_valid als booleschen Spiegel der Prüfsumme, check_digit als letztes Zeichen, length zehn und algorithm denmark-cpr-mod11. Eine wohlgeformte Zeichenkette mit realem Geburtsdatum aber falscher Prüfziffer liefert valid false und mod11_valid false ohne Exception, damit Formulare das extrahierte Geburtsdatum anzeigen und die Anmeldung dennoch sperren können. Aliase wie cpr, digits, text, value, code und id werden für dasselbe Payload-Feld akzeptiert, damit Integrationen mit dänischen Feldnamen nicht umbenennen müssen. Weil der Pfad reines Parse ohne Uhr, Zufallsquelle oder Netz ist, liefert derselbe JSON-Body immer dasselbe JSON-Ergebnis im kostenlosen Browser-Tool und in der API zu $0.002 pro erfolgreicher Anfrage.

Wo dänische CPR-Prüfungen in reale Abläufe passen

Gesundheitsportale und Apothekensysteme berechnen birth_date und mod11_valid neu, wenn eine Klinik eine Nummer telefonisch aufnimmt oder von einer gescannten Karte einfügt, und fangen Tippfehler ab, bevor ein Journal-Eintrag oder ein Rezept abgelegt wird. Integrationstests behaupten birth_date und gender für feste Stichproben, damit Formularbibliotheken, Etikettendrucker und diese API nicht auseinanderlaufen.

Fixtures für Gesundheits- und Payroll-Tests fixieren

Nutzen Sie bekannte gültige Stichproben wie 0707610018 für Sandbox-Patienten und -Mitarbeitende und behaupten Sie birth_date, gender und mod11_valid, damit Testdaten über Releases stabil bleiben.

Was passiert, wenn die Mod-11-Prüfung scheitert, das Datum aber real ist?

Die Aufgabe endet erfolgreich mit valid false und mod11_valid false und liefert weiterhin birth_date und gender. CPR nach 2007 können behördlich sein ohne bestandene klassische Summe; nutzen Sie mod11_valid für eine lockerere Richtlinie.

Wann erhält man invalid_input?

Fehlendes number, leere Zeichenkette, nichtnumerische Zeichen nach dem Strip, Länge ungleich zehn oder ein unmögliches Kalenderdatum (falscher Monat oder Tag) scheitern mit invalid_input und werden nicht berechnet.

Was kostet die Dänemark-CPR-Prüfung?

Das Browser-Werkzeug ist kostenlos und läuft lokal. API-Aufrufe nutzen das vorausbezahlte KIT-Guthaben zum veröffentlichten Basispreis $0.002; ungültige Eingaben werden nie berechnet.

Vollständige KIT-Dokumentation lesen →