CNPJ生成器和验证器 - 巴西企业身份识别工具
CNPJ生成器和验证器用于生成或校验巴西的国家法人登记簿号码(CNPJ),这是巴西企业的法定税务识别码。工具依照巴西联邦税务局(Receita Federal)公布的官方校验位计算公式,生成格式正确、数学上有效的测试用CNPJ号码,也可以验证一个现有号码的校验位是否正确,主要供开发者测试企业注册表单和财务系统。
巴西企业注册号生成器和验证器
CNPJ生成器
生成用于测试目的的有效巴西企业注册号。
CNPJ验证器
检查巴西企业注册号是否有效。
文档
什么是 CNPJ?
CNPJ 是 Cadastro Nacional da Pessoa Jurídica(巴西全国法人登记册)的缩写。它是巴西为每个已注册企业和其他法人实体分配的识别号码,类似于美国的 EIN 或英国的公司注册号。CNPJ 共有 14 个字符,最后两位是根据前十二位计算出的校验位。本工具生成能通过该计算的号码,供软件测试使用,并检查给定的 CNPJ 在数学上是否有效。它同时支持传统的纯数字 CNPJ 和较新的字母数字 CNPJ。
巴西联邦税务局(称为 Receita Federal)负责签发真实的 CNPJ 号码并维护官方登记簿。此工具生成的号码未在 Receita Federal 登记,也不属于任何真实公司。它只能用于测试,不得用于纳税申报、合同或任何官方用途。
CNPJ 格式
CNPJ 的书写形式为 XX.XXX.XXX/YYYY-ZZ。每一部分都有特定含义:
- 前 8 位数字:分配给公司的基础号码。
- 接下来的 4 位数字:分支机构编号。
0001通常是公司总部,0002、0003等依次表示其他分支机构。同一公司的所有分支机构前 8 位数字相同。 - 最后 2 位数字:校验位,根据前 12 个字符计算得出。
示例:12.345.678/0001-95。
字母数字 CNPJ
自 2026 年七月起,Receita Federal(巴西联邦税务局)也为新登记的企业分配字母数字 CNPJ,而现有的纯数字 CNPJ 仍然有效。新格式中,前 12 个字符可以是数字 0 至 9,也可以是大写字母 A 至 Z。最后 2 个字符仍是数字校验位。格式和标点不变。
示例:12.ABC.345/01DE-35。
如何计算 CNPJ 校验位
两个校验位使用同一规则,称为模 11 运算:给每个字符一个数值,乘以固定的权重,把乘积相加,再把和变成一位数字。
对于数字,其值就是数字本身。对于字母,其值为其 ASCII 码减去 48。ASCII 是计算机字符的标准编号。因此 A = 17,B = 18,依此类推,直到 Z = 42。对于数字,ASCII 码减去 48 得到的就是数字本身,因此纯数字 CNPJ 的校验方式与以前完全相同。
第一个校验位(CNPJ 的第 13 位):
- 将前 12 个字符的值按顺序乘以权重
5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2。 - 将这 12 个乘积相加。
- 将总数除以 11,保留余数。
- 如果余数为 0 或 1,校验位就是 0。否则,校验位就是
11 − remainder。
第二个校验位(CNPJ 的第 14 位):
- 将前 13 个字符(原来的 12 个,加上刚算出的第一个校验位)的值乘以权重
6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2。 - 将这 13 个乘积相加。
- 将总数除以 11,保留余数。
- 如果余数为 0 或 1,校验位就是 0。否则,校验位就是
11 − remainder。
14 位数字全部相同的 CNPJ,例如 11.111.111/1111-11,一律视为无效。这是大多数 CNPJ 验证工具共同遵循的约定,在校验位公式之前应用,因为否则 00.000.000/0000-00 会通过校验。
算例
取基础数字 1 2 3 4 5 6 7 8 0 0 0 1。
第 1 步 — 第一个校验位。 将每个数字乘以其权重并把结果相加:
| 数字 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 0 | 0 | 0 | 1 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 权重 | 5 | 4 | 3 | 2 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 |
| 乘积 | 5 | 8 | 9 | 8 | 45 | 48 | 49 | 48 | 0 | 0 | 0 | 2 |
乘积之和为 222。将 222 除以 11,余数为 2,因此第一个校验位为 11 − 2 = 9。
第 2 步 — 第二个校验位。 现在的数字串为 1 2 3 4 5 6 7 8 0 0 0 1 9(13 位数字,包括第 1 步得到的 9)。乘以第二组权重并相加,总和为 237。237 除以 11 余 6,因此第二个校验位为 11 − 6 = 5。
完整号码为 12.345.678/0001-95,也就是本页通篇使用的示例。把基础号码中的任意一位数字改动,都会使至少一个校验位发生变化,因此该公式能发现大多数输入错误。
字母数字示例
Receita Federal 的校验位手册演算了基础号码 12ABC34501DE。字母换算为 A = 17,B = 18,C = 19,D = 20,E = 21。
| 字符 | 1 | 2 | A | B | C | 3 | 4 | 5 | 0 | 1 | D | E |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 数值 | 1 | 2 | 17 | 18 | 19 | 3 | 4 | 5 | 0 | 1 | 20 | 21 |
| 权重 | 5 | 4 | 3 | 2 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 |
| 乘积 | 5 | 8 | 51 | 36 | 171 | 24 | 28 | 30 | 0 | 4 | 60 | 42 |
乘积之和为 459。459 ÷ 11 的余数为 8,因此第一个校验位为 11 − 8 = 3。加上 3 后,第二个加权和为 424。424 ÷ 11 的余数为 6,因此第二个校验位为 11 − 6 = 5。结果为 12.ABC.345/01DE-35。
如何使用此工具
生成器。 点击“生成 CNPJ”,生成带有正确校验位的新随机号码。默认情况下号码全为数字。先勾选“字母数字格式(自 2026 年七月起)”,即可得到前 12 个字符混合数字和字母的 CNPJ。点击“复制”即可复制。每次结果相互独立;再次运行生成器会产生不同的号码。
验证器。 在输入框中输入或粘贴 CNPJ,带不带标点均可,然后点击“验证”。纯数字和字母数字的 CNPJ 都可接受。小写字母按大写字母处理,因此 12.abc.345/01de-35 有效。工具会检查输入是否为 12 个数字或大写字母后跟 2 个数字、不是重复数字模式,并且校验位正确。
验证器不检查的内容
验证器只能确认号码是否按照校验位公式正确构成。它无法确认号码是否已在 Receita Federal 登记,也无法确认号码是否属于一家正在运营的公司。要查询真实登记状态,必须使用 Receita Federal 自有的公共查询服务或获得许可的数据提供商。一个号码在数学上可能有效,却不是真实登记的 CNPJ;此工具生成的号码按设计就属于这一类。
常见问题
CNPJ 代表什么? Cadastro Nacional da Pessoa Jurídica,葡萄牙语,意为法人全国登记册。它是巴西用于公司和其他组织的识别号码。
CNPJ 有多少位数字? 14 个字符:公司基础登记号占 8 位,分支机构编号占 4 位,校验位占 2 位。在纯数字 CNPJ 中,全部 14 位都是数字。在字母数字 CNPJ 中,前 12 位也可以是字母,但最后 2 位始终是数字。
CNPJ 可以包含字母吗? 可以,适用于自 2026 年七月起的新登记。较早的纯数字 CNPJ 保持原号码。本工具可验证两种格式,也可生成任一种。
生成的 CNPJ 可以放心使用吗? 仅限用于测试软件、填充示例数据库或学习该格式。它没有在任何机构登记,不得用于税务表格、合同或真实交易。
验证与核实 CNPJ 有什么区别? 验证检查的是数学:长度正确、没有被禁止的重复数字模式、校验位正确。核实检查的是该号码是否真的登记在某家真实公司名下,这需要在 Receita Federal 的数据库中查询。
CNPJ 与 CPF 有何不同? CPF(Cadastro de Pessoas Físicas,自然人登记册)用于识别个人,有 11 位数字。CNPJ 用于识别企业和其他法人实体,有 14 个字符。二者使用不同的校验位计算方法。
参考文献
- 巴西联邦税务局(Receita Federal do Brasil)。CNPJ Alfanumérico: perguntas e respostas。字母数字 CNPJ 常见问题(葡萄牙语) — 创建 CNPJ 时
0001表示总部;自 2026 年七月起新登记适用字母数字 CNPJ;现有号码仍然有效。 - 巴西联邦税务局和 Serpro。Cálculo dos dígitos verificadores de CNPJ alfanumérico。校验位手册(葡萄牙语) — 字符值 = ASCII 码减去 48;模 11,权重为 5、4、3、2、9、8、7、6、5、4、3、2 和 6、5、4、3、2、9、8、7、6、5、4、3、2;余数为 0 或 1 时得 0,否则为 11 减去余数;演算示例 12.ABC.345/01DE-35。