CNPJ-Prüfziffern
Geben Sie die Basis 112223330001 ein und erhalten Sie die Prüfziffern 81, die vollständige CNPJ lautet also 11222333000181. Oder fügen Sie 14 Ziffern ein und bestätigen Sie beide Endziffern. Praktisch für Rechnungen, Lieferantenanlage und Datenbereinigung. 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
- Zahl
- 112223330001
- Berechnungsmodus
- Compute
- Eingabe
- 112223330001
- Prüfziffern
- 81
- Prüfziffer 1
- 8
Eine brasilianische CNPJ (Cadastro Nacional da Pessoa Jurídica) endet mit zwei Prüfziffern, die belegen, dass die vierzehnstellige Unternehmenskennung ohne Vertauschung und ohne einzelnen Ziffernfehler eingegeben oder gespeichert wurde. Diese Fähigkeit setzt die offizielle Mod-11-Regel der Receita Federal um, die für jede CNPJ gilt: zwölf Basisziffern kennzeichnen die Stammregistrierung und die Filiale, danach werden zwei Endziffern mit festen Gewichtungsfolgen und einer Rest-unter-elf-Regel abgeleitet. Nutzen Sie den Modus compute, wenn Sie nur die zwölfstellige Basis haben und beide Prüfziffern für ein Formular, eine Rechnung oder einen Stammdatenimport brauchen; nutzen Sie den Modus validate, wenn ein Partner, ERP oder Benutzer eine vollständige vierzehnstellige CNPJ übermittelt und Sie ein klares valid-Flag sowie das erwartete Paar für Fehlermeldungen benötigen.
Wie brasilianische CNPJ-Prüfziffern berechnet werden
Eine CNPJ hat ohne Zeichensetzung immer vierzehn Ziffern. Die ersten acht bilden die der juristischen Person zugewiesene Stammregistrierungsnummer; die nächsten vier kennzeichnen die Filiale (0001 ist die übliche Zentrale); die letzten zwei sind Prüfziffern und werden nie frei gewählt.
Zur Berechnung der ersten Prüfziffer multiplizieren Sie die zwölf Basisziffern von links nach rechts mit der Gewichtsfolge 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2, summieren die Produkte, nehmen diese Summe modulo elf und mappen den Rest: ist der Rest kleiner als zwei, ist die Prüfziffer null, sonst elf minus Rest. Zur Berechnung der zweiten Prüfziffer hängen Sie die erste an die zwölfstellige Basis an und wiederholen dasselbe Mod-11-Mapping mit den dreizehn Gewichten 6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2.
Die vollständige vierzehnstellige Zeichenkette muss genau diese beiden Endziffern tragen. Der Algorithmus ist deterministisch und lokal: kein Netzwerkanruf bei der Receita Federal, keine Katalogabfrage und keine Uhr. Gegenüber länderübergreifenden Steuer-ID-Validierern ist die Suchabsicht hier eng: Personen, die einen Rechner für brasilianische CNPJ-Prüfziffern aus zwölfstelligen Basen brauchen, keinen allgemeinen CPF- oder RFC-Prüfer.
Wo CNPJ-Prüfziffern in reale Abläufe passen
Finanz- und Stammdatenteams erhalten interne zwölfstellige Unternehmensbasen und müssen die offiziellen CNPJ-Prüfziffern anhängen, bevor die Kennung auf Rechnungen, Bankzahlungsdateien oder Marketplace-Verkäuferprofile geschrieben wird, die ungültige Steuer-IDs ablehnen. Kreditorenportale validieren vierzehnstellige CNPJs beim Lieferanten-Onboarding, damit eine einzige Vertauschung keinen Phantom-Lieferanten und keine Zahlungsabweichung erzeugt. Datenqualitätsjobs durchlaufen jede CNPJ-Spalte in einem CRM- oder ERP-Export, rufen den Validate-Modus auf und quarantänisieren Zeilen, in denen valid false ist — und fangen sowohl menschliche Edits als auch Generator-Bugs ab.
Behandeln Sie eine bestandene CNPJ-Prüfung nicht als Nachweis aktiver Registrierung bei der Receita Federal oder eines bestimmten Steuerregimes; sie belegt nur, dass die beiden Mod-11-Ziffern unter den Standardgewichten zur zwölfstelligen Basis passen.
Anwendungsfälle
CNPJ-Spalten in ERP- und CRM-Exporten auditieren
Validieren Sie stapelweise jede vierzehnstellige CNPJ in einer Lieferanten- oder Kundendatei und quarantänisieren Sie Zeilen, deren Prüfpaar nicht mehr dem neu berechneten erwarteten Wert entspricht.
Häufige Fragen
Was sind brasilianische CNPJ-Prüfziffern?
Es sind die letzten zwei Ziffern einer vierzehnstelligen CNPJ, berechnet mit zwei aufeinanderfolgenden gewichteten Mod-11-Summen, damit Tipp- und Importfehler meist erkannt werden, bevor die Kennung gespeichert oder auf eine Rechnung gedruckt wird.
Was passiert bei falscher Länge, Buchstaben oder Zeichensetzung?
Durchgängig identische Basen werden in compute abgelehnt; durchgängig identische volle CNPJs liefern in validate valid false. Fehlgeschlagene Validierungsaufgaben werden nicht abgerechnet.
Was bedeuten die Zifferngruppen einer CNPJ?
Die ersten acht Ziffern sind die Stammnummer des Unternehmens, die nächsten vier bezeichnen die Niederlassung, meist 0001 für den Hauptsitz, und die letzten zwei sind Prüfziffern, die nie frei gewählt werden.
Bedeutet eine gültige CNPJ, dass das Unternehmen aktiv ist?
Nein. Die bestandene Prüfung zeigt nur, dass die Ziffern zur Modulo-11-Regel passen. Das Werkzeug fragt nicht bei der Receita Federal nach und belegt daher keine aktive Registrierung.
Wird eine CNPJ aus lauter gleichen Ziffern akzeptiert?
Nein. Eine Basis aus einer einzigen wiederholten Ziffer wird bei der Berechnung abgelehnt, und eine vollständige CNPJ dieser Art gilt bei der Prüfung als ungültig.
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/cnpj-brazil \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"number":"112223330001"}'const res = await fetch("https://api.kit.forhosting.com/enc/cnpj-brazil", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"number": "112223330001"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/cnpj-brazil",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"number": "112223330001"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/cnpj-brazil", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"number":"112223330001"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"number":"112223330001"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/cnpj-brazil", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"number": "112223330001"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.cnpj_brazil",
"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
Nichtnumerische Eingaben, falsche Längen und durchgängig identische Ziffernfolgen scheitern mit invalid_input oder valid false statt stiller Bereinigung, sodass Sie nie eine halb bereinigte Steuer-ID speichern. Dieselbe reine Arithmetik läuft kostenlos im Browser und zum veröffentlichten API-Preis.
Eingabevertrag, Modi und Fehlerverhalten
Senden Sie ein number-Feld, das nur Zeichen von null bis neun enthält. Falsche Länge ist ein expliziter Fehler, der Modus und gesendete Länge nennt — zwölf für compute, vierzehn für validate — damit Client-Formulare „zwölf Ziffern nötig“ anzeigen können, ohne zu raten. Leere Zeichenketten, fehlendes number, ungültige mode-Werte und durchgängig identische zwölfstellige Basen im Compute-Modus scheitern, bevor eine gewichtete Summe für die Speicherung vertrauenswürdig ist, und werden nicht abgerechnet. Bevorzugen Sie compute, wenn Sie Unternehmenskennungen erzeugen oder vervollständigen; bevorzugen Sie validate, wenn Sie eine Suche oder einen Import an eine vollständige CNPJ von Benutzer oder Partnerdatei knüpfen. Leerzeichen, Punkte, Schrägstriche, Bindestriche, Buchstaben und Dezimalpunkte werden als nichtnumerische Eingabe mit invalid_input abgelehnt, damit ein still bereinigter Wert nie in den Speicher gelangt. Der Modus compute ist Standard: die Engine verlangt genau zwölf Ziffern, liefert check_digits als zweistellige Zeichenkette, check_digit_1 und check_digit_2 einzeln sowie with_check als die vierzehnstellige CNPJ, die Sie drucken oder speichern können. Der Modus validate verlangt genau vierzehn Ziffern; die Antwort meldet valid true, wenn beide Endziffern mit den neu berechneten expected_check_digits übereinstimmen und die Kette keine durchgängig identische Folge wie vierzehn Nullen ist. Validate enthält stets payload (die ersten zwölf Ziffern), die gegebenen und erwarteten Prüfpaare, repeated_digits und length vierzehn. Alias-Schlüssel wie digits, cnpj und code werden für dasselbe Payload-Feld akzeptiert, sodass Integrationen, die bereits „cnpj“ sprechen, nichts umbenennen müssen. Weil der Pfad reines Parse ohne Uhr, Zufallsquelle oder Netzwerk ist, liefert derselbe JSON-Body auf dem kostenlosen Browser-Tool und der API zu $0.002 pro erfolgreicher Anfrage stets dasselbe JSON-Ergebnis.
Wo CNPJ-Prüfziffern in reale Abläufe passen
E-Commerce- und B2B-Anmeldeformulare können expected_check_digits neu berechnen und eine freundliche Korrektur zeigen, wenn ein brasilianisches Unternehmen eine Nummer mit falsch getipptem letztem Paar einfügt.
Integrationsbeispiele
12-stellige CNPJ-Basis für Rechnungen vervollständigen
Rufen Sie den Compute-Modus mit der zwölfstelligen Basis auf, speichern Sie with_check und speisen Sie die vierzehnstellige CNPJ in Ihre NFe, Banküberweisung oder Marketplace-Verkäuferprofil ein.
Getippte oder importierte vollständige CNPJs beim Eingang prüfen
Wenn ein Formular oder CSV vierzehn Ziffern sendet, rufen Sie den Validate-Modus auf und blockieren Sie das Speichern, wenn valid false ist; zeigen Sie expected_check_digits, um einen einzelnen Tippfehler zu korrigieren.
Technische Fragen
Wie berechnen Sie CNPJ-Prüfziffern mit dieser API?
Senden Sie POST mit number genau zwölf Ziffern und mode compute (oder lassen Sie mode weg). Die Antwort enthält check_digits, check_digit_1, check_digit_2 und with_check (die vollständige vierzehnstellige CNPJ).
Wie prüfen Sie eine vollständige vierzehnstellige CNPJ?
Senden Sie POST mit der vierzehnstelligen Zeichenkette und mode validate. Die Antwort enthält valid, check_digits, expected_check_digits, payload (Ziffern ohne das letzte Paar) und repeated_digits.
Ist das Werkzeug für brasilianische CNPJ-Prüfziffern kostenlos?
Das Browser-Werkzeug ist kostenlos und läuft lokal. API-Aufrufe nutzen das vorausbezahlte KIT-Guthaben zum veröffentlichten Basispreis $0.002; ungültige Eingaben werden nie berechnet.