Argentinische CUIT/CUIL-Prüfziffer
Geben Sie 20-12345678 ein und erhalten Sie die Prüfziffer 6, die vollständige CUIT lautet also 20-12345678-6; tippen Sie 20-12345678-7, schlägt die Prüfung fehl. So fallen Tippfehler in Rechnungen, Lieferantendaten und Lohnlisten früh auf. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- CUIT
- 20-12345678
- Berechnungsmodus
- Compute
- Eingabe
- 2012345678
- Prüfziffer
- 6
- Mit Prüfziffer
- 20123456786
CUIT- und CUIL-Nummern identifizieren Personen und Unternehmen in steuerlichen, lohn- und bankbezogenen Abläufen in Argentinien. Jeder elfstellige Code endet mit einer Prüfziffer, die aus einer festen Gewichtung der ersten zehn Ziffern nach der AFIP-Regel (Administración Federal de Ingresos Públicos) abgeleitet wird. Eine falsch getippte Rumpfziffer oder ein vertauschtes Paar bricht diese Prüfsumme oft, sodass die Validierung der Prüfziffer vor dem Buchen einer Rechnung, dem Anlegen eines Lieferanten oder dem Annehmen einer Lohndatei viele Tippfehler früh abfängt. Diese Fähigkeit berechnet die CUIT/CUIL-Prüfziffer für eine zehnstellige Nutzlast (mit oder ohne die üblichen Bindestriche) oder prüft eine vollständige elfstellige Nummer, die die Endziffer bereits enthält, und meldet ungültige Eingaben statt Buchstaben oder Satzzeichen still zu entfernen.
Was die argentinische CUIT/CUIL-Prüfziffer ist und wie die Gewichte wirken
Ein CUIT (Clave Única de Identificación Tributaria) oder CUIL (Clave Única de Identificación Laboral) ist ein elfstelliger Identifikator in argentinischen Steuer-, Sozialversicherungs-, Bank- und Handelssystemen. Die gedruckte Form ist üblicherweise XX-XXXXXXXX-X: ein zweistelliges Typpräfix, ein achtstelliger Rumpf (oft eine Dokumentennummer) und eine abschließende Prüfziffer.
Diese letzte Ziffer ist nicht dekorativ — sie wird so berechnet, dass eine gewichtete Summe der ersten zehn Ziffern mit den festen Multiplikatoren fünf, vier, drei, zwei, sieben, sechs, fünf, vier, drei und zwei von links nach rechts einen Wert ergibt, dessen Rest modulo elf die Prüfung bestimmt. Nach der Summe aus Ziffer mal Gewicht pro Position nimmt der Algorithmus elf minus (Summe modulo elf). Ist das Ergebnis elf, ist die Prüfziffer null; ist es zehn, ist die Prüfziffer neun; sonst ist das Ergebnis selbst die Prüfziffer.
Tippt jemand 20-12345678-6 als 20-12345678-7, stimmt die Summe nicht mehr und die Validierung scheitert. Dieselbe Regel fängt viele Einziffer-Vertauschungen in ERP-Importen, E-Invoicing-Gateways und HR-Onboarding-Formulare ab, in denen Bediener Nummern von Papier oder PDF neu tippen. Dieses Werkzeug setzt diese Standard-AFIP-Gewichtung auf reine Ziffern nach optionalem Entfernen der Bindestriche um.
Es fragt die AFIP nicht ab, beweist nicht, dass ein Steuerpflichtiger existiert, und vergibt keinen Typcode — es prüft nur, dass die Ziffernkette unter dem veröffentlichten Prüfalgorithmus konsistent ist. Gegenüber brasilianischen CPF- oder mexikanischen RFC-Hilfen ist die argentinische Regel spezifisch für dieses elfstellige Layout und diese zehn Multiplikatoren.
Wo CUIT-Prüfziffern in Steuer-, Lohn- und Handelsabläufe passen
Elektronische Rechnungs- und Abrechnungssysteme speichern das Kunden- oder Lieferanten-CUIT auf jedem Rechtsdokument; eine einzige falsch getippte Ziffer beim Onboarding kann fiskalisches XML an die falsche Partei senden oder die AFIP-Autorisierung später scheitern lassen. Lohn- und HR-Plattformen hängen jedem Mitarbeitenden ein CUIL an; Batch-Importe nationaler Ausweisdateien erzeugen oft Einziffer-Fehler, die die Prüfziffer vor dem ersten Lohnlauf abfängt. Banken und Zahlungs-Gateways, die argentinische Steuer-IDs für KYC oder Überweisungsmetadaten annehmen, können die Prüfziffer ohne externes Register neu berechnen und so OCR-Rauschen und Teiltreffer früh filtern.
Produktteams, die bereits allgemeine Luhn- oder ISO-7064-Werkzeuge anbieten, sollten für argentinische Steuer-ID-Felder dennoch diese CUIT-spezifische Fähigkeit nutzen, damit Gewichte, Längengrenzen und Bindestrichformat zur Domäne passen. Behandeln Sie eine bestandene CUIT-Prüfziffer nicht als Nachweis, dass Person oder Unternehmen korrekt identifiziert, bei der AFIP aktiv, rechnungsberechtigt oder in einem offiziellen Register vorhanden ist — sie belegt nur, dass die Ziffernkette unter dem argentinischen CUIT/CUIL-Prüfalgorithmus konsistent ist.
Anwendungsfälle
CUIT-Spalten in Partner- und Lohndateien prüfen
Validieren Sie batchweise jedes CUIT/CUIL in einem CSV-Import und isolieren Sie Zeilen, deren Prüfziffer nicht mehr dem neu berechneten Erwartungswert entspricht.
Häufige Fragen
Was ist die argentinische CUIT/CUIL-Prüfziffer?
Es ist eine einzelne Endziffer, berechnet mit den AFIP-Gewichten 5,4,3,2,7,6,5,4,3,2 über die ersten zehn Ziffern und dann modulo 11 (11 wird zu 0, 10 zu 9), sodass die meisten Einziffer-Tippfehler die Prüfsumme brechen.
Was passiert bei Buchstaben, Leerzeichen oder falscher Länge?
Geben Sie nur Ziffern 0-9 an (optionale Bindestriche); compute braucht zehn Ziffern, validate elf. Fehlgeschlagene Validierungsaufgaben werden nicht berechnet.
Was passiert, wenn die Rechnung 10 oder 11 ergibt?
Die Regel zieht den Rest der gewichteten Summe modulo 11 von 11 ab. Ergibt das 11, lautet die Prüfziffer 0, ergibt es 10, wird sie zu 9, und jedes andere Ergebnis ist direkt die Prüfziffer.
Beweist eine gültige CUIT, dass der Steuerpflichtige existiert?
Nein. Das Werkzeug fragt weder bei der AFIP noch in einem Steuerregister nach und vergibt auch kein Typpräfix. Eine passende Prüfziffer zeigt nur, dass die Ziffern zur veröffentlichten Regel passen.
Wofür stehen die drei Teile einer CUIT?
Die ersten zwei Ziffern bilden das Typpräfix, die folgenden acht den Hauptteil, oft die Ausweisnummer, und die letzte ist die Prüfziffer. Daher kommt die gedruckte Form XX-XXXXXXXX-X.
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/enc/cuit-argentina \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"cuit":"20-12345678"}'const res = await fetch("https://api.kit.forhosting.com/enc/cuit-argentina", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"cuit": "20-12345678"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/cuit-argentina",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"cuit": "20-12345678"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/cuit-argentina", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"cuit":"20-12345678"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"cuit":"20-12345678"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/cuit-argentina", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"cuit": "20-12345678"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.cuit_argentina",
"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
Nutzen Sie sie kostenlos im Browser oder rufen Sie die KIT-API zum veröffentlichten Preis auf; beide Pfade führen dieselbe deterministische Arithmetik ohne Netzabfrage und ohne Register realer Steuerpflichtiger aus.
Was die argentinische CUIT/CUIL-Prüfziffer ist und wie die Gewichte wirken
Gegenüber Luhn mod-10 bei Karten und allgemeinen Konten nutzt das CUIT-Schema einen festen Gewichtsvektor von links nach rechts und modulo elf, sodass Sie keinen Luhn-Validator auf CUIT-Felder wiederverwenden dürfen. Zu wissen, welches Schema Sie brauchen, vermeidet falsches Vertrauen, wenn ein allgemeines Prüfziffer-Hilfsprogramm eine Kette akzeptiert, die kein wohlgeformtes CUIT oder CUIL ist.
Wie Sie eine Prüfziffer berechnen oder ein vollständiges CUIT/CUIL prüfen
Senden Sie ein cuit-Feld mit Ziffern von null bis neun, optional durch die Standard-Bindestriche getrennt. Der Modus validate erwartet eine vollständige elfstellige Nummer inklusive der abschließenden Prüfziffer (zum Beispiel 20-12345678-6 oder 20123456786). Leere Zeichenketten, fehlendes cuit, ungültige mode-Werte und falsche Längen (nicht zehn Ziffern bei compute, nicht elf bei validate) scheitern vor jeder gewichteten Summe und werden nicht berechnet. Bevorzugen Sie compute, wenn Sie ein CUIT aus bekanntem Typpräfix und Dokumentrumpf zusammensetzen; bevorzugen Sie validate, wenn ein Benutzer, eine Partnerdatei oder ein gescanntes Etikett eine vollständige Nummer liefert und Sie vor einer AFIP- oder internen Stammdatenabfrage einen booleschen Filter brauchen. Leerzeichen um den Wert werden gekürzt; Buchstaben, andere Satzzeichen, Doppel-Bindestriche oder führende bzw. nachgestellte Bindestriche werden als fehlerhafte Eingabe mit invalid_input abgelehnt, damit Sie nie stillschweigend bereinigte Werte akzeptieren. Der Modus compute ist Standard: liefern Sie genau zehn Ziffern ohne Prüfziffer (zum Beispiel 20-12345678 oder 2012345678), und die Engine liefert check_digit als Ein-Zeichen-Zeichenkette, with_check als die vollständige elfstellige Zeichenkette inklusive dieser Ziffer und formatted im Bindestrichformat XX-XXXXXXXX-X wie auf Rechnungen und Formularen. Die Antwort meldet valid true, wenn die neu berechnete Prüfziffer mit der letzten Ziffer übereinstimmt, und enthält stets check_digit, expected_check_digit, payload ohne die letzte Ziffer und formatted für eine einheitliche Anzeige. Weil der Pfad reines Parse ohne Uhr, Zufallsquelle oder Netz ist, liefert dieselbe Eingabe immer dasselbe JSON im kostenlosen Browser-Tool und in der API. Zu $0.002 pro erfolgreicher Anfrage können Sie Massenimporte von Lieferanten, Onboarding-Formulare und ETL-Jobs filtern, ohne eine Sonderstufe zu verhandeln.
Wo CUIT-Prüfziffern in Steuer-, Lohn- und Handelsabläufe passen
Validate am Eingang blockiert das Speichern, wenn valid false ist, und kann expected_check_digit anzeigen, damit der Sachbearbeiter das Formular vor dem Schreiben des Datensatzes korrigiert.
Integrationsbeispiele
CUIT-Felder in Lieferanten- und Kundenformularen filtern
Wenn ein Benutzer ein vollständiges CUIT sendet, rufen Sie den validate-Modus auf und blockieren Sie das Speichern bei valid false; zeigen Sie expected_check_digit, um einen einzelnen Tippfehler vor dem Schreiben des ERP-Datensatzes zu korrigieren.
Prüfziffern beim Erzeugen oder Vervollständigen von IDs berechnen
Aus Typpräfix und achtstelligem Rumpf rufen Sie den compute-Modus auf und speichern with_check oder formatted, damit jede neue CUIT/CUIL-Zeichenkette vor Druck oder Export die korrekte Endziffer trägt.
Technische Fragen
Wie berechne ich eine CUIT-Prüfziffer mit dieser API?
Senden Sie POST mit cuit gleich den zehn Nutzlastziffern (Bindestriche optional) und mode compute (oder lassen Sie mode weg). Die Antwort enthält check_digit, with_check und formatted als XX-XXXXXXXX-X.
Wie prüfe ich ein vollständiges CUIT oder CUIL?
Senden Sie POST mit der vollständigen elfstelligen Zeichenkette und mode validate. Die Antwort enthält valid, check_digit, expected_check_digit, payload und formatted.
Ist das CUIT-Prüfziffer-Werkzeug kostenlos?
Das Browser-Werkzeug ist kostenlos und läuft lokal. API-Aufrufe nutzen vorausbezahltes KIT-Guthaben zum veröffentlichten Basispreis $0.002; ungültige Eingabe wird nie berechnet.