
A partir de 06/07/2026 a Receita Federal passa a emitir o CNPJ alfanumérico, e isso afeta diretamente quem vende online. Se a sua loja coleta CNPJ no checkout, qualquer máscara ou validação que só aceite números vai recusar cadastros legítimos. Neste post você vai entender o que muda, por que sua loja precisa se adequar e como resolver isso em minutos com um plugin CNPJ alfanumérico WooCommerce gratuito, que aplica máscara e validação do novo formato sem depender de nenhum serviço externo.
A mudança está prevista na Instrução Normativa RFB nº 2.229, de 15/10/2024. O motivo é simples: o CNPJ puramente numérico está esgotando suas combinações — já foram emitidos mais de 60 milhões de CNPJs. Para garantir novos registros pelas próximas décadas, a Receita introduziu letras nas posições que antes eram só dígitos.
Um ponto que costuma gerar pânico desnecessário: os CNPJs numéricos atuais NÃO mudam e continuam totalmente válidos. O novo formato alfanumérico vale apenas para novos cadastros e estabelecimentos emitidos a partir de 06/07/2026. Ou seja, a partir dessa data sua loja vai conviver com os dois formatos ao mesmo tempo — e precisa aceitar ambos.
⬇️ Baixar o plugin WooCommerce (.zip grátis)
O CNPJ continua com 14 posições e mantém a máscara que todo mundo já conhece: XX.XXX.XXX/XXXX-XX. A diferença está no conteúdo de cada posição:
Um exemplo válido oficial é 12.ABC.345/01DE-35 (sem máscara: 12ABC34501DE35), em que 35 são os dígitos verificadores. Repare que a estrutura visual é idêntica à de hoje; o que muda é que as 12 primeiras posições agora podem conter letras.
A maioria dos checkouts brasileiros usa máscaras de CNPJ baseadas apenas em dígitos. Quando um cliente com CNPJ alfanumérico tentar comprar, podem acontecer três problemas: a máscara apaga ou bloqueia as letras digitadas, a validação no navegador marca o campo como inválido, ou — pior ainda — o pedido é gravado com um CNPJ incorreto. Qualquer um desses casos significa carrinho abandonado ou dado sujo no seu sistema.
Validar CNPJ alfanumérico não é só “deixar passar letras”. Os dígitos verificadores também são calculados de forma diferente, considerando o valor das letras. Uma validação ingênua que ignora isso vai aceitar CNPJs falsos. Por isso vale a pena usar uma solução que implementa o cálculo oficial — em vez de remendar uma máscara antiga.
Para resolver isso, criei o plugin “CNPJ Alfanumérico — Máscara e Validação para WooCommerce” (versão 1.0.0, licença GPL). Ele faz exatamente o que uma loja precisa, sem firulas:
Sendo honesto sobre o escopo: o foco da versão 1.0.0 é o checkout clássico (shortcode). O suporte ao checkout em blocos está no roteiro e será adicionado em versões futuras. Se você já usa o checkout em blocos, vale acompanhar as atualizações antes de adotar.
A instalação é o fluxo padrão de plugins do WordPress:
Pronto: o checkout passa a ter máscara e validação do CNPJ alfanumérico imediatamente, sem configuração obrigatória.
O plugin expõe dois filtros para você adaptá-lo à realidade da sua loja sem editar o código-fonte. O primeiro torna o campo de CNPJ obrigatório no checkout; o segundo permite reutilizar a chave de campo de outro plugin (por exemplo, integrar com o Brazilian Market on WooCommerce, que usa billing_cnpj):
// Tornar o campo CNPJ obrigatório no checkout
add_filter( 'cnpj_alfanumerico_required', '__return_true' );
// Usar a mesma chave de campo de outro plugin (ex.: Brazilian Market on WooCommerce)
add_filter( 'cnpj_alfanumerico_field_key', function () {
return 'billing_cnpj';
} ); Esses filtros (cnpj_alfanumerico_required e cnpj_alfanumerico_field_key) cobrem os dois ajustes mais comuns: exigir o documento e evitar campos duplicados quando já existe um plugin brasileiro instalado.
Se você desenvolve temas, integrações ou automações, pode validar um CNPJ diretamente no PHP usando a classe pública do plugin. A mesma chamada aceita tanto o formato com máscara quanto sem:
if ( CNPJ_Alfanumerico_Validator::is_valid( '12.ABC.345/01DE-35' ) ) {
// CNPJ válido — já aceita o novo formato alfanumérico
} Isso é útil, por exemplo, para validar CNPJs importados de planilhas, integrar com ERPs ou bloquear pedidos via hooks personalizados antes de gravá-los.
O cálculo dos dígitos verificadores segue o módulo 11, com uma adaptação para tratar letras. Cada caractere passa a valer o seu código ASCII menos 48. Na prática, isso mantém os dígitos coerentes (0..9 continuam valendo 0..9) e atribui valores às letras: A=17, B=18, C=19 … até Z=42.
Com esse valor de cada caractere, aplicam-se pesos diferentes para cada dígito verificador, soma-se tudo, calcula-se o resto da divisão por 11 e deriva-se o dígito. O resumo do algoritmo é este:
// valor do caractere = código ASCII - 48 (A=17, B=18, ... Z=42)
// DV1: pesos 5 4 3 2 9 8 7 6 5 4 3 2
// DV2: pesos 6 5 4 3 2 9 8 7 6 5 4 3 2
// resto = soma % 11 ; dígito = (resto O primeiro dígito verificador (DV1) é calculado sobre os 12 primeiros caracteres. O segundo (DV2) é calculado sobre esses 12 caracteres mais o DV1 já encontrado. Aplicando isso ao exemplo oficial 12ABC34501DE, chega-se exatamente a 35 — confirmando que 12.ABC.345/01DE-35 é válido. Para quem quer comparar com referências oficiais, a SERPRO/RFB disponibilizou códigos de exemplo em Java, Python e TypeScript.
Se você usa Magento 2, veja também o módulo equivalente para CNPJ alfanumérico no Magento 2, que aplica a mesma lógica de máscara e validação no checkout.
Não. Os CNPJs numéricos já emitidos continuam válidos indefinidamente. O formato alfanumérico passa a ser usado apenas em novos cadastros a partir de 06/07/2026, e o plugin valida os dois formatos com a mesma regra.
A versão 1.0.0 foca no checkout clássico (shortcode). O suporte ao checkout em blocos está no roteiro e será adicionado em uma atualização futura.
Não. Toda a validação e o cálculo dos dígitos verificadores acontecem no seu próprio servidor. Nenhum dado de cliente é enviado para serviços de terceiros.
Sim. Basta usar o filtro cnpj_alfanumerico_required com __return_true, conforme o exemplo da seção de personalização.
Não precisa. Use o filtro cnpj_alfanumerico_field_key para apontar o plugin para a chave billing_cnpj usada por outros plugins brasileiros, reaproveitando o mesmo campo.
O CNPJ alfanumérico WooCommerce deixa de ser uma preocupação futura e vira realidade em 06/07/2026. Adequar a loja agora evita carrinhos abandonados e dados inválidos quando os primeiros clientes com o novo formato aparecerem. Com máscara correta, validação em tempo real, validação no servidor e compatibilidade com HPOS e com o formato legado, o plugin entrega o essencial sem complicar — e sem custo. Baixe, ative e teste no seu checkout hoje mesmo.
⬇️ Baixar o plugin WooCommerce (.zip grátis)
Módulo gratuito Roger_CnpjAlfanumerico que aplica máscara e validação do novo CNPJ alfanumérico no checkout e formulários do Magento 2 e…
Para remover um módulo do Magento 2, siga os passos abaixo: 1. Desabilitar o módulo Primeiro, desabilite o módulo usando…
Para cancelar 100% do pedido e criar um crédito para todos os itens através da API REST do Magento 2,…
No Magento 2, a quantidade "reservada" na "Salable Quantity" é gerenciada principalmente pelos módulos MSI (Multi-Source Inventory). A "Salable Quantity"…
Como corrigir o erro ao acessar o Admin do Magento 2. Mesmo após fazer o login, permanece na tela de…
Segurança: Atualizações frequentes geralmente incluem patches de segurança para corrigir vulnerabilidades identificadas. Ao manter o Magento atualizado, você reduz significativamente…