Skip to content

dapdevsoftware/validate-cnpj

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

validate-cnpj

Validate, format, and parse Brazilian CNPJs. Supports both numeric and alphanumeric formats (IN RFB nº 2.229/2024, effective July 2026).

Install

npm install validate-cnpj
# or
bun add validate-cnpj
# or
yarn add validate-cnpj

Usage

import { validate, format, parse, isAlphanumeric } from "validate-cnpj";

// Validate
validate("11.222.333/0001-81"); // true
validate("11222333000181");     // true
validate("00000000000000");     // false

// Alphanumeric (new format, July 2026)
validate("12ABC3450001XX");     // validates check digits

// Format
format("11222333000181"); // "11.222.333/0001-81"

// Parse
parse("11222333000181");
// { root: "11222333", branch: "0001", digits: "81" }

// Detect format
isAlphanumeric("11222333000181"); // false

API

Function Description
validate(cnpj) Validate a CNPJ (numeric or alphanumeric)
format(cnpj) Format as XX.XXX.XXX/XXXX-XX
parse(cnpj) Extract root, branch, and check digits
clean(cnpj) Strip formatting characters
generateDigits(base) Generate check digits for a 12-char base
isAlphanumeric(cnpj) Check if CNPJ uses the new alphanumeric format

Alphanumeric CNPJ

Starting July 2026, new CNPJ registrations in Brazil will use alphanumeric characters (A-Z, 0-9) in the first 12 positions. Check digits (positions 13-14) remain numeric. This library supports both formats from day one.

Legal basis: Instrução Normativa RFB nº 2.229, October 15, 2024.

Need company data?

checkpj.app — API for Brazilian company data. 69M+ companies, search, shareholders, validation. Free tier available.

License

MIT — DAPDEV Software Solutions

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors