USt-IdNr.-Prüfung per API

Prüfen, und es belegen können.

VerifyVAT fragt die USt-IdNr. deiner Geschäftspartner live bei VIES ab und speichert bei jeder Prüfung die amtliche Bestätigungsnummer. So kannst du später zeigen, dass und wann du geprüft hast.

Neue Konten starten mit 1.000 Abfragen pro Monat.

PrüfprotokollBeispiel
Abfrage-Code
VV-3F9A1C2E
Geprüfte USt-IdNr.
DE123456789
Ergebnis
gültig
Firma (laut VIES)
Muster GmbH
Anfragender
LU32633157
Zeitstempel
2026-10-11 01:14:09

Bestätigungsnummer (VIES)

WAPIAAAAZ4Kq8vDn

Gespeichert in deinem Konto, abrufbar im Verlauf und als CSV.

belegt
27 + XI
EU-Mitgliedstaaten und Nordirland, abgedeckt über VIES
VV-…
Ein eindeutiger Abfrage-Code für jede einzelne Prüfung
Beleg
Amtliche Bestätigungsnummer wird bei jeder Abfrage gespeichert
CSV
Kompletter Verlauf als Export für Buchhaltung und Prüfung

01Warum überhaupt prüfen?

Eine gültige USt-IdNr. entscheidet oft über die Steuer

Wer an Unternehmen in anderen EU-Staaten verkauft, muss wissen, mit wem er es zu tun hat. Die USt-IdNr. des Geschäftspartners ist dafür das zentrale Merkmal, und ihre Gültigkeit kann sich ändern.

Steuerfreie Lieferungen

Innergemeinschaftliche Lieferungen an Unternehmer in einem anderen EU-Staat sind in der Regel nur steuerfrei, wenn der Kunde eine gültige USt-IdNr. verwendet. Wer das nicht belegen kann, riskiert eine Nachforderung.

Reverse-Charge bei Leistungen

Bei vielen B2B-Dienstleistungen schuldet der Empfänger die Steuer. Die Prüfung zeigt, dass dein Kunde als Unternehmer registriert ist, bevor du ohne Umsatzsteuer abrechnest.

Nachweis bei der Betriebsprüfung

Das Finanzamt kann später fragen, ob und wann du geprüft hast. Mit Abfrage-Code, Zeitstempel und Bestätigungsnummer hast du eine Antwort, die du nicht rekonstruieren musst.

Das ist keine Steuerberatung. Welche Nachweise in deinem Fall nötig sind, klärst du mit deiner Steuerberatung.

02Einfach oder qualifiziert

Der Unterschied zwischen „gültig“ und „belegt“

VIES kennt zwei Arten von Abfragen. Für die Dokumentation zählt die zweite.

Einfache Abfrage

Du schickst nur die Nummer des Geschäftspartners. VIES antwortet, ob sie gültig ist. Eine Kennung für die Abfrage gibt es nicht, du hast also nur deine eigene Erinnerung oder einen Screenshot.

GET /check?vat_number=DE123456789
→ { "valid": true }
Das macht VerifyVAT bei jeder Abfrage

Abfrage mit Anfragendem

Du gibst zusätzlich deine eigene USt-IdNr. an. VIES vergibt dann eine Bestätigungsnummer (Consultation Number) für genau diese Abfrage. VerifyVAT sendet deine USt-IdNr. automatisch mit und speichert die Nummer.

GET /check?vat_number=DE123456789
→ { "valid": true,
    "consultation_number": "WAPIAAAAZ4Kq8vDn" }

03

So läuft es ab

Von der Registrierung bis zur ersten Prüfung dauert es wenige Minuten.

  1. 1

    Konto anlegen

    Du registrierst dich mit den Daten deines Unternehmens, inklusive deiner eigenen USt-IdNr. Sie wird bei jeder Abfrage als Anfragender an VIES übergeben, nur so stellt VIES einen Nachweis aus.

  2. 2

    Key erstellen

    Im Dashboard erzeugst du einen API-Key pro Anwendung, zum Beispiel für Shop oder ERP. Einen Key kannst du jederzeit widerrufen.

  3. 3

    Abfragen senden

    Du schickst die USt-IdNr. deines Kunden an die API. Antwort, Bestätigungsnummer und ein eigener Abfrage-Code werden direkt gespeichert.

04Für Entwickler

Eine Anfrage, eine Antwort

Die API ist ein einfacher GET-Aufruf mit deinem Key im Header. Zurück kommt JSON mit dem Ergebnis, den Firmendaten laut VIES und dem Nachweis. Die USt-IdNr. des Kunden schreibst du mit Länderkürzel, zum Beispiel DE123456789.

  • Jede Abfrage bekommt einen eindeutigen Code (VV-…), auch wenn sie fehlschlägt.
  • Monatskontingent und Minuten-Limit sind pro Konto festgelegt und im Dashboard sichtbar.
  • Ist VIES oder der Dienst des Mitgliedstaats nicht erreichbar, bekommst du 503 mit vat_status UNAVAILABLE. Eine gültige Nummer wird dann nie als ungültig gemeldet.

Anfrage

curl "https://verifyvat.eu/api/v2/check?vat_number=DE123456789" \
  -H "apikey: vat_xxxxxxxx_xxxxxxxxxxxxxxxx"

Antwort

{
  "request_code": "VV-3F9A1C2E",
  "valid": true,
  "query": "DE123456789",
  "company_name": "Muster GmbH",
  "company_address": "Musterstraße 1, 10115 Berlin",
  "consultation_number": "WAPIAAAAZ4Kq8vDn",
  "vies_request_date": "2026-10-11T01:14:09.000Z",
  "proof_available": true
}

Die Felder der Antwort

request_code
Dein Abfrage-Code (VV-…). Im Dashboard suchbar.
valid
true, wenn VIES die Nummer als gültig führt, sonst false.
company_name / company_address
Name und Anschrift laut VIES, sofern der Mitgliedstaat sie herausgibt.
consultation_number
Die Bestätigungsnummer von VIES. Das ist dein Nachweis.
vies_request_date
Zeitpunkt der Abfrage laut VIES.
proof_available
true, wenn VIES eine Bestätigungsnummer ausgestellt hat.
vat_status
Prüfung 1, USt-ID: VALID, INVALID, UNAVAILABLE (Dienst nicht erreichbar) oder ERROR. valid ist bei UNAVAILABLE/ERROR null.
company_name_status
Prüfung 2, Firmenname (nur wenn du company_name mitsendest): MATCH, MISMATCH, NOT_AVAILABLE (VIES liefert keinen Namen, z. B. Deutschland), NOT_CHECKED oder ERROR. Ein fehlender Name ist kein MISMATCH.
company_identity_status
Prüfung 3, Unternehmensidentität: VERIFIED, UNVERIFIED, MISMATCH oder PENDING. Eine gültige USt-ID allein ergibt nie VERIFIED.
verification_level
Wie weit geprüft wurde: VAT_ONLY, VAT_AND_NAME oder VAT_AND_REGISTER.
representation_status
Prüfung 4, Vertretungsberechtigung: immer NOT_CHECKED. Die API prüft nicht, ob eine Person das Unternehmen vertreten darf.
verification_id / verified_at
ID des Prüfprotokolls und Zeitpunkt der Original-Prüfung. Mit der ID rufst du die Prüfbescheinigung ab: /api/v2/verification/{id}/certificate.
cached
true, wenn das Ergebnis aus dem Zwischenspeicher stammt. verified_at zeigt dann die Original-Prüfung. Mit fresh=true erzwingst du eine neue Abfrage.

Statuscodes

Eine ungültige Nummer ist kein Fehler: Du bekommst 200 und valid: false.

200
Abfrage durchgeführt, Ergebnis im Feld valid.
400
vat_number fehlt oder hat kein gültiges Format.
401
Der apikey-Header fehlt oder der Key ist ungültig bzw. widerrufen.
402
Das Monatskontingent ist aufgebraucht.
403
Im Konto ist noch keine eigene USt-IdNr. hinterlegt.
429
Das Minuten-Limit wurde überschritten. Kurz warten und erneut senden.
502
Unerwartete Antwort von VIES (vat_status ERROR). Die Abfrage ist mit Code gespeichert.
503
VIES oder der Mitgliedstaat ist gerade nicht erreichbar (vat_status UNAVAILABLE). Später erneut senden. Zählt nicht gegen dein Kontingent.

05

Was du im Konto siehst

Das Dashboard ist so aufgebaut, dass du jede Prüfung später in Sekunden wiederfindest.

Verlauf

Alle Abfragen mit Code, Ergebnis, Firma, Bestätigungsnummer und Zeitstempel. Suchbar nach Code, USt-IdNr. und Bestätigungsnummer.

CSV-Export

Der komplette Verlauf als Datei für Buchhaltung oder Betriebsprüfung.

Manueller Test

Eine einzelne Nummer von Hand prüfen. Dein Unternehmen ist dabei schon als Anfragender eingetragen.

Mehrere Keys

Ein Key je System, einzeln widerrufbar, damit du immer weißt, woher eine Abfrage kam.

Auslastung

Verbrauchtes und verbleibendes Monatskontingent, Minuten-Limit und Erfolgsquote auf einen Blick.

Hilfe

Eine Dokumentation mit Beispielen und ein Support-Formular, das du von jeder Seite aus erreichst.

Wofür Teams es einsetzen

Webshop und Checkout

Prüfe die USt-IdNr. direkt, wenn ein Kunde sie im Checkout einträgt, und stelle die Rechnung entsprechend aus.

ERP und Buchhaltung

Prüfe neue Debitoren beim Anlegen und gleiche den Bestand regelmäßig ab. Die Bestätigungsnummer legst du im Beleg ab.

SaaS und Onboarding

Verifiziere Geschäftskunden bei der Anmeldung, ohne dass jemand manuell auf einer Behördenseite nachsehen muss.

06Sicherheit

Deine Zugänge und Daten sind geschützt

Du übergibst uns API-Zugänge und Geschäftsdaten. Deshalb gelten diese Grundregeln:

Verschlüsselte Verbindung

Alle Aufrufe laufen über HTTPS.

API-Keys geschützt

Keys werden verschlüsselt gespeichert und lassen sich jederzeit einzeln widerrufen.

Schutz vor Missbrauch

Anmeldung und API sind gegen Durchprobieren und Überlastung begrenzt.

Getrennte Konten

Jeder Kunde sieht ausschließlich seine eigenen Abfragen und Keys.

Begriffe kurz erklärt

USt-IdNr.
Umsatzsteuer-Identifikationsnummer. Sie beginnt mit einem Länderkürzel, in Deutschland zum Beispiel DE, gefolgt von der Nummer.
VIES
Das VAT Information Exchange System der EU-Kommission. Es leitet deine Abfrage an die nationale Steuerverwaltung weiter.
Bestätigungsnummer
Englisch Consultation Number. Die Kennung, unter der VIES eine Abfrage mit Anfragendem dokumentiert.
Anfragender
Das bist du: deine eigene USt-IdNr., die bei der Abfrage mitgesendet wird.
Abfrage-Code
Der kurze Code VV-… von VerifyVAT. Er ist pro Abfrage eindeutig und im Dashboard suchbar.

Häufige Fragen

Warum brauche ich meine eigene USt-IdNr.?+

VIES stellt die Bestätigungsnummer nur aus, wenn der Anfragende angegeben ist. Ohne hinterlegte USt-IdNr. ist die API deshalb nicht freigeschaltet.

Was ist die Bestätigungsnummer?+

Die Consultation Number ist die Kennung, mit der VIES eine Abfrage mit Anfragendem dokumentiert. Du speicherst sie als Nachweis zu deinen Belegen.

Woher kommen die Daten?+

Alle Angaben stammen aus VIES, dem Dienst der EU-Kommission. VerifyVAT ist kein Angebot der EU-Kommission.

Welche Länder werden geprüft?+

Alle 27 EU-Mitgliedstaaten sowie Nordirland (XI). Nummern aus der Schweiz, dem Vereinigten Königreich oder anderen Drittstaaten kennt VIES nicht.

Was bedeutet „ungültig“?+

VIES führt die Nummer zum Zeitpunkt der Abfrage nicht als gültig. Das kann ein Tippfehler sein, eine noch nicht freigeschaltete oder eine gelöschte Nummer. Frage im Zweifel bei deinem Geschäftspartner nach.

Was passiert, wenn VIES nicht erreichbar ist?+

Dann antwortet die API mit 502 und gibt dir den Abfrage-Code. Es wird nichts als gültig gemeldet. Du kannst die Abfrage später erneut senden.

Kann ich es auch ohne Programmierung nutzen?+

Ja. Im Dashboard gibt es einen manuellen Prüfer. Dein Unternehmen ist dort schon als Anfragender eingetragen.

Was kostet es?+

Aktuell nichts. Das Kontingent siehst du in deinem Dashboard.

Bereit für die erste Abfrage?

Konto anlegen, Key erzeugen, loslegen. Das dauert wenige Minuten.