| Reiter | Liest | Schreibt | Über |
|---|---|---|---|
| Belege erfassen | api.belege | belege (durch n8n) | n8n-Webhook + PostgREST |
| Sichtprüfung | api.zuordnung_offen api.kandidaten() |
belege.personalnummer belege.zuordnung_geprueft |
api.zuordnung_bestaetigen() |
| Mitarbeiter | api.mitarbeiter | mitarbeiter | INSTEAD-OF-Trigger |
| Abteilungen | api.abteilung | abteilung | INSTEAD-OF-Trigger |
| Rolle | Wer benutzt sie | Darf |
|---|---|---|
| vorsorge_app | n8n-Workflow | Belege schreiben, Stammdaten lesen |
| vorsorge_web | diese Seite | nur die Views im Schema api — nicht die Tabellen darunter |
| grafana_ro | Grafana | ausschließlich lesen |
| n8n | n8n selbst | nur die eigene Datenbank, keine Vorsorgedaten |
Die Zuordnung sucht in sechs Stufen. Am stärksten ist Geburtsdatum plus Nachname — das übersteht vertauschte Reihenfolge und verlorene Sonderzeichen. Zugeordnet wird nur, wenn der beste Kandidat eindeutig ist. Zwei gleich gute Kandidaten ergeben mehrdeutig und landen hier zur Sichtprüfung, statt geraten zu werden.
Der Grund ist einfach: eine Bescheinigung auf der falschen Personalakte ist teurer als eine, die jemand von Hand zuordnet.
Die Spalte zeigt, worauf tatsächlich verglichen wird — schuehle · schuhle für Schühle, yildirim für Yıldırım. Wer sich wundert, warum ein Beleg nicht zugeordnet wurde, sieht dort sofort nach. Die Schlüssel werden berechnet, nicht gespeichert; sie können also nicht veralten.
Keine Fristenberechnung, keine Ampel, keine Zuordnung von Untersuchungspflichten zu Stellen, keine Anbindung an ein Betriebsarztsystem. Das ist die Scope-Grenze des PoC und keine Lücke.