Steuernummer oder USt-IdNr.?
Geben Sie 12345678Z für Spanien ein, und die Nummer kommt als gültig zurück, bestätigt durch ihre Prüfziffer. Jedes der über 40 Länder hat eigene Regeln, deshalb werden die zwei Prüfziffern des CPF oder das Modulo-11-Verfahren des CUIT richtig geprüft. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Ein Werkzeug, das eine eingegebene steuerliche Kennnummer auf ihr Format prüft und erkennt, um welche Art von Nummer es sich vermutlich handelt: die elfstellige steuerliche Identifikationsnummer, eine regionale Steuernummer des Finanzamts oder ein Format aus einem anderen Land. Ohne Registeranfrage, rein anhand des Aufbaus.
Warum jedes Land eigene Regeln braucht
Steuernummern wurden nicht gemeinsam entworfen. Jedes Land hat sein eigenes System eingeführt, oft im Abstand von Jahrzehnten. Der mexikanische RFC kombiniert Buchstaben aus dem Namen mit dem Geburtsdatum, der brasilianische CPF und der CNPJ tragen je zwei Prüfziffern mit eigener Gewichtung, der argentinische CUIT berechnet seine Prüfziffer nach Modulo 11 über elf Stellen. Eine einzige Regel für alle wäre irgendwo zwangsläufig falsch. Deshalb hält die Prüfung für jedes Land und jeden Nummerntyp eigene Regeln bereit.
Was das Ergebnis sagt – und wann es sich lohnt
Sie erfahren, ob das Format für diesen Nummerntyp gültig ist, welches Prüfziffernverfahren angewendet wurde und, bei einem Fehler, einen verständlichen Grund. Nützlich ist das vor dem Erstellen einer Rechnung, weil manche Steuerbehörden ein Dokument mit fehlerhafter Nummer sofort ablehnen, und bei der Aufnahme neuer Auftragnehmer im Ausland. Auch alte Kundendaten lassen sich so vor einer Prüfung durchsehen. Ein gültiges Format bestätigt nur den Aufbau, nicht, dass die Nummer tatsächlich vergeben ist.
Drei Nummern, die oft verwechselt werden
In Deutschland kursieren mehrere unterschiedliche Nummern nebeneinander: die elfstellige, lebenslang gleichbleibende steuerliche Identifikationsnummer, die vom jeweiligen Finanzamt vergebene und je nach Bundesland unterschiedlich lange Steuernummer, sowie die USt-IdNr. für den EU-Geschäftsverkehr. Wer eine Nummer aus einem Formular oder Schreiben vor sich hat, ist sich über die genaue Art oft unsicher, genau das klärt diese Prüfung, ohne dass Sie die drei Formate selbst auswendig kennen müssen.
Wie die Erkennung funktioniert
Anhand von Länge, Zeichensatz und, bei der Identifikationsnummer, der eingebauten Prüfziffer nach einem festgelegten Verfahren, ordnet die Funktion die eingegebene Nummer der wahrscheinlichen Art zu. Bei der elfstelligen Identifikationsnummer wird zusätzlich die Prüfziffer selbst kontrolliert; bei der regionalen Steuernummer ist mangels bundesweit einheitlicher Prüfziffer nur die Formatplausibilität möglich, nicht eine vollständige rechnerische Bestätigung wie bei der Identifikationsnummer mit ihrem festen Aufbau.
Anwendungsfälle
Formular mit Feld für die Identifikationsnummer
Ein Lohnbüro prüft die von neuen Mitarbeitenden eingetragene Identifikationsnummer auf gültige Prüfziffer, bevor sie in die Lohnsoftware übernommen wird.
Unterscheidung auf einem eingescannten Steuerbescheid
Katrin Baumann ist sich bei einer Nummer auf einem alten Steuerbescheid nicht sicher, um welche Nummernart es sich handelt, und lässt das Format prüfen.
Plausibilitätscheck vor der Weitergabe an die Steuerberatung
Lukas Fischer prüft die eingesammelten Nummern seiner Kunden auf ein plausibles Format, bevor er sie gesammelt an die Steuerberatung weitergibt.
Häufige Fragen
Ist die Prüfung kostenlos?
Ja, im Browser ohne Limit und ohne Anmeldung.
Was ist der Unterschied zur Prüfung der USt-IdNr.?
Diese Funktion prüft ausschließlich das Format und die Prüfziffer, ohne eine Nummer live gegen ein Register abzugleichen. Die USt-IdNr.-Prüfung fragt dagegen live das EU-Register ab und ist eine eigene, andere Funktion.
Kann die Funktion feststellen, ob die Nummer wirklich vergeben wurde?
Nein, das ist eine reine Formatprüfung. Ob die Nummer tatsächlich einer Person oder einem Finanzamt zugeordnet ist, lässt sich damit nicht nachweisen.
Verlässt die Nummer meinen Browser?
Nein, solange Sie die Prüfung auf dieser Seite nutzen. Sie wird lokal ausgewertet und nicht übertragen.
Funktioniert das auch bei Steuernummern aus anderen Ländern?
Die Formatprüfung berücksichtigt gängige Muster mehrerer Länder, mit dem stärksten Fokus auf deutsche Formate.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/verify/tax-id \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"tax_id":"12-3456789","country":"US"}'const res = await fetch("https://api.kit.forhosting.com/verify/tax-id", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"tax_id": "12-3456789",
"country": "US"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/verify/tax-id",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"tax_id": "12-3456789",
"country": "US"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/verify/tax-id", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"tax_id":"12-3456789","country":"US"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"tax_id":"12-3456789","country":"US"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/verify/tax-id", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"tax_id": "12-3456789",
"country": "US"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "verify.tax_id",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Kostenlos, ohne Anmeldung
Die Prüfung läuft vollständig im Browser, ohne Limit und ohne dass die Nummer an einen Server übertragen wird, bei einer persönlichen Kennnummer ein naheliegender Vorteil für den Datenschutz. Für die automatisierte Einbindung in eine eigene Formularstrecke oder Lohnsoftware steht dieselbe Prüfung auch per API zur Verfügung, für $0.002 pro geprüfter Nummer, mit dem Preis vorab veröffentlicht und ohne Mindestumsatz oder Abonnement im Hintergrund.
Technische Fragen
Brauche ich ein Konto?
Nein, weder für den Browser-Modus noch für die API-Nutzung ist ein Konto erforderlich.