USt-IdNr.-Verlauf
Pro positive VIES-Prüfung schreibt Craken eine Spur in die Audit-Kette (immudb) — als Nachweis, dass die Prüfung tatsächlich zum Zeitpunkt der Beleg-Erfassung lief.
Der Hintergrund: § 18e UStG (“Bestätigungsverfahren”) verlangt diese Nachweise im Rahmen einer Betriebsprüfung.
Spur pro Beleg
| Feld | Beschreibung |
|---|---|
document_id | UUID des Belegs |
vat_id | normalisierte USt-IdNr. (Großbuchstaben, ohne Whitespace) |
vies_valid | true für positive Antworten (Einträge nur bei positiven Prüfungen) |
registered_name_hash | SHA-256 des registrierten Namens (DE liefert keinen Namen — bleibt leer) |
checked_at | UTC-Zeitstempel der Prüfung |
source | vies-rest (zukünftig auch vies-soap, bzst) |
Doppelspur: PostgreSQL + immudb
Craken schreibt parallel zwei Spuren — eine für die UI-Freshness, eine für die Beweiskraft:
| Spur | Zweck | Lese-Pfad |
|---|---|---|
PostgreSQL (suppliers.vat_id_last_verified_at) | UI-Anzeige “zuletzt bestätigt am…” | GET /api/suppliers/{id} |
immudb (VIES.PositiveCheck-Entries) | Beweis pro einzelnem Beleg | GoBD-Export, manuelle Abfrage |
Was die Spur nicht enthält (heute)
Die VIES-REST-API liefert keine consultationNumber — das offizielle
Token, mit dem das Bundeszentralamt für Steuern (BZSt) eine Anfrage
referenzieren würde. Das ist derzeit ein Gap — die SOAP-API von
VIES würde das liefern. Im Backlog als D-013-Sub-Item geführt; bis zur
SOAP-Migration ist das consultation_number-Feld leer.
Für eine streng nach § 18e UStG belastbare Spur muss consultation_number
befüllt werden. Heute liefert Craken den Nachweis “wir haben VIES
gefragt, hier war die Antwort, hier ist der Hash zum Beleg-Stand” —
das reicht für die meisten praktischen Audit-Fragen, aber nicht für
einen formellen BZSt-Nachweis im Streitfall.
Wo sehe ich den Verlauf in der UI?
Im Lieferanten-Drawer-Reiter Verlauf filtert sich die Anzeige auf
action = "VIES.PositiveCheck" aggregieren — Sie sehen eine
chronologische Liste:
Verlauf
─────────
2026-06-19 VIES bestätigt · 5 Belege betroffen
2026-05-20 VIES bestätigt · 3 Belege betroffen
2026-04-15 VIES bestätigt · 1 Beleg betroffen
2026-04-02 Lieferant bestätigt durch chris@scaleix.de
2026-04-02 Lieferant angelegtPro Eintrag können Sie auf “Beleg-Liste” klicken, um die einzelnen
Belege mit ihren document_ids und immudb-Tx-IDs zu sehen.
Beweis-Workflow im Audit-Fall
Die Abfrage funktioniert pro Beleg (document_id) oder pro
Lieferant (vat_id); pro Lieferant erhalten Sie eine Zeitreihe aller
Prüfungen.
Warum nicht nur den Cache nehmen?
Der Cache (vat_id_vies_cache.checked_at) sagt: “wir haben am Tag X
mit VIES geredet”. Das ist eine Aussage pro USt-IdNr. — er sagt
nicht, dass dieser Stand für einen bestimmten Beleg relevant
war. Der immudb-Entry verknüpft beide Seiten und ist daher die
Audit-relevante Quelle.