Zum Inhalt springen

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.

Ladekalkulator...
📚

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:

  1. Erste 8 Ziffern (XX.XXX.XXX): Die Basis-Registrierungsnummer, die dem Unternehmen eindeutig zugewiesen wird
  2. Nächste 4 Ziffern (/YYYY): Filial- oder Niederlassungskennung—/0001 kennzeichnet die Hauptniederlassung, während /0002, /0003 Zweigstellen repräsentieren
  3. 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

  1. 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
  2. Summieren Sie alle Produkte
  3. Teilen Sie die Summe durch 11 und ermitteln Sie den Rest
  4. Wenn der Rest < 2 ist, ist die Prüfziffer 0; andernfalls ist sie 11 - Rest

Berechnung der zweiten Prüfziffer

  1. 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
  2. Summieren Sie alle Produkte
  3. Teilen Sie durch 11 und ermitteln Sie den Rest
  4. 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:

  1. Klicken Sie auf "CNPJ generieren"
  2. Das Tool erstellt sofort eine mathematisch gültige Nummer
  3. Klicken Sie auf "Kopieren", um sie in die Zwischenablage zu übernehmen
  4. 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:

  1. Fügen Sie die CNPJ in das Eingabefeld ein oder tippen Sie sie ein
  2. Keine Sorge wegen der Formatierung—es funktioniert mit 12345678000195 oder 12.345.678/0001-95
  3. Klicken Sie auf "Validieren"
  4. 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:

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}
29

CNPJ-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}
24

CNPJ-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}
18

Diese 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
55

Java-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}
85

Wichtige 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
2

Akzeptieren 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

  1. Receita Federal do Brasil - Offizielles Portal - Die offizielle Website des brasilianischen Bundessteueramts mit CNPJ-Registrierungs- und Überprüfungsdiensten
  2. Consulta Pública CNPJ - Öffentliche CNPJ-Suche - Offizieller Regierungsdienst zur Überprüfung des CNPJ-Registrierungsstatus
  3. Normative Anweisung RFB Nr. 1863/2018 - Rechtliche Vorschriften zur CNPJ-Registrierung und -Nutzung in Brasilien

Technische Standards und Dokumentation

  1. Modulare Arithmetik-Algorithmen - Die Prüfzifferberechnung verwendet Modulo-11-Arithmetik, einen Standardansatz für Validierungsziffern
  2. ISO/IEC 7064 - Internationaler Standard für Prüfziffersysteme, der die Gestaltung der brasilianischen Dokumentenvalidierung beeinflusst hat
  3. Brasilianisches Zivilgesetzbuch (Gesetz Nr. 10.406/2002) - Rechtlicher Rahmen zur Definition von Unternehmensklassifizierungen, die eine CNPJ-Registrierung erfordern

Entwicklerressourcen

  1. NPM-Paketregister - npmjs.com - Repository für JavaScript-Bibliotheken einschließlich brasilianischer Dokumentenvalidatoren
  2. PyPI (Python Package Index) - pypi.org - Python-Bibliotheken zur CNPJ-Validierung und Verarbeitung brasilianischer Dokumente
  3. 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.