Was die acht Ziffern einer Versichererummer erzählen — Gesetzestyp-Nummern, Präfekturnummern und Prüfziffern aus der Implementierung eines Abrechnungscomputers gelesen
· Go Komura · Medizin-IT, ORCA, Versicherernummer, Abrechnungscomputer, Krankenkassenabrechnung, Arztpraxisverwaltung
Die Versicherernummer, die auf einer Krankenversicherungskarte (heutzutage auf dem Berechtigungsinformations-Bildschirm einer My-Number-Krankenversicherungskarte) gedruckt ist. Es ist die acht- (manchmal sechs-) stellige Nummer, die bei jeder Abrechnung auftaucht — doch überraschend wenige Ingenieure wissen, dass „sich diese Nummer tatsächlich lesen lässt“. Die ersten beiden Ziffern verraten, zu welchem System die Person gehört, die nächsten beiden, in welcher Präfektur der Versicherer sitzt, und mit der letzten Ziffer lässt sich das Ganze sogar verifizieren. Mit anderen Worten: Eine Versicherernummer ist keine bloße laufende Nummer, sondern ein Code mit Struktur.
Der vierte Artikel der ORCA-Serie stellt das angekündigte Thema der Abrechnungsprüfung zurück und seziert stattdessen die Versicherernummer als eigenständiges Sonderkapitel. Wir behandeln vier Dinge.
- Der Aufbau einer Versicherernummer — Gesetzestyp-Nummer, Präfekturnummer, versichererbezogene Nummer, Prüfziffer
- Die Prüfziffer von Hand berechnen, und ORCAs COBOL-Implementierung davon
- Die historische Sonderregelung, nach der allein die alte staatlich verwaltete Krankenversicherung (heute Kyokai Kenpo) „vier Stellen“ hatte
- Die Spuren dieser Sonderregelung, die im 2026 veröffentlichten ORCA-Quellcode noch lebendig sind
Für die regulatorische Seite ist die Primärquelle die Richtlinie des Gesundheitsministeriums „Richtlinien zur Festlegung von Versicherernummern, Kostenträgernummern, Empfängernummern für öffentlich finanzierte medizinische Versorgung, Gesundheitsdienstleister-Codes und Apothekencodes“ (im Folgenden „die Festlegungsrichtlinien“); für die Implementierungsseite stützen sich die Aussagen, wie in den vorangegangenen Folgen, auf das tatsächliche Lesen des offiziell veröffentlichten Nichi-Rece-Kerns, Quellcode der 5.2er-Serie (Schnappschuss veröffentlicht im Juli 2026).
Inhaltsverzeichnis
- Zunächst das Fazit — eine Versicherernummer ist „System + Region + laufende Nummer + Prüfsumme“
- Die Gesetzestyp-Nummer — die ersten beiden Ziffern verraten das System
- Die Präfekturnummer und die versichererbezogene Nummer — bis hin zu welchem Versicherer
- Die Prüfziffer — Modulus 10 Gewicht 2-1 von Hand durchrechnen
- Die Ausnahme — die alte staatlich verwaltete Krankenversicherung hatte „vier Stellen“
- Was eine Versicherernummer nicht verrät
- Wie ORCA es implementiert — zwei Stammdatentabellen und eine Verzweigung nach Stellenzahl
- Praktische Punkte für alle, die Systeme bauen, die diese Nummern verarbeiten
- Zusammenfassung
- Referenzlinks
1. Zunächst das Fazit — eine Versicherernummer ist „System + Region + laufende Nummer + Prüfsumme“
Artikel 1 der Festlegungsrichtlinien definiert die Versicherernummer wie folgt.
| Position | Stellen | Name | Bedeutung |
|---|---|---|---|
| Ziffern 1–2 | 2 | Gesetzestyp-Nummer | Das Krankenversicherungssystem (Kyokai Kenpo, gesellschaftsverwaltete Krankenversicherung, Medizinversorgung für Ältere im fortgeschrittenen Alter …) |
| Ziffern 3–4 | 2 | Präfekturnummer | Die Präfektur, in der der Versicherer sitzt |
| Ziffern 5–7 | 3 | Versichererbezogene Nummer | Die Nummer des einzelnen Versicherers innerhalb dieses Systems und dieser Präfektur |
| Ziffer 8 | 1 | Prüfziffer | Prüfziffer (Modulus 10 Gewicht 2-1) |
Es gibt jedoch eine Ausnahme, die direkt in die Hauptregel geschrieben ist. Allein die nationale Krankenversicherung (ohne Rentnermedizinversorgung) hat keine Gesetzestyp-Nummer, was insgesamt sechs Stellen ergibt: 2-stellige Präfekturnummer + 3-stellige versichererbezogene Nummer + 1-stellige Prüfziffer. Ist die Versicherernummer auf einer Karte sechsstellig, verrät das allein bereits, dass es sich entweder um die kommunale NHI oder einen NHI-Verband handelt.
Nimmt man das in den Festlegungsrichtlinien angegebene Beispiel unverändert, liest sich die Versicherernummer 06130488 so.
06 13 048 8
│ │ │ └ Prüfziffer (wir verifizieren sie in Kapitel 4)
│ │ └ Versichererbezogene Nummer: Gesellschaft Nr. 048 innerhalb Tokios
│ └ Präfekturnummer: 13 = Tokio
└ Gesetzestyp-Nummer: 06 = gesellschaftsverwaltete Krankenversicherung
Die Nummer allein bringt Sie also, ohne einen Stamm zu konsultieren, so weit wie „eine der in Tokio ansässigen Krankenversicherungsgesellschaften“. Die folgenden Kapitel betrachten jede Komponente der Reihe nach.
2. Die Gesetzestyp-Nummer — die ersten beiden Ziffern verraten das System
Gesetzestyp-Nummern sind in Anhangstabelle 1(1) der Festlegungsrichtlinien definiert, „Tabelle der Gesetzestyp-Nummern und Systemabkürzungen“. Hier ein Auszug der wichtigsten Krankenversicherungssysteme.
| Gesetzestyp-Nummer | System | Abkürzung |
|---|---|---|
| 01 | Kyokai Kenpo (Krankenversicherung verwaltet von der Japan Health Insurance Association; ehemals staatlich verwaltete Krankenversicherung) | (協) |
| 02 | Seeleutenversicherung | (船) |
| 03 / 04 | Versicherung für Tagelöhner-Sonderfall-Versicherte (allgemeine medizinische Versorgung / besondere Heilbehandlungskosten) | (日) |
| 06 | Gesellschaftsverwaltete Krankenversicherung | (組) |
| 07 | Heilleistungen für Angehörige der Selbstverteidigungsstreitkräfte und andere | (自) |
| 31–34 | Versorgungskassen (nationale Beamte / kommunale Beamte und andere / Polizei / öffentliche Schulen und Förderung privater Schulen) | (共) |
| 39 | Medizinversorgung für Ältere im fortgeschrittenen Alter | (高) |
| 63, 72–75 | Sonderfall-Rentner (spezifizierte Krankenversicherungsgesellschaften / die verschiedenen spezifizierten Versorgungskassen) | (退) |
| 67 | Rentnermedizinversorgung nach dem Gesetz über nationale Krankenversicherung | — |
| (keine, 6 Stellen) | Nationale Krankenversicherung (ohne Rentnermedizinversorgung) | — |
Es gibt drei praktische Punkte beim Lesen.
- Sie bestimmen, wohin die Abrechnung geht. Abrechnungen für arbeitnehmerbezogene Versicherungen (01–34, 63, 72–75) werden an den Sozialversicherungs-Abrechnungsfonds übermittelt; jene für die nationale Krankenversicherung (sechsstellig, sowie Gesetzestyp 67) und die Medizinversorgung für Ältere im fortgeschrittenen Alter (39) gehen an die Verbände der nationalen Krankenversicherung. Die Unterscheidung, die die Abrechnungswelt „shaho“ gegenüber „kokuho“ nennt, lässt sich mechanisch allein durch einen Blick auf den Anfang der Versicherernummer feststellen.
- Manche NHI-Familien-Nummern sind achtstellig. Die NHI-Rentnermedizinversorgung (67) ist ausnahmsweise eine achtstellige Nummer mit Gesetzestyp-Nummer, obwohl sie Teil des NHI-Systems ist. Vereinfachen Sie dies in Ihrer Implementierung zu „6 Stellen = NHI, 8 Stellen = Arbeitnehmerversicherung“, stolpern Sie genau hier.
- Ein Versicherer bedeutet nicht eine Nummer. Wie die Anmerkungen zu Anhangstabelle 1 festhalten, sind 63 und 72–75 Gesetzestyp-Nummern für Sonderfall-Rentner-Versicherte. Dieselbe Krankenversicherungsgesellschaft kann mehrere Versicherernummern führen — eine 06-Nummer für ihre gewöhnlichen Versicherten und eine 63-Nummer für ihre Sonderfall-Rentner.
Es gibt außerdem eine sehr ähnliche achtstellige Nummer, die Kostenträgernummer (12 für Sozialhilfe, 21 für ambulante psychiatrische Versorgung und so weiter). Ihr Aufbau — 2-stelliger Gesetzestyp + 2-stellige Präfektur + 3-stellige durchführende Stelle + 1-stellige Prüfziffer — sieht identisch aus, ist aber ein separates Codesystem gegenüber der Versicherernummer der Krankenversicherung. Abrechnungen haben sogar getrennte Eingabefelder dafür. Wir kommen in Kapitel 6 auf das Risiko der Verwechslung beider zurück.
3. Die Präfekturnummer und die versichererbezogene Nummer — bis hin zu welchem Versicherer
Die Präfekturnummer in den Ziffern 3–4 ist in Anhangstabelle 2 der Festlegungsrichtlinien definiert und läuft von 01 (Hokkaido) bis 47 (Okinawa). Die Reihenfolge entspricht den gebräuchlichen JIS-Präfekturcodes: Tokio ist 13, Osaka ist 27. Das Kriterium ist der Sitz des Versicherers, sodass selbst für ein Unternehmen mit landesweiten Versetzungen die Nummer 13 lautet, wenn die Krankenversicherungsgesellschaft ihren Sitz in Tokio hat.
Die versichererbezogene Nummer in den Ziffern 5–7 ist die Nummer, die jedem Versicherer innerhalb dieses Systems und dieser Präfektur zugewiesen wird. Auch wer sie vergibt, ist in den Rundschreiben festgelegt: Nach den geltenden Bestimmungen werden Kyokai-Kenpo-Nummern pro Präfekturfiliale von der Krankenversicherungsbehörde des Gesundheitsministeriums vergeben, Nummern der gesellschaftsverwalteten Krankenversicherung pro Gesellschaft von den regionalen Gesundheits- und Wohlfahrtsämtern, NHI-Nummern pro Gemeinde oder NHI-Verband von der Präfektur, Nummern der Medizinversorgung für Ältere im fortgeschrittenen Alter von den entsprechenden regionalen Zweckverbänden, und Nummern der Versorgungskassen von den jeweils zuständigen Ministerien. (Bei Einführung des Systems 1976 waren der Generaldirektor der Sozialversicherungsbehörde und die Gouverneure der Präfekturen die vergebenden Stellen, doch diese Zuständigkeit ist mit der Umorganisation der Verwaltungsstruktur auf die heutigen Stellen übergegangen.)
Mit anderen Worten: Versicherernummern werden nicht landesweit zentral vergeben, sondern verteilt innerhalb des Rahmens „System × Präfektur“ nummeriert. Der laufende Nummernteil allein ist bedeutungslos; erst gepaart mit Gesetzestyp-Nummer und Präfekturnummer zeigt er eindeutig auf einen Versicherer. Das stimmt mit ORCAs Stammdatendesign überein, das wir später betrachten (der Schlüssel des Versichererstamms ist die Versicherernummer selbst).
Nebenbei bemerkt: Obwohl Kyokai Kenpo als juristische Person eine einzige Einheit ist — die Japan Health Insurance Association —, werden ihre Versicherernummern pro Präfekturfiliale vergeben (Agenturmitteilung Versicherung Nr. 0918001 vom 18. September 2008). Es ist ein gutes Beispiel dafür, dass „die von einer Versicherernummer identifizierte Einheit“ und „der Versicherer als juristische Person“ nicht immer übereinstimmen.
4. Die Prüfziffer — Modulus 10 Gewicht 2-1 von Hand durchrechnen
Die Festlegungsrichtlinien geben auch das Verfahren zur Berechnung der abschließenden Prüfziffer an.
- Multiplizieren Sie jede Ziffer außer der Prüfziffer der Reihe nach mit 2 und 1, beginnend bei der letzten Ziffer
- Summieren Sie die Produkte; hat ein Produkt zwei Ziffern, verwenden Sie die Summe seiner ersten und zweiten Ziffer
- Die Prüfziffer ist die Differenz zwischen 10 und der letzten Ziffer der Summe aus Schritt 2 — außer wenn diese letzte Ziffer 0 ist, dann ist die Prüfziffer 0
Dies ist das als Modulus 10 Gewicht 2-1 (M10W21) bekannte Schema. Verifizieren wir es anhand von 06130488 aus Kapitel 1.
Ziffer: 0 6 1 3 0 4 8
Gewicht: 2 1 2 1 2 1 2 <- 2,1,2,1… beginnend am rechten Ende (8)
Produkt: 0 6 2 3 0 4 16
Summe: 0 + 6 + 2 + 3 + 0 + 4 + (1+6) = 22
Prüfziffer: 10 - 2 = 8 ✓ (stimmt mit der abschließenden 8 überein)
Im Code sind es wenige Zeilen.
def check_digit(code: str) -> int:
"""Berechnet die Prüfziffer aus den Ziffern einer Versicherernummer, ohne die Prüfziffer selbst"""
total = 0
for i, ch in enumerate(reversed(code)):
n = int(ch) * (2 if i % 2 == 0 else 1)
total += n // 10 + n % 10
return (10 - total % 10) % 10
assert check_digit("0613048") == 8
Hier ist eine Implementierungsfalle. Die Gewichtung „2,1,2,1…“ ist definiert als beginnend am rechten Ende. Wie es sich trifft, ist die zu prüfende Ziffernfolge bei Versicherernummern speziell sieben Stellen (bei einer 8-stelligen Nummer) oder fünf (bei einer 6-stelligen NHI-Nummer) — beide ungerade —, sodass eine Multiplikation mit 2,1,2,1… vom linken Ende aus genau dieselben Gewichte zuweist (bei ungerader Länge ist die Gewichtsfolge symmetrisch). Die Gefahr entsteht in dem Moment, in dem Sie diese Routine auf eine Nummer mit gerader Ziffernzahl wiederverwenden. Zum Beispiel besteht die Empfängernummer für öffentlich finanzierte medizinische Versorgung aus einer 6-stelligen Empfängerklassifikation plus einer 1-stelligen Prüfziffer — sechs zu prüfende Stellen, eine gerade Zahl. Eine vom linken Ende aus geschriebene Implementierung hat jedes Gewicht um eins verschoben und liefert einen anderen Wert. Das Tückische daran: Ein Test allein mit Versicherernummern kann dies niemals aufdecken.
Amüsanterweise trägt der ORCA-Quellcode genau die Spuren dieser Falle. Das gemeinsame Unterprogramm, das die gesamte Prüfziffernberechnung und -verifikation übernimmt, cobol/common/ORCSCHKDGT.CBL (Komponentenname „Prüfziffernberechnung (Prüfung)“), ist eine allgemeine Routine, die Nummern mit bis zu 20 Stellen entgegennimmt, nicht speziell Versicherernummern — und seine Änderungshistorie lautet:
* Programm-Änderungshistorie
* Maj/Min/Rev Geändert von Datum Inhalt
* 01.00.01 MCC-Ota 01/04/17 Die Arithmetik beginnend vom rechten Ende durchführen
Vier Monate nach der Neuerstellung im Dezember 2000, im April 2001, ging eine Änderung ein, die lautete „die Arithmetik beginnend vom rechten Ende durchführen“ — und liest man den auskommentiert zurückgelassenen alten Code, sieht man, dass die erste Version die Gewichte vom linken Ende aus multiplizierte. Wie oben erwähnt, ergibt der Start vom linken Ende bei Versicherernummern ungerader Länge zufällig dasselbe Ergebnis, sodass der Fehler erst zutage tritt, sobald man eine Nummer gerader Länge verifiziert. Der korrigierte Code nimmt den Index des rechten Endes der Ziffernfolge in IDY, verringert IDY, während er die Gewichte vom rechten Ende her anwendet, zerlegt ein zweistelliges Produkt als WRK-CD2-1 + WRK-CD2-2 und summiert diese, und gibt schließlich 10 - (Summe mod 10) zurück — genau das Verfahren der Festlegungsrichtlinien. Eine einzige Zeile Änderungshistorie von vor fünfundzwanzig Jahren dient bis heute als Merkzettel: Schreiben Sie Prüfziffern vom rechten Ende aus, und lassen Sie sich nicht durch Tests mit ungerader Länge in Sicherheit wiegen.
5. Die Ausnahme — die alte staatlich verwaltete Krankenversicherung hatte „vier Stellen“
Bis hierhin war alles die allgemeine Regel. Und Versicherernummern hatten eine historisch enorme Ausnahme. Artikel 1, Absatz 7 der Festlegungsrichtlinien besagt:
Sonderregelung zur Versicherernummer der staatlich verwalteten Krankenversicherung (ohne Versicherung für Tagelöhner-Sonderfall-Versicherte) Ungeachtet der obigen Absätze 1 und 3 besteht die Versicherernummer der staatlich verwalteten Krankenversicherung (…) bis auf Weiteres aus der vierstelligen Nummer, die sich aus der Kombination einer 2-stelligen Präfekturnummer und einer 2-stelligen versichererbezogenen (gemeindebezogenen) Nummer ergibt, wobei die Präfekturnummer in diesem Fall die in Anhangstabelle 3 für jede Präfektur, in der sich das Sozialversicherungsamt befindet, festgelegte Nummer ist.
Die staatlich verwaltete Krankenversicherung („seikan kenpo“), die Vorläuferin von Kyokai Kenpo, war das System, das Angestellte kleiner und mittlerer Unternehmen abdeckte — mitgliederzahlmäßig eines der größten des Landes. Und die Versicherernummer dieses größten Systems war:
- Vier statt acht Stellen (keine Gesetzestyp-Nummer, und auch keine Prüfziffer)
- Eine Präfekturnummer nicht aus der üblichen Anhangstabelle 2, sondern aus einer eigenen Anhangstabelle 3
- Nummeriert pro Sozialversicherungsamt, obwohl der Versicherer eine einzelne Stelle war (der Staat)
— eine dreifache Ausnahme. Die Nummern in Anhangstabelle 3 sehen den Nummern in der gewöhnlichen Tabelle überhaupt nicht ähnlich.
| Präfektur | Gewöhnliche Präfekturnummer (Anhangstabelle 2) | Nur staatlich verwaltet (Anhangstabelle 3) |
|---|---|---|
| Tokio | 13 | 21 |
| Kanagawa | 14 | 31 |
| Aichi | 23 | 51 |
| Osaka | 27 | 41 |
| Fukuoka | 40 | 75 |
| Okinawa | 47 | 82 |
Diese Sonderregelung blieb „bis auf Weiteres“ mehrere Jahrzehnte lang bestehen und wurde erst mit dem Start der Japan Health Insurance Association (Kyokai Kenpo) am 1. Oktober 2008 aufgelöst. Nach den heutigen Richtlinien (der aktuellen Fassung des Rundschreibens von 1976) sind Kyokai-Kenpo-Versicherernummern achtstellige, pro Präfekturfiliale vergebene Nummern (gemäß der oben genannten Agenturmitteilung Versicherung Nr. 0918001). Die Gesetzestyp-Nummer ist 01, dieselbe wie in der Ära der staatlich verwalteten Krankenversicherung.
Spuren von „seikan“ im ORCA-Quellcode
Regulatorisch endete die Geschichte 2008, doch ein Abrechnungscomputer verarbeitet weiterhin alte Daten. Der 2026 veröffentlichte ORCA-5.2er-Quellcode trägt noch heute lebendige Spuren der 4-stelligen Ära der staatlich verwalteten Krankenversicherung.
Spur 1: Ableitung des Systems aus der Stellenzahl. Das bei der Patientenregistrierung verwendete Eingabeprüf-Unterprogramm für Versicherungen, cobol/orca12/ORCSP03A.CBL, beschränkt die eingegebene Versicherernummer auf 4, 6 oder 8 Stellen (alles andere ist ein Fehler) und leitet dann für nicht im Versichererstamm registrierte Nummern das System (ORCAs interne „Versicherungsnummer“) aus der Stellenzahl ab.
* Bearbeitung anhand des Gesetzestyps
EVALUATE WRK-MOJ-MAX
WHEN 4
* Staatlich verwaltet
MOVE "001" TO WRK-HKNJA-HKNNUM
WHEN 6
* Nationale Krankenversicherung
MOVE "060" TO WRK-HKNJA-HKNNUM
WHEN 8
* Sonstige
PERFORM 1003-HKNNUM-HBTNUM-SEC
END-EVALUATE
Vier Stellen bedeutet staatlich verwaltet (interner Code 001); sechs bedeutet NHI (060); acht bedeutet, den Stamm anhand der führenden 2-stelligen Gesetzestyp-Nummer nachschlagen. Das Wissen über das Nummerierungssystem aus den Kapiteln 1–3 ist zu einer COBOL-Verzweigung geworden, genau so. Und weil 4-stellige, staatlich verwaltete Nummern keine Prüfziffer haben, läuft die unmittelbar davor stehende Modulus-10-Prüfung nur „wenn die Stellenzahl größer als 4 ist“. Die Sonderregelung reicht bis in die Verifikationslogik hinein.
Spur 2: Übersetzung von staatlich verwaltet zu Kyokai. Es gibt auch eine Behandlung auf der Datenmigrations- und Importseite. Der Batch, der Patientenversicherungsinformationen importiert, cobol/orcabt/ORCVTPTHKNINF.CBL, enthält:
* Unterstützung für Kyokai Kenpo
IF PTHKN-HKNNUM = "001"
* Falls es als staatlich verwaltet einging, die Versicherernummer aber 8 Stellen hat, als Kyokai behandeln
IF WRK-LEN = 8
MOVE "009" TO PTHKN-HKNNUM
END-IF
END-IF
— das heißt: „Falls es als staatlich verwaltet (001) einging, die Versicherernummer aber acht Stellen hat, als Kyokai Kenpo (009) neu interpretieren.“ Intern koexistieren das alte staatlich verwaltete System und das heutige Kyokai Kenpo als verschiedene Versicherungsnummern, und die Stellenzahl ist der Hinweis, der Alt von Neu unterscheidet. Auf der Seite der Abrechnungsaggregation bündelt cobol/orcabt/ORCBG014.CBL 001 und 009 in dieselbe Klassifikation, mit einem Kommentar, der lautet: „Staatlich verwaltet wechselt zu Kyokai.“
Spur 3: Umschreiben des Anzeigenamens. Das Paradebeispiel ist die gemeinsame Routine zur Bearbeitung von Versicherungsnamen, cobol/common/ORCSHKNMEI.CBL.
01 CONST-H201001 PIC X(08) VALUE "20081001".
...
IF ( ORCSHKNMEI-SRYYMD >= CONST-H201001 )
AND ( COMB-HKNNUM = "001" )
INSPECT COMB-SYU-TANSEIDONAME
REPLACING ALL "政管" BY "協会"
END-IF
Das Startdatum von Kyokai Kenpo 20081001 ist als Konstante eingebettet, und liegt das Behandlungsdatum an oder nach diesem Datum, wird die Zeichenkette „政管“ (staatlich verwaltet) im Kurznamen des Systems durch „協会“ (Kyokai) ersetzt. Der Name im Stamm bleibt unverändert, und nur die Anzeige wechselt je nach Behandlungsdatum — sodass eine Behandlung mit Datum am oder vor dem 30. September 2008 auch heute noch als „政管“ angezeigt wird. Die Geschichte des Systems wird zur Laufzeit durch eine einzige Zeichenkettenersetzung reproduziert.
6. Was eine Versicherernummer nicht verrät
Nachdem wir verfolgt haben, „wie viel man erfahren kann“, ziehen wir auch die Grenze: die Dinge, die eine Versicherernummer nicht verrät.
- Sie können keine Einzelperson identifizieren. Eine Versicherernummer weist nur bis zum Versicherer (als Einheit). Die Identifizierung einer Einzelperson übernehmen das Symbol und die Nummer auf der Versicherungskarte (und die zweistellige Zweignummer, die mit der Umstellung der Online-Berechtigungsprüfung auf individuelle Identifizierung hinzukam). Bei der Online-Berechtigungsprüfung, die wir letztes Mal betrachtet haben, waren die Abfragebedingungen die Kombination aus Versicherernummer + Symbol und Nummer + Zweignummer.
- Sie bestimmt nicht den Eigenanteil. Die Gesetzestyp-Nummer verrät das System, doch der am Empfangsschalter zu zahlende Betrag variiert je nach Alter und Einkommensklasse. Abkürzungen wie „39, also 10 %“ sind tabu; der Eigenanteil wird aus dem Ergebnis der Berechtigungsprüfung bestimmt (Bescheinigung für ältere Leistungsempfänger, Informationen zur Bestätigung der Belastungsobergrenze und so weiter).
- Der Name und die Kontaktdaten des Versicherers ergeben sich nicht daraus. Die Nummer bringt Sie so weit wie „Gesellschaft Nr. 048 unter Tokios gesellschaftsverwalteten Krankenversicherungen“, doch welche Gesellschaft das ist, wird erst durch den Abgleich mit dem Versichererstamm klar. Das Nummerierungssystem liefert lediglich einen Suchschlüssel.
- Kostenträgernummern sind eine andere Welt. Die achtstelligen Nummern für Sozialhilfe (Gesetzestyp 12), Dienste und Unterstützung für Menschen mit Behinderungen (medizinische Versorgung, 21) und Ähnliches sind Kostenträgernummern, vergeben aus einer anderen Tabelle als der Gesetzestyp-Tabelle der Versicherernummer. Weil die Struktur identisch ist — „8 Stellen: 2-stelliger Gesetzestyp + 2-stellige Präfektur + 3 Stellen + 1-stellige Prüfung“ —, führt es allein anhand des Formats zu Unfällen, sie gleichzusetzen. Auch auf einer Abrechnung haben Versicherung und öffentliche Finanzierung getrennte Spalten.
7. Wie ORCA es implementiert — zwei Stammdatentabellen und eine Verzweigung nach Stellenzahl
Legen wir das Datendesign rund um Versicherernummern in ORCA dar, das hinter der in Kapitel 5 gesehenen Verzweigung steht. Es sind im Wesentlichen zwei Stammdatentabellen beteiligt.
Der Versicherungsnummernstamm tbl_hknnum ist die „System“-Schicht. Systeme werden durch einen 3-stelligen internen Code identifiziert, die „Versicherungsnummer“ (001 = staatlich verwaltet, 009 = Kyokai Kenpo, 060 = NHI, 039 = Ältere im fortgeschrittenen Alter …). Der tatsächliche Primärschlüssel ist jedoch nicht die Versicherungsnummer allein, sondern ein zusammengesetzter Schlüssel einschließlich Gesundheitsdienstleisternummer, Anwendungsstartdatum und Klassifikation (HOSPNUM, HKNNUM, TEKSTYMD, PAYKBN) — eine Struktur, die es erlaubt, Datensätze desselben Systems als Generationen nach Gültigkeitszeitraum zu stapeln —, sodass sich Attribute wie Eigenanteilsraten, die sich mit einer regulatorischen Revision ändern, nach Zeitraum auflösen lassen. Die Definition (record/tbl_hknnum.db) enthält die Gesetzestyp-Nummer HBTNUM, den Systemnamen SEIDONAME und den Kurznamen TANSEIDONAME, sowie Felder für Eigenanteilsraten und Obergrenzen für jede Kombination aus Hauptversichertem/Angehörigem × stationär/ambulant. Bemerkenswert sind die drei Prüfklassifikationen.
HBTNUMCHKKBN— Prüfklassifikation für die Gesetzestyp-NummerKENSNUMCHKKBN— Prüfziffernprüfklassifikation (für die Kostenträgernummer)JKYSKENSNUMCHKKBN— Prüfziffernprüfklassifikation für die Empfängernummer
Mit anderen Worten: Ob die Nummernprüfung angewendet wird oder nicht, ist eine Stammdateneinstellung pro System. Liest man tatsächlich das Eingabeprüf-Unterprogramm für öffentlich finanzierte Leistungen cobol/orca12/ORCSP03B.CBL, läuft die Modulus-10-Prüfung der Kostenträgernummer nur, wenn KENSNUMCHKKBN = "1" ist, und für die Empfängernummer bedeutet die Klassifikation "3", dass sie als Warnung statt als Fehler behandelt wird (Sie können bestätigen und fortfahren). Empfängernummern für öffentlich finanzierte Versorgung umfassen Systeme ohne Prüfziffer, die je nach Kommune variieren, daher wird die Stärke der Prüfung über Daten anpassbar gemacht. Dieses Design — Validierung in die Stammdaten auszulagern, statt sie direkt in den Code zu schreiben — lässt sich durchaus als die Weisheit eines Abrechnungscomputers bezeichnen, der seit fünfundzwanzig Jahren mit regulatorischer Vielfalt lebt.
Der Versichererstamm tbl_hknjainf ist die „Versicherer“-Schicht. Sein Schlüssel ist die Gesundheitsdienstleisternummer plus die Versicherernummer selbst, und er enthält den Namen des Versicherers, die Postleitzahl, die Adresse, die Telefonnummer, das Symbol der Versicherungskarte und das System (die Versicherungsnummer), zu dem er gehört (record/tbl_hknjainf.db). Die Verarbeitungsreihenfolge in ORCSP03A.CBL aus Kapitel 5 setzt diese zweischichtige Struktur voraus.
- Ist die Stellenzahl der Versicherernummer etwas anderes als 4, 6 oder 8, sofort einen Fehler ausgeben
- Zuerst den Versichererstamm (
tbl_hknjainf) durchsuchen. Ist er registriert, stehen Name, Adresse, Leistungsrate und System allesamt fest - Ist er nicht registriert, mit Modulus 10 verifizieren — aber nur für mehr als vier Stellen (Aufruf von
ORCSCHKDGT) - Das System aus Stellenzahl und Gesetzestyp-Nummer ableiten (4 Stellen → staatlich verwaltet, 6 → NHI, 8 →
tbl_hknnumanhand der Gesetzestyp-Nummer durchsuchen)
Das heißt, „was aus dem Nummerierungssystem abgeleitet werden kann“ ist der Ausweichmechanismus für den unregistrierten Fall, und die Priorität lautet, dass der Stamm maßgeblich ist. Diese zweistufige Anordnung ist die Antwort der Implementierung auf die Einschränkung aus Kapitel 6, dass „die Nummer nicht den Namen verrät“.
Nebenbei bemerkt: Das Feld, das die Versicherernummer hält, HKNJANUM, ist PIC X(08) — definiert nicht als numerischer Typ, sondern als 8-Zeichen-Zeichenkette — und wird aus über 650 COBOL-Quellen referenziert. Die Wahl des Typs umgeht von vornherein den im nächsten Abschnitt behandelten Vorbehalt: Halten Sie eine mit 0 beginnende Nummer (Gesetzestypen 01–07 und so weiter) numerisch, fällt die führende Null weg.
8. Praktische Punkte für alle, die Systeme bauen, die diese Nummern verarbeiten
Eine Zusammenfassung der Schlüsselpunkte beim Entwurf und der Implementierung eines Systems, das Versicherernummern (und die gleich aufgebauten Kostenträgernummern) verarbeitet.
- Als Zeichenketten halten, nicht als Zahlen. Nummern im Gesetzestypbereich 01–07 beginnen mit 0. Der Verlust der führenden Null in dem Moment, in dem die Daten durch Excel laufen, sodass sieben Stellen übrig bleiben, ist ein klassisches Problem bei der Integration medizinischer Daten. Bauen Sie auf der CSV-Importseite ein Design, das „Nummern mit zu wenigen Stellen“ erkennt und ablehnt — oder davor warnt.
- Gehen Sie von drei möglichen Stellenzahlen aus: 4, 6 und 8. Aktuelle neue Daten sind sechsstellig (NHI) oder achtstellig, doch historische Daten können die alten 4-stelligen, staatlich verwalteten Nummern enthalten (Kapitel 5). Dass ORCA weiterhin vier Stellen akzeptiert, ist ein Zugeständnis an diese Geschichte. Alles leichtfertig auf „8 Stellen, mit Nullen aufgefüllt“ zu normalisieren, führt beim Abgleich mit alten Daten oder Daten aus anderen Systemen zu Diskrepanzen.
- Wenden Sie die Prüfziffernverifikation nur auf Nummern an, die eine haben. Die M10W21-Verifikation ist leistungsfähig, doch die alten 4-stelligen, staatlich verwalteten Nummern haben keine Prüfziffer, und manche Empfängernummernsysteme für öffentlich finanzierte Versorgung haben ebenfalls keine. Der praktische Ansatz ist der von ORCA: Lagern Sie „welche Nummern werden verifiziert“ in Stammdateneinstellungen aus und unterscheiden Sie Warnungen von Fehlern.
- Machen Sie die Verzweigung nach der Gesetzestyp-Nummer stammdatengesteuert. Wenn Sie die Gesetzestyp-Nummer verwenden, um zu entscheiden, wohin eine Abrechnung geht (Zahlungsfonds oder NHI-Verband) oder Ähnliches, codieren Sie die Zuordnung von Gesetzestyp zu System nicht fest — halten Sie sie in einer Stammdatentabelle. Gesetzestyp-Nummern haben eine Geschichte, in der sie mit regulatorischen Änderungen hinzugefügt wurden, und es können noch weitere hinzukommen.
- Legen Sie Versicherernummern und Kostenträgernummern nicht in dieselbe Spalte. Identische Struktur, unterschiedliche Codesysteme (Kapitel 6). Halten Sie sie auch im Datenmodell als getrennte Felder, und beziehen Sie „die Art der Nummer“ in jeden Abgleichschlüssel ein.
- Versicherernummern sind auch im Zeitalter der Online-Berechtigungsprüfung weiterhin aktuell. Der Wechsel zu My-Number-Krankenversicherungskarten bedeutet, dass seltener jemand über Symbole und Nummern nachdenkt, doch
InsurerNumber(die Versicherernummer) ist in der Online-Berechtigungsabfrage und -Antwort-XML quicklebendig, und die Bestimmung, wohin eine Abrechnung übermittelt wird, basiert weiterhin auf der Versicherernummer. Entwerfen Sie unter der Annahme, dass es keine Nummer ist, die still verschwinden wird, sondern eine, die als Kernschlüssel der Berechtigungsinformationen bestehen bleibt.
9. Zusammenfassung
- Eine Versicherernummer besteht aus 8 Stellen: einer 2-stelligen Gesetzestyp-Nummer + 2-stelliger Präfekturnummer + 3-stelliger versichererbezogener Nummer + 1-stelliger Prüfziffer (nur NHI hat sechs Stellen ohne Gesetzestyp). Die ersten beiden Ziffern verraten das System und wohin die Abrechnung geht (Zahlungsfonds oder NHI-Verband); die nächsten beiden verraten die Präfektur des Versicherers.
- Die abschließende Prüfziffer verwendet Modulus 10 Gewicht 2-1. Die Gewichte beginnen am rechten Ende; bei Versicherernummern ungerader Länge stimmt eine fehlerhafte Implementierung mit Start am linken Ende zufällig überein, doch wird sie auf eine Nummer gerader Länge (etwa eine Empfängernummer für öffentlich finanzierte Versorgung) wiederverwendet, bricht sie zusammen. ORCAs gemeinsames Unterprogramm
ORCSCHKDGT.CBLträgt bis heute den Änderungshistorien-Eintrag aus dem Jahr 2001, „die Arithmetik beginnend vom rechten Ende durchführen“. - Die größte Ausnahme war die alte staatlich verwaltete Krankenversicherung. Sie lief jahrzehntelang „bis auf Weiteres“ auf vier Stellen mit einer eigenen Präfekturnummerntabelle (ohne Gesetzestyp-Nummer und ohne Prüfziffer) und wurde erst mit dem Start von Kyokai Kenpo im Oktober 2008 achtstellig.
- ORCAs Quellcode trägt noch heute die Spuren dieser Sonderregelung als lebendigen Code im Jahr 2026: eine Verzweigung, die aus vier Stellen auf staatlich verwaltet schließt, eine Importverarbeitung, die acht Stellen als Kyokai Kenpo neu interpretiert, und eine Verarbeitung, die „政管“ im Anzeigenamen durch „協会“ ersetzt, wenn das Behandlungsdatum am oder nach dem 1. Oktober 2008 liegt.
- Was eine Nummer verrät, endet bei der Einheit des Versicherers. Die Einzelperson, der Eigenanteil und der Name des Versicherers stehen nicht darin. Die Implementierung in zwei Schichten zu halten — Systemstamm plus Versichererstamm — und die Ableitung aus dem Nummerierungssystem auf den Ausweichmechanismus für den unregistrierten Fall zu beschränken, ist die ORCA-Art, und sie verallgemeinert sich auf jedes System, das strukturierte Nummern verarbeitet.
Die nächste Folge dieser Serie wird, wie ursprünglich angekündigt, die Logik von Abrechnungsprüfung und -bewertung behandeln. Wir zerlegen, was die Datenprüfung innerhalb des Gesundheitsdienstleisters und die Computerprüfungen auf Seiten der Abrechnungsprüfungs- und Zahlungsstelle jeweils betrachten, wiederum anhand des Quellcodes und öffentlicher Dokumente.
Referenzlinks
- Guidelines for Setting Insurer Numbers, Public-Funding Payer Numbers, Recipient Numbers for Publicly Funded Medical Care, Healthcare Provider Codes and Pharmacy Codes (MHLW, März-2008-Fassung, Anlage 2, PDF) — die Quelle für den hier beschriebenen Aufbau, das Verfahren zur Berechnung der Prüfziffer, die Gesetzestyp-Nummerntabelle (Anhangstabelle 1), die Präfekturnummerntabelle (Anhangstabelle 2) und die Sonderregelung für die staatlich verwaltete Versicherung (Artikel 1, Absatz 7) mit ihrer eigenen Nummerntabelle (Anhangstabelle 3)
- On the setting of insurer numbers and related matters (Agenturmitteilung Versicherung Nr. 34 / Versicherungsbüromitteilung Nr. 45 vom 7. August 1976, aktuelle Fassung) — die aktuelle Regelung, wonach Kyokai-Kenpo-Versicherernummern pro Präfekturfiliale vergebene Nummern sind (Agenturmitteilung Versicherung Nr. 0918001 vom 18. September 2008)
- About insurer numbers — Kyokai Kenpo (Japan Health Insurance Association) — die Liste der aktuellen Versicherernummern nach Präfekturfiliale
- Nichi-Rece-Kern, Quellcode der 5.2er-Serie (Schnappschuss veröffentlicht im Juli 2026):
cobol/common/ORCSCHKDGT.CBL/cobol/orca12/ORCSP03A.CBL/cobol/orca12/ORCSP03B.CBL/cobol/common/ORCSHKNMEI.CBL/cobol/orcabt/ORCVTPTHKNINF.CBL/cobol/orcabt/ORCBG014.CBL/record/tbl_hknnum.db/record/tbl_hknjainf.dbund andere — jede Aussage über die Implementierung, die Änderungshistorien und die Tabellendefinitionen in diesem Artikel basiert auf diesem Schnappschuss
Verwandte Artikel
Aktuelle Artikel mit denselben Schlagwörtern führen zu verwandten Themen weiter.
Was verändert das elektronische Rezept im Abrechnungssystem? — ORCAs Unterstützung für elektronische Rezepte im Quellcode gelesen
Was braucht ein Abrechnungssystem tatsächlich, um elektronische Rezepte zu unterstützen? Vom Tabellendesign in ORCA (Nichi-Rece), das Rez...
Wo entstehen Abrechnungskürzungen und Rücksendungen tatsächlich? — Die Logik der Rezeptprüfung anhand von ORCAs Quellcode und öffentlichen Dokumenten zerlegt
Wo entstehen Abrechnungskürzungen und Rücksendungen tatsächlich? Von ORCAs Datenprüfungsfunktion und ihren Prüf-Mastertabellen über die r...
Was passiert, wenn Sie die My-Number-Versichertenkarte auflegen? ── Die Online-Berechtigungsprüfung und ihre Anbindung an das Abrechnungssystem aus dem Quellcode von ORCA gelesen
Vom Auflegen der My-Number-Versichertenkarte bis zur Erfassung der Versicherungsberechtigung im Abrechnungssystem: der komplette Ablauf d...
Das Gesamtbild der Nichi-Rece-API aus dem Quellcode erschließen ── ORCAs veröffentlichten Quellcode lesen (mit Zuordnungstabelle aller 137 Endpunkte)
Das Gesamtbild der Nichi-Rece-API wird aus dem veröffentlichten Quellcode von ORCA (der JMA Standard Receipt Software) erschlossen. Der A...
ORCA (Nichi-Rece) ist keine elektronische Patientenakte ── Abrechnungssysteme und die Architektur von Healthcare-IT aus Sicht eines Ingenieurs
ORCA (Nichi-Rece) ist keine elektronische Patientenakte, sondern ein medizinisches Abrechnungssystem. Aus Sicht eines Ingenieurs behandel...
Verwandte Themen
Diese Seiten ordnen den Artikel in einen größeren Leistungs- und Entscheidungskontext ein.
Technische Windows-Themen
Portal zu Windows-Entwicklung, Fehleranalyse und der Nutzung bestehender Assets.
Leistungen zu diesem Thema
Dieser Artikel ist direkt mit den folgenden Leistungen verbunden.
Technische Beratung und Design-Review
Der Entwurf von Geschäftscode-Systemen wie Versicherer- und Kostenträgernummern sowie die Festlegung einer Validierungsrichtlinie dafür ist ein Standardthema für technische Beratung und Design-Review bei Geschäftssystemen — nicht nur medizinischen.
Windows-App-Entwicklung
Empfangs- und Abrechnungsanwendungen mit Eingabevalidierung für Versicherernummern und Stammdatenabgleich laufen meist auf Windows-Rechnern in einer Praxis oder einem Büro, was in den Bereich der Windows-App-Entwicklung fällt.
Häufige Fragen
Fragen, die in Beratungen zu diesem Artikelthema häufig gestellt werden.
- Kann man aus einer Versicherernummer eine Einzelperson identifizieren?
- Nein. Eine Versicherernummer identifiziert lediglich, um welchen Versicherer es sich handelt (eine bestimmte Kyokai-Kenpo-Präfekturfiliale, eine bestimmte Krankenversicherungsgesellschaft, das nationale Krankenversicherungssystem einer bestimmten Gemeinde und so weiter). Die Identifizierung der Einzelperson übernehmen das Symbol und die Nummer auf der Versicherungskarte (einschließlich der zweistelligen Zweignummer, die mit der Umstellung der Online-Berechtigungsprüfung auf individuelle Identifizierung hinzukam) — ein von der Versicherernummer getrenntes Feld.
- Warum haben manche Versicherungskarten eine 6-stellige Versicherernummer und andere 8 Stellen?
- Weil allein die nationale Krankenversicherung (ohne Rentnermedizinversorgung) so definiert ist, dass sie keine Gesetzestyp-Nummer besitzt, was sechs Stellen ergibt (2-stellige Präfekturnummer + 3-stellige versichererbezogene Nummer + 1-stellige Prüfziffer). Arbeitnehmerbezogene Versicherungen (Kyokai Kenpo, gesellschaftsverwaltete Krankenversicherung, Versorgungskassen und so weiter), die Medizinversorgung für Ältere im fortgeschrittenen Alter und die NHI-Rentnermedizinversorgung (Gesetzestyp 67) tragen alle eine 2-stellige Gesetzestyp-Nummer vorangestellt, was acht Stellen ergibt.
- Was ist die letzte Ziffer einer Versicherernummer?
- Es ist die Prüfziffer. Jede Ziffer außer der letzten wird, beginnend vom rechten Ende, mit 2, 1, 2, 1… multipliziert; ergibt ein Produkt zwei Ziffern, wird es in seine Einzelziffern zerlegt und diese werden summiert; die Prüfziffer ist 10 minus der letzten Ziffer dieser Summe (oder 0, falls diese letzte Ziffer 0 ist). Dies ist das Schema Modulus 10 Gewicht 2-1, und diese eine Ziffer fängt die meisten Eingabefehler ab.
- Stimmt es, dass die alten Kyokai-Kenpo-Versicherernummern (staatlich verwaltete Krankenversicherung) nur vier Stellen hatten?
- Ja. Die Festlegungsrichtlinien des Gesundheitsministeriums enthielten eine ausdrückliche Sonderregelung: „Die Versicherernummer der staatlich verwalteten Krankenversicherung besteht bis auf Weiteres aus den vier Stellen, die sich aus einer 2-stelligen Präfekturnummer plus einer 2-stelligen versichererbezogenen Nummer zusammensetzen.“ Und mehr noch: Die Präfekturnummer stammte aus einer eigenen Tabelle, getrennt von der üblichen (Tokio = 21, Osaka = 41 und so weiter). Mit dem Start von Kyokai Kenpo im Oktober 2008 wurde auf achtstellige, pro Präfekturfiliale vergebene Nummern umgestellt.
Autorenprofil
Profilseite des Artikelautors.
Go Komura
Geschäftsführer von KomuraSoft LLC
Spezialisiert auf Windows-Softwareentwicklung, technische Beratung und Fehleranalyse, insbesondere bei bestehenden Systemen und schwer reproduzierbaren Störungen.