CNPJ-Generator & Validator - Brasilianisches Unternehmens-ID-Tool
Generieren Sie gültige CNPJ-Nummern zum Testen oder validieren Sie brasilianische Unternehmens-IDs sofort. Kostenloses Tool mit Prüfzifferüberprüfung für Entwickler, die mit dem Cadastro Nacional da Pessoa Jurídica arbeiten.
Brasilianischer CNPJ-Generator und -Validator
CNPJ-Generator
Generieren Sie eine gültige brasilianische CNPJ-Nummer zum Testen.
CNPJ-Validator
Überprüfen Sie, ob eine brasilianische CNPJ-Nummer gültig ist.
Dokumentation
Verstehen von brasilianischen CNPJ-Nummern
Die CNPJ (Cadastro Nacional da Pessoa Jurídica) ist Brasiliens Version einer Unternehmenssteuer-ID - eine 14-stellige Nummer, die jede juristische Geschäftseinheit im Land identifiziert. Wenn Sie Software entwickeln, die brasilianische Geschäftsdaten verarbeitet, werden Sie diese Nummern schnell in Registrierungsformularen, Rechnungen und API-Integrationen antreffen.
Hier ist das, was dieses Tool praktisch macht: Es generiert mathematisch gültige CNPJs zum Testen, ohne echte Unternehmensidentifikatoren zu verwenden. Wenn Sie eine Testdatenbank mit 1.000 Datensätzen einrichten oder um 2 Uhr morgens eine Validierungsroutine debuggen, benötigen Sie CNPJs, die algorithmische Prüfungen bestehen, aber nicht versehentlich tatsächliche Unternehmen übereinstimmen. Genau das generiert dieses Tool.
Die hier erstellten Nummern folgen dem offiziellen Validierungsalgorithmus der Receita Federal (brasilianische Bundessteuerbehörde). Sie haben korrekte Prüfziffern und eine korrekte Formatierung - sie sind nur nicht in der Regierungsdatenbank registriert. Betrachten Sie sie als syntaktisch korrekte Testdaten, die keine Compliance-Probleme in Ihrer Entwicklungsumgebung verursachen.
Was ist eine CNPJ und warum sie wichtig ist
Eine CNPJ dient als brasilianischer Unternehmensidentifikator - ähnlich wie eine EIN in den Vereinigten Staaten oder eine Handelsregisternummer im Vereinigten Königreich. Jede legal operierende Geschäftseinheit in Brasilien muss eine CNPJ besitzen, die von der Receita Federal (Bundessteuerbehörde) ausgestellt wird.
Sie werden auf CNPJs stoßen bei:
- Zahlungsabwicklung: Brasilianische Zahlungsdienstleister erfordern CNPJ-Validierung für Händlerkonten
- Steuerkonformität: Jede in Brasilien ausgestellte Rechnung muss eine gültige CNPJ enthalten
- Geschäftsregistrierung: Behörden verwenden CNPJs zur Verfolgung von Rechtspersonen über Systeme hinweg
- Bankvorgänge: Eröffnung von Unternehmenskonten oder Abwicklung internationaler Überweisungen
- Import/Export: Zolldokumentation erfordert CNPJ-Überprüfung
- Regierungsaufträge: Öffentliche Ausschreibungssysteme validieren CNPJs vor Angebotsannahme
Aus meiner Erfahrung mit brasilianischen E-Commerce-Plattformen ist einer der häufigsten Integrationspunkte der Checkout-Prozess, bei dem Benutzer ihre CNPJ für Geschäftskäufe eingeben. Ihre Validierungslogik muss Formatierungsfehler abfangen, bevor der Zahlungsabwickler dies tut - sonst werden Transaktionen fehlschlagen, die hätten verhindert werden können.
CNPJ-Struktur und Format
Ein CNPJ besteht aus 14 Ziffern und wird wie folgt formatiert: XX.XXX.XXX/YYYY-ZZ
Die Struktur im Detail:
- Erste 8 Ziffern (XX.XXX.XXX): Die Basis-Registrierungsnummer, die dem Unternehmen eindeutig zugewiesen wird
- Nächste 4 Ziffern (/YYYY): Filial- oder Niederlassungskennung—
/0001kennzeichnet die Hauptniederlassung, während/0002,/0003Zweigstellen repräsentieren - Letzte 2 Ziffern (-ZZ): Prüfziffern, die mittels eines gewichteten Algorithmus berechnet werden
Beispiel: 12.345.678/0001-95
Was interessant an der Filialkennung ist: Wenn ein Unternehmen mehrere Standorte eröffnet, erhalten alle die gleichen ersten 8 Ziffern, aber eine unterschiedliche Filialnummer. Wenn also eine Einzelhandelskette 50 Filialen hat, werden sie CNPJs haben, die von /0001 bis /0050 reichen, alle mit der gleichen Basis-Nummer. Dies erleichtert die Identifizierung, dass mehrere CNPJs zur gleichen Mutterorganisation gehören.
Die Prüfziffern sind nicht zufällig—sie werden mittels eines Modulo-11-Algorithmus mit spezifischen Gewichtungsfolgen berechnet. Diese Designentscheidung, die bei brasilianischen Verwaltungsdokumenten üblich ist, macht es mathematisch schwierig, gültige Nummern zu fälschen oder versehentlich gültige Nummern durch Tippfehler zu erzeugen.
Wie die CNPJ-Validierung tatsächlich funktioniert
Der Validierungsalgorithmus verwendet eine gewichtete Modulus-11-Berechnung. Hier ist die Logik dahinter:
Berechnung der ersten Prüfziffer
- Nehmen Sie die ersten 12 Ziffern und multiplizieren Sie jede mit den Gewichten:
5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2 - Summieren Sie alle Produkte
- Teilen Sie die Summe durch 11 und ermitteln Sie den Rest
- Wenn der Rest < 2 ist, ist die Prüfziffer 0; andernfalls ist sie
11 - Rest
Berechnung der zweiten Prüfziffer
- Nehmen Sie die ersten 13 Ziffern (einschließlich der ersten Prüfziffer) und multiplizieren Sie mit den Gewichten:
6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2 - Summieren Sie alle Produkte
- Teilen Sie durch 11 und ermitteln Sie den Rest
- Wenn der Rest < 2 ist, ist die Prüfziffer 0; andernfalls ist sie
11 - Rest
Warum dieser Ansatz funktioniert: Das gewichtete Multiplikationssystem schafft eine einzigartige Beziehung zwischen allen 12 Basisziffern und den resultierenden Prüfziffern. Das Ändern auch nur einer einzigen Ziffer in der Basisnummer erzeugt unterschiedliche Prüfziffern, was häufige Übertragungsfehler wie das Vertauschen zweier Ziffern (Eingabe von 12.345 statt 12.354) abfängt.
Eine praktische Anmerkung: CNPJs mit allen identischen Ziffern (wie 11.111.111/1111-11) sind automatisch ungültig, selbst wenn sie die mathematische Prüfung bestehen. Die Receita Federal schließt diese Muster ausdrücklich aus, um triviale Fälle zu verhindern.
Wie man den CNPJ-Generator und -Validator verwendet
CNPJ-Generierung für Tests
Benötigen Sie eine gültige CNPJ für Ihre Testdatenbank? So geht's:
- Klicken Sie auf "CNPJ generieren"
- Das Tool erstellt sofort eine mathematisch gültige Nummer
- Klicken Sie auf "Kopieren", um sie in die Zwischenablage zu übernehmen
- Fügen Sie sie in Ihre Testformulare, Datenbankseeds oder Unit-Tests ein
Jede generierte CNPJ besteht alle algorithmischen Validierungsprüfungen, ist aber nicht bei der Receita Federal registriert. Das bedeutet, Sie können sie frei in der Entwicklung verwenden, ohne sich Sorgen zu machen, versehentlich den Bezeichner eines echten Unternehmens zu nutzen.
CNPJ-Nummern validieren
Haben Sie eine CNPJ, die Sie überprüfen müssen? Der Validator erledigt das:
- Fügen Sie die CNPJ in das Eingabefeld ein oder tippen Sie sie ein
- Keine Sorge wegen der Formatierung—es funktioniert mit
12345678000195oder12.345.678/0001-95 - Klicken Sie auf "Validieren"
- Erhalten Sie sofortige Rückmeldung, ob die Prüfziffern korrekt sind
Was der Validator prüft: korrekte Länge (14 Ziffern), richtige Berechnungen der Prüfziffern und Ausschluss ungültiger Muster wie Ziffern mit gleichen Werten. Was er nicht prüft: ob die CNPJ in der Regierungsdatenbank registriert ist—dafür muss man die Receita Federal direkt abfragen.
Reale Anwendungsfälle für CNPJ-Generator und -Validator
Softwareentwicklung und Testing
Datenbankbestückung: Beim Einrichten einer Staging-Umgebung mit realistischen Testdaten benötigen Sie Dutzende oder Hunderte gültiger CNPJs. Die manuelle Erstellung ist mühsam, und die Verwendung echter Unternehmensidentifikatoren wirft Datenschutzbedenken auf. Generierte CNPJs lösen beide Probleme.
Unit-Testing von Grenzfällen: Ihre Validierungsfunktion sollte 00.000.000/0000-00 ablehnen, aber 11.222.333/0001-81 akzeptieren. Ein Generator ermöglicht es Ihnen, schnell sowohl gültige als auch absichtlich ungültige Testfälle zu erstellen, um zu überprüfen, ob Ihre Logik Grenzfälle korrekt behandelt.
QA-Regressionstests: Beim Testen von Registrierungsformularen oder B2B-Checkout-Prozessen benötigen QA-Teams für jeden Durchlauf frische Testdaten. Ein häufiges Problem: Testumgebungen werden mit denselben 5-6 CNPJs verunreinigt, die wiederholt verwendet werden, was Fehler verbirgt, die nur bei bestimmten Ziffernmustern auftreten.
API-Integrationstests: Wenn Sie sich mit brasilianischen Zahlungsanbietern wie PagSeguro oder Mercado Pago integrieren, erfordern deren Sandbox-Umgebungen oft eine gültige CNPJ-Formatierung. Die Mathematik muss korrekt sein, auch wenn Sie keine Produktionsdatenbanken verwenden.
Datenverarbeitung und -validierung
Bereinigung importierter Daten: Sie haben eine CSV mit 10.000 brasilianischen Unternehmenseinträgen erhalten. Vor der Verarbeitung müssen Sie identifizieren, welche CNPJs fehlerhaft sind. Das Durchlaufen durch den Validator markiert Einträge mit Tippfehlern, Kürzungen oder falschen Prüfziffern - und spart Stunden des Debuggens.
Client-seitige Formularvalidierung: Das Abfangen ungültiger CNPJs vor der Formularübermittlung verbessert die Benutzererfahrung. Niemand möchte ein 20-Felder-Registrierungsformular ausfüllen, nur um beim Absenden einen Fehler zu erhalten, weil zwei Ziffern im CNPJ vertauscht wurden.
Datenanonymisierung für Analysen: Bei der Vorbereitung von Produktionsdaten zur Weitergabe an Analyseteams oder externe Partner müssen Sie echte CNPJs durch gültige, aber gefälschte ersetzen. Dies erhält die referenzielle Integrität Ihres Datensatzes und schützt gleichzeitig die tatsächlichen Unternehmensidentitäten.
Internationale Geschäftsaktivitäten
Verstehen brasilianischer Anforderungen: Wenn Sie in den brasilianischen Markt expandieren, werden Sie CNPJ-Anforderungen in Verträgen, Rechnungen und Versanddokumentation antreffen. Ein Werkzeug zum Experimentieren mit dem Format hilft Ihnen zu verstehen, was Ihre Systeme bewältigen müssen.
Spezifikationen von Drittanbieter-Integrationen: Bei der Überprüfung von API-Dokumentationen brasilianischer SaaS-Anbieter finden Sie oft CNPJ-Felder in Nutzlastbeispielen. Die Fähigkeit, gültige Testwerte zu generieren, beschleunigt Ihre Integrationsprotokollerstellung.
Alternative CNPJ-Validierungsansätze
Programmbibliotheken
Wenn Sie eine CNPJ-Validierung in Ihre Anwendungslogik integrieren möchten, implementieren diese Bibliotheken den Prüfzifferalgorithmus:
- JavaScript/Node.js:
cpf-cnpj-validator(130k+ wöchentliche Downloads),validator.js(unterstützt brasilianische Dokumente) - Python:
validate-docbr(validiert CPF, CNPJ und andere brasilianische Dokumente),python-cnpj - PHP:
respect/validation(enthält CNPJ-Regeln),brazilianutils - Java:
caelum-stella(umfassende Validierung brasilianischer Dokumente) - Ruby:
cpf_cnpjGem
Diese Bibliotheken behandeln typischerweise Formatierung, Parsing und Validierung für mehrere brasilianische Dokumenttypen (CPF, CNPJ usw.).
Offizielle Verifizierungs-APIs
Für Produktionssysteme, die eine tatsächliche Geschäftsregistrierung überprüfen müssen:
- Receita Federal Public Service: Die Consulta CNPJ API ermöglicht die Überprüfung gegen die offizielle Datenbank (erfordert ordnungsgemäße Autorisierung und Ratenbegrenzung)
- Drittanbieter-Datenanbieter: Dienste wie Serasa Experian und Boa Vista SCPC bieten kommerzielle APIs, die Unternehmensdaten, Registrierungsstatus und Kreditinformationen zurückgeben
Hinweis: Diese Dienste überprüfen die tatsächliche Registrierung, nicht nur die mathematische Gültigkeit. Sie benötigen eine ordnungsgemäße Autorisierung und sollten mit API-Kosten für den Produktiveinsatz rechnen.
Wann welcher Ansatz verwendet wird
Verwenden Sie dieses Browser-Tool, wenn: Sie eine schnelle Validierung ohne Abhängigkeiten benötigen, Testdaten für Demos generieren oder lernen möchten, wie CNPJ-Validierung funktioniert.
Verwenden Sie eine Bibliothek, wenn: Sie eine Anwendung entwickeln, die Client-seitige oder Server-seitige Validierung als Teil der Formularverarbeitung benötigt.
Verwenden Sie eine offizielle API, wenn: Sie überprüfen müssen, ob ein CNPJ einem tatsächlichen, aktiven Unternehmen mit aktuellem Registrierungsstatus entspricht.
Technische Implementierungsdetails
Dieses Tool läuft vollständig in Ihrem Browser mit JavaScript—keine Serveranfragen, keine Daten, die Ihren Computer verlassen. Hier ist, wie die Algorithmen unter der Haube funktionieren, mit Code, den Sie für Ihre eigenen Projekte anpassen können:
CNPJ-Generierungsalgorithmus
1function generateCNPJ() {
2 // Generiere die ersten 12 Ziffern zufällig
3 const digits = Array.from({ length: 12 }, () => Math.floor(Math.random() * 10));
4
5 // Berechne erste Prüfziffer
6 const firstCheckDigit = calculateCheckDigit(digits);
7 digits.push(firstCheckDigit);
8
9 // Berechne zweite Prüfziffer
10 const secondCheckDigit = calculateCheckDigit(digits);
11 digits.push(secondCheckDigit);
12
13 // Formatiere die CNPJ
14 return formatCNPJ(digits.join(''));
15}
16
17function calculateCheckDigit(digits) {
18 const weights = digits.length < 13
19 ? [5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2]
20 : [6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2];
21
22 const sum = digits.reduce((acc, digit, index) => {
23 return acc + digit * weights[index];
24 }, 0);
25
26 const remainder = sum % 11;
27 return remainder < 2 ? 0 : 11 - remainder;
28}
29CNPJ-Validierungsalgorithmus
1function validateCNPJ(cnpj) {
2 // Entferne nicht-numerische Zeichen
3 const cleanCNPJ = cnpj.replace(/\D/g, '');
4
5 // Überprüfe die korrekte Länge
6 if (cleanCNPJ.length !== 14) return false;
7
8 // Überprüfe bekannte ungültige Muster (alle gleichen Ziffern)
9 if (/^(\d)\1+$/.test(cleanCNPJ)) return false;
10
11 // Konvertiere zu Ziffernarray
12 const digits = cleanCNPJ.split('').map(Number);
13
14 // Überprüfe erste Prüfziffer
15 const expectedFirstDigit = calculateCheckDigit(digits.slice(0, 12));
16 if (digits[12] !== expectedFirstDigit) return false;
17
18 // Überprüfe zweite Prüfziffer
19 const expectedSecondDigit = calculateCheckDigit(digits.slice(0, 13));
20 if (digits[13] !== expectedSecondDigit) return false;
21
22 return true;
23}
24CNPJ-Formatierungsfunktion
1function formatCNPJ(cnpj) {
2 // Entferne nicht-numerische Zeichen
3 const cleanCNPJ = cnpj.replace(/\D/g, '');
4
5 // Formatiere basierend auf Länge
6 if (cleanCNPJ.length <= 2) {
7 return cleanCNPJ;
8 } else if (cleanCNPJ.length <= 5) {
9 return `${cleanCNPJ.slice(0, 2)}.${cleanCNPJ.slice(2)}`;
10 } else if (cleanCNPJ.length <= 8) {
11 return `${cleanCNPJ.slice(0, 2)}.${cleanCNPJ.slice(2, 5)}.${cleanCNPJ.slice(5)}`;
12 } else if (cleanCNPJ.length <= 12) {
13 return `${cleanCNPJ.slice(0, 2)}.${cleanCNPJ.slice(2, 5)}.${cleanCNPJ.slice(5, 8)}/${cleanCNPJ.slice(8)}`;
14 } else {
15 return `${cleanCNPJ.slice(0, 2)}.${cleanCNPJ.slice(2, 5)}.${cleanCNPJ.slice(5, 8)}/${cleanCNPJ.slice(8, 12)}-${cleanCNPJ.slice(12, 14)}`;
16 }
17}
18Diese Kernfunktionen können in anderen Programmiersprachen unter Verwendung der gleichen Logik implementiert werden. Hier sind Beispiele in Python und Java:
Python-Implementierung
1import random
2
3def calculate_check_digit(digits):
4 weights = [5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2] if len(digits) < 13 else [6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2]
5
6 total = 0
7 for i in range(len(digits)):
8 total += digits[i] * weights[i]
9
10 remainder = total % 11
11 return 0 if remainder < 2 else 11 - remainder
12
13def generate_cnpj():
14 # Generiere erste 12 Ziffern zufällig
15 digits = [random.randint(0, 9) for _ in range(12)]
16
17 # Berechne erste Prüfziffer
18 first_check = calculate_check_digit(digits)
19 digits.append(first_check)
20
21 # Berechne zweite Prüfziffer
22 second_check = calculate_check_digit(digits)
23 digits.append(second_check)
24
25 # Formatiere die CNPJ
26 cnpj = ''.join(map(str, digits))
27 return f"{cnpj[:2]}.{cnpj[2:5]}.{cnpj[5:8]}/{cnpj[8:12]}-{cnpj[12:]}"
28
29def validate_cnpj(cnpj):
30 # Entferne nicht-numerische Zeichen
31 cnpj = ''.join(filter(str.isdigit, cnpj))
32
33 # Überprüfe Länge
34 if len(cnpj) != 14:
35 return False
36
37 # Überprüfe, ob alle Ziffern gleich sind
38 if len(set(cnpj)) == 1:
39 return False
40
41 # Konvertiere zu Integerliste
42 digits = [int(d) for d in cnpj]
43
44 # Validiere erste Prüfziffer
45 first_check = calculate_check_digit(digits[:12])
46 if digits[12] != first_check:
47 return False
48
49 # Validiere zweite Prüfziffer
50 second_check = calculate_check_digit(digits[:13])
51 if digits[13] != second_check:
52 return False
53
54 return True
55Java-Implementierung
1import java.util.Random;
2
3public class CNPJUtils {
4
5 public static String generateCNPJ() {
6 Random random = new Random();
7 int[] digits = new int[14];
8
9 // Generiere erste 12 Ziffern zufällig
10 for (int i = 0; i < 12; i++) {
11 digits[i] = random.nextInt(10);
12 }
13
14 // Berechne erste Prüfziffer
15 digits[12] = calculateCheckDigit(digits, 12);
16
17 // Berechne zweite Prüfziffer
18 digits[13] = calculateCheckDigit(digits, 13);
19
20 // Formatiere die CNPJ
21 return String.format("%02d.%03d.%03d/%04d-%02d",
22 digits[0] * 10 + digits[1],
23 digits[2] * 100 + digits[3] * 10 + digits[4],
24 digits[5] * 100 + digits[6] * 10 + digits[7],
25 digits[8] * 1000 + digits[9] * 100 + digits[10] * 10 + digits[11],
26 digits[12] * 10 + digits[13]);
27 }
28
29 private static int calculateCheckDigit(int[] digits, int length) {
30 int[] weights = length < 13
31 ? new int[]{5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2}
32 : new int[]{6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2};
33
34 int sum = 0;
35 for (int i = 0; i < length; i++) {
36 sum += digits[i] * weights[i];
37 }
38
39 int remainder = sum % 11;
40 return remainder < 2 ? 0 : 11 - remainder;
41 }
42
43 public static boolean validateCNPJ(String cnpj) {
44 // Entferne nicht-numerische Zeichen
45 cnpj = cnpj.replaceAll("\\D", "");
46
47 // Überprüfe Länge
48 if (cnpj.length() != 14) {
49 return false;
50 }
51
52 // Überprüfe, ob alle Ziffern gleich sind
53 boolean allDigitsSame = true;
54 for (int i = 1; i < cnpj.length(); i++) {
55 if (cnpj.charAt(i) != cnpj.charAt(0)) {
56 allDigitsSame = false;
57 break;
58 }
59 }
60 if (allDigitsSame) {
61 return false;
62 }
63
64 // Konvertiere zu Ziffernarray
65 int[] digits = new int[14];
66 for (int i = 0; i < 14; i++) {
67 digits[i] = Character.getNumericValue(cnpj.charAt(i));
68 }
69
70 // Validiere erste Prüfziffer
71 int firstCheck = calculateCheckDigit(digits, 12);
72 if (digits[12] != firstCheck) {
73 return false;
74 }
75
76 // Validiere zweite Prüfziffer
77 int secondCheck = calculateCheckDigit(digits, 13);
78 if (digits[13] != secondCheck) {
79 return false;
80 }
81
82 return true;
83 }
84}
85Wichtige Einschränkungen und Überlegungen
Was dieses Tool kann und nicht kann
Was es validiert: Mathematische Korrektheit—ob die Prüfziffern mit der Algorithmusberechnung übereinstimmen.
Was es nicht validiert: Ob die CNPJ bei der Receita Federal registriert ist, ob sie zu einem aktiven Unternehmen gehört oder ob sie mit dem Unternehmensnamen übereinstimmt, den Sie erwarten.
Denken Sie daran wie Rechtschreibprüfung versus Faktenprüfung. Dieses Tool sagt Ihnen, ob eine CNPJ mathematisch "korrekt" ist, kann aber nicht feststellen, ob die Nummer zu einem realen, aktiven Unternehmen gehört.
Rechtmäßige und ethische Nutzung
Generierte CNPJs sind nur für Tests und Entwicklung gedacht. Sie sind mathematisch gültig, aber nicht bei brasilianischen Behörden registriert, was bedeutet:
- ✅ Sicher zu verwenden für: Testdatenbanken füllen, Unit-Tests für Validierungslogik, QA-Umgebungen, Codebeispiele in Dokumentationen
- ❌ Niemals verwenden für: Steuererklärungen, Unternehmenregistrierung, Vertragsunterzeichnungen, Abwicklung echter Transaktionen oder Vorspiegelung falscher Unternehmensidentität
Die Verwendung einer gefälschten CNPJ für offizielle Zwecke ist nicht nur unethisch—es ist nach brasilianischem Recht illegal und kann zu Betrugsanklagen führen.
Technische Einschränkungen
Zufallsgenerierung hat Auswirkungen: Das Tool generiert die ersten 12 Ziffern zufällig. Echte CNPJs, die von der Receita Federal ausgegeben werden, folgen internen Mustern in Bezug auf Registrierungsdatum, Regionalstelle und Unternehmenstyp. Generierte Nummern werden diesen Mustern nicht entsprechen, was fortschrittliche Validierungssysteme möglicherweise markieren.
Keine semantische Validierung: Ein gültiges CNPJ-Format bedeutet nicht automatisch einen gültigen Unternehmenskontext. Beispielsweise haben Regierungsbehörden spezifische CNPJ-Bereiche—dieser Generator könnte zufällig einen erzeugen, aber er wäre nicht bedeutungsvoll.
Formathandhabung: Der Validator akzeptiert verschiedene Eingabeformate (12345678000195, 12.345.678/0001-95), aber einige Altsysteme erwarten exakte Formatierung. Testen Sie immer mit Ihren spezifischen Integrationsanforderungen.
Datenschutz und Sicherheit
Die gesamte Verarbeitung erfolgt clientseitig in Ihrem Browser. Keine CNPJs, die Sie generieren oder validieren, werden an Server gesendet, protokolliert oder gespeichert. Das Tool fordert keine persönlichen Informationen an, verarbeitet oder handhabt sie nicht.
Häufig gestellte Fragen zur CNPJ-Validierung
Was ist der Unterschied zwischen Validierung und Überprüfung eines CNPJ?
Validierung prüft, ob die Nummer mathematisch korrekt ist - richtiges Format, korrekte Prüfziffern, keine ungültigen Muster. Dieses Tool führt eine Validierung durch.
Überprüfung prüft, ob der CNPJ in der Datenbank der Receita Federal mit einem tatsächlichen Unternehmen registriert ist. Die Überprüfung erfordert eine Abfrage der Regierungsdatenbank und ist nicht etwas, das dieses Tool macht.
Sie können einen perfekt gültigen CNPJ haben, der nicht überprüft ist (wie die Testnummern, die dieses Tool generiert), oder einen ungültigen CNPJ, der einem echten Unternehmen gehört (weil jemand einen Tippfehler gemacht hat).
Kann ich generierte CNPJs für Produktionstests verwenden?
Es kommt darauf an, was Sie unter "Produktionstests" verstehen. Sie sind in Staging-Umgebungen, Lasttests und Pre-Launch-QA in Ordnung. Aber wenn "Produktionstests" bedeutet, mit echten Transaktionen, echten Regierungs-APIs oder echten Finanzsystemen zu testen - dann nein, Sie benötigen tatsächlich registrierte CNPJs.
Ein sichererer Ansatz: Verwenden Sie generierte CNPJs in isolierten Testumgebungen und wechseln Sie dann zu einem kleinen Satz echter Test-Unternehmens-CNPJs (die Sie kontrollieren), wenn Sie Produktionsintegrationen testen.
Warum lehnt der Validator 11.111.111/1111-11 ab?
Obwohl ein CNPJ mit identischen Ziffern mathematisch gültige Prüfziffern erzeugen kann, schließt die Receita Federal diese Muster ausdrücklich aus. Es ist eine Geschäftsregel, keine mathematische. Das Gleiche gilt für sequenzielle Muster in einigen Validierungssystemen.
Dies ähnelt, wie viele Systeme Passwörter wie "password123" ablehnen, auch wenn sie Längenanforderungen erfüllen - sie sind technisch gültig, aber praktisch inakzeptabel.
Wie behandle ich CNPJ-Validierung in verschiedenen Lokalen?
Brasilianische Unternehmen, die international tätig sind, lassen manchmal die Formatierungszeichen beim Eingeben von CNPJs in ausländische Systeme weg. Ihre Validierungslogik sollte nicht-numerische Zeichen vor der Prüfung entfernen:
1const cleanCNPJ = input.replace(/\D/g, ''); // Entferne alles außer Ziffern
2Akzeptieren Sie 12.345.678/0001-95, 12345678000195 und 12 345 678 0001 95 als äquivalente Eingaben.
Was ist mit CNPJ vs CPF-Validierung?
CPF (Cadastro de Pessoas Físicas) ist Brasiliens individuelle Steuer-ID, während CNPJ für Unternehmen ist. Sie verwenden unterschiedliche Prüfzifferalgorithmen und Längen (CPF hat 11 Ziffern, CNPJ hat 14). Wenn Sie eine brasilianische App entwickeln, die beide verarbeitet, benötigen Sie separate Validierungsfunktionen - obwohl viele Bibliotheken beide Formate unterstützen.
Ein häufiges Muster: Lassen Sie Benutzer CPF oder CNPJ in dasselbe Feld eingeben und erkennen Sie dann den Typ basierend auf der Länge nach Entfernen der Formatierung.
Funktioniert dies für ausländische Unternehmen, die in Brasilien tätig sind?
Ausländische Unternehmen, die in Brasilien tätig sind, müssen ebenfalls CNPJs von der Receita Federal erhalten. Ihre CNPJs folgen dem gleichen Format und den gleichen Validierungsregeln wie inländische Unternehmen. Es gibt kein spezielles "ausländisches Unternehmen" CNPJ-Format.
Ausländische Unternehmen haben jedoch möglicherweise zusätzliche Dokumentationsanforderungen und unterschiedliche Registrierungsprozesse - konsultieren Sie einen brasilianischen Wirtschaftsanwalt für Details.
Kann ich die Regierungsdatenbank abfragen, um die CNPJ-Registrierung zu überprüfen?
Ja, die Receita Federal bietet öffentlichen Zugang zur Überprüfung grundlegender CNPJ-Informationen über ihren Consulta Pública CNPJ Dienst. Sie können CNPJs manuell nachschlagen oder mit entsprechender Autorisierung ihre APIs für programmgesteuerten Zugriff nutzen.
Beachten Sie, dass intensive Nutzung eine Registrierung erfordert und es Nutzungsbeschränkungen gibt, um Missbrauch zu verhindern.
Wie oft ändern sich CNPJs?
CNPJs sind permanente Identifikatoren, die sich nicht ändern, wenn ein Unternehmen seinen Namen, Adresse oder Eigentumsstruktur ändert. Wenn ein Unternehmen jedoch schließt und später neu registriert wird, kann es einen neuen CNPJ erhalten. Filialnummern (der /XXXX-Teil) können hinzugefügt werden, wenn Unternehmen neue Standorte eröffnen, aber die Basis-8-Ziffern-Nummer bleibt konstant.
Referenzen und zusätzliche Ressourcen
Offizielle Regierungsquellen
- Receita Federal do Brasil - Offizielles Portal - Die offizielle Website des brasilianischen Bundessteueramts mit CNPJ-Registrierungs- und Überprüfungsdiensten
- Consulta Pública CNPJ - Öffentliche CNPJ-Suche - Offizieller Regierungsdienst zur Überprüfung des CNPJ-Registrierungsstatus
- Normative Anweisung RFB Nr. 1863/2018 - Rechtliche Vorschriften zur CNPJ-Registrierung und -Nutzung in Brasilien
Technische Standards und Dokumentation
- Modulare Arithmetik-Algorithmen - Die Prüfzifferberechnung verwendet Modulo-11-Arithmetik, einen Standardansatz für Validierungsziffern
- ISO/IEC 7064 - Internationaler Standard für Prüfziffersysteme, der die Gestaltung der brasilianischen Dokumentenvalidierung beeinflusst hat
- Brasilianisches Zivilgesetzbuch (Gesetz Nr. 10.406/2002) - Rechtlicher Rahmen zur Definition von Unternehmensklassifizierungen, die eine CNPJ-Registrierung erfordern
Entwicklerressourcen
- NPM-Paketregister - npmjs.com - Repository für JavaScript-Bibliotheken einschließlich brasilianischer Dokumentenvalidatoren
- PyPI (Python Package Index) - pypi.org - Python-Bibliotheken zur CNPJ-Validierung und Verarbeitung brasilianischer Dokumente
- GitHub - Open-Source-Implementierungen der CNPJ-Validierung in mehreren Programmiersprachen
Beginnen Sie mit der Generierung und Validierung von CNPJs
Ob Sie eine brasilianische E-Commerce-Plattform aufbauen, Zahlungsintegrationen mit Mercado Pago testen oder einfach nur verstehen möchten, wie die CNPJ-Validierung funktioniert, dieses Tool bietet Ihnen sofortigen Zugang zu Generierungs- und Validierungsfunktionen.
Keine Installation, keine API-Schlüssel, keine komplizierten Einrichtungen. Öffnen Sie einfach Ihren Browser und beginnen Sie mit der Arbeit mit gültigen brasilianischen Unternehmensidentifikatoren.