Zentralbank-Basiszinssätze – Systembeschreibung

Datenmodell des Basiszinsregisters, Regeln für manuelle und API-Erfassung, täglicher Abgleich und Berechtigungsschlüssel.

Das Modul speichert Basiszinsnotierungen der MNB (HUF) und der EZB (EUR) nach Tag und Uhrzeit mit Quellenkennzeichen. Die Verzugszinsberechnung rechnet mit dieser Reihe; bei mehreren Notierungen an einem Tag gilt die letzte.

Datenmodell

Die Tabellennamen tragen in der Datenbank das eigene Präfix der Installation.

TabelleRolleHauptfelder
base_rateNotierungenBank, Währung, Gültigkeitstag, Uhrzeit, Satz, Quelle (manual / api), Hinweis

Ablauf

  1. Liste: Filter nach Bank, Währung, Quelle und Zeitraum; Sortierung nach Datum oder Bank; jede Zeile zeigt, ob sie die wirksame Notierung des Tages ist.
  2. Manuelles Speichern: source = manual; das Modell prüft Datum, Zahl (−20…100), Bank und Uhrzeit HH:MM:SS; derselbe Schlüssel wird überschrieben (ON DUPLICATE KEY UPDATE). Fehlercodes werden in Sprachmeldungen übersetzt.
  3. Abruf (sync): Die Basiszins-Bibliothek lädt die gewählte Bank (MNB SOAP, EZB Data API), standardmäßig 10 Jahre ab dem Bis-Datum zurück; jede Notierung mit source = api; fehlerhafte werden übersprungen und protokolliert; gespeicherte und fehlerhafte Anzahl werden zurückgegeben.
  4. Löschen: physisches Löschen einer oder der markierten Zeilen; leere Auswahl ergibt error_select.

Hintergrundaufgabe

Der Einstiegspunkt cron/baserate nutzt denselben Abruf- und Speicherweg: standardmäßig beide Banken, vom letzten Tag der Reihe bis heute, bei leerer Reihe 10 Jahre. Optionale Parameter: bank, from, to; Antwort in JSON. Eine eigene Berechtigungsprüfung ist aus dem Code nicht feststellbar.

Berechtigungen

  • Grundzugriff auf die Seite; Änderungen zusätzlich mit Core-Recht modify.
  • Funktionsrechte: list, beim Speichern add/edit (abhängig von der Datensatz-ID), delete, für mehrere Zeilen das Sammellöschrecht, sync, debug.
  • Kein Inhaltsbereich: nationale, unternehmensunabhängige Daten.

Bekannte Einschränkungen

  • Die Schlüssel sind in den Seeds des Funktionsregisters nicht klassifiziert.
  • Der MNB-Abruf braucht PHP SOAP, der EZB-Abruf cURL; sonst error_soap_missing / error_curl_missing. Unbekannte Bank: error_bank_unsupported.