Validador de RFC do México
Valida o RFC (Registro Federal de Contribuyentes) do México — pessoa física (13 caracteres) ou pessoa jurídica (12 caracteres). Verifica formato e dígito verificador.
RFC (Registro Federal de Contribuyentes): o identificador fiscal do Mexico
O RFC (Registro Federal de Contribuyentes) e o identificador fiscal único emitido no Mexico pelo SAT (Servicio de Administracion Tributaria). Toda pessoa física ou jurídica sujeita a ISR (Impuesto Sobre la Renta), IVA (Impuesto al Valor Agregado) ou qualquer regime SAT precisa de um. O RFC também aparece em todo CFDI (Comprobante Fiscal Digital por Internet), a nota fiscal eletrônica obrigatória desde 2014 e hoje na versão 4.0.
Para empresas brasileiras com operação no Mexico — Mercado Livre, Stone, Magazine Luiza, Globant, Locaweb e diversas fintechs — o RFC equivale a CPF + CNPJ em um único código alfanumérico derivado deterministicamente do nome e da data. Cerca de 90 milhões de RFCs estão ativos no Mexico, cobrindo praticamente todo adulto e toda empresa registrada.
Diferente do CPF (Brasil) ou do RUT (Chile), o RFC e parcialmente semantico: os 10 primeiros caracteres (PF) ou 9 (PM) são derivados de atributos públicos — nome e data — enquanto os 3 finais formam a homoclave, calculada pelo SAT para desambiguar homonimos.
Formato: 13 caracteres para pessoa física, 12 para jurídica
Existem duas variantes de RFC:
- Persona Física (PF): 13 caracteres — 4 letras do nome + 6 dígitos AAMMDD da data de nascimento + 3 caracteres da homoclave. Exemplo:
VECJ880326XXXpara Juan Velazquez Cordova nascido em 1988-03-26. - Persona Moral (PM): 12 caracteres — 3 letras do nome da empresa + 6 dígitos AAMMDD da data de constituição + 3 caracteres da homoclave. Exemplo:
ABC120101XYZ.
O bloco de letras segue regras estritas: para PF a 1.deg letra e a inicial do apellido paterno, a 2.deg e a primeira vogal interna do mesmo apellido, a 3.deg e a inicial do apellido materno e a 4.deg e a inicial do primer nombre. Um dicionário de "palabras obligatorias" (BUEI, CACA, COGE, etc.) e substituído por X para evitar RFCs ofensivos.
A homoclave e o DV do SAT
A homoclave de 3 caracteres se divide em duas partes:
- Caracteres 11-12 (PF) ou 10-11 (PM): hash em base-34 do nome oficial completo, segundo tabela publicada pelo SAT.
- Caractere 13 (PF) ou 12 (PM): dígito verificador mod 11, calculado com tabela numérica que mapeia cada caractere (0-9, A-Z e espaço) a um inteiro.
A tabela atribui: 0=0, 1=1, ..., 9=9, A=10, B=11, ..., N=23, &=24, O=25, ..., Z=37, espaço=37, mais um valor terminal especial. Os 12 primeiros caracteres são multiplicados por pesos decrescentes de 13 a 2, somados e reduzidos mod 11. Se resto == 10, o DV e a letra A; caso contrário, e o dígito decimal.
// Pseudocodigo do DV mod 11 do SAT
const VAL = { '0':0, /* ... */, 'A':10, 'B':11, /* ... */, '&':24, 'O':25, /* ... */, 'Z':37, ' ':37 };
function rfcCheckDigit(first12) {
let s = 0;
for (let i = 0; i < 12; i++) s += VAL[first12[i]] * (13 - i);
const r = s % 11;
const dv = 11 - r;
if (dv === 11) return '0';
if (dv === 10) return 'A';
return String(dv);
}
Como a homoclave depende do nome oficial em certidao (com acentos, múltiplos prenomes e ordem), reproduzi-la de forma determinística a partir de dados de terceiros e impossível — so o SAT pode emitir o RFC canônico. Validadores como este conferem estrutura e DV, mas não provam que a homoclave bate com o titular.
RFC, CURP e e.firma: três identificadores distintos
Fonte constante de confusão em onboarding:
- RFC — identificador fiscal do SAT. 12 ou 13 chars. Usado em fatura, ISR, IVA e folha.
- CURP — identificador civil do RENAPO. 18 chars, derivado de nome + data + sexo + estado de nascimento. Usado em matricula escolar, registro civil e credencial INE.
- e.firma (FIEL) — certificado de assinatura digital do SAT. Vinculado a RFC + chave privada + arquivo .cer. Obrigatório para assinar CFDIs e declaracoes SAT.
O CURP e o RFC de uma mesma pessoa física compartilham os 10 primeiros caracteres (4 letras do nome + 6 dígitos da data). O resto difere: o CURP acrescenta sexo, estado e 2 caracteres de desambiguacao; o RFC acrescenta a homoclave de 3 chars.
Onde o RFC e obrigatório no Mexico
- Emitir ou receber qualquer CFDI 4.0 (Comprobante Fiscal Digital por Internet).
- Declarar ISR, IVA e IEPS.
- Cadastrar empregados no IMSS e Infonavit.
- Abrir conta bancaria ou se cadastrar no "Mi Cuenta" do SAT.
- Importar ou exportar via Aduanas SAT.
- Vender no Mercado Livre, Amazon Mexico, Rappi ou Didi.
- Adquirir imóveis, veículos ou registrar marcas no IMPI.
- Receber rescisao, bolsa ou auxilio governamental.
Bibliotecas de validação e dicas de integracao
Libs open-source maduras incluem rfc-validator, rfc-facil e mexican-rfc no npm, além de stdnum.mx.rfc em Python via python-stdnum. O SAT disponibiliza o portal de Constancia de Situacion Fiscal que retorna o status oficial do RFC com credenciais do titular; não existe API anonima publica. Desenvolvedores brasileiros que integram CFDIs costumam contratar PACs (Proveedores Autorizados de Certificacion) como Solucion Factible, Edicom ou Diverza, que cuidam da assinatura via e.firma e do envio ao SAT.
Valide primeiro o padrão estrutural (regex) e so depois o DV. Sempre normalize para maiúsculas — o SAT considera vecj880326 e VECJ880326 idênticos, mas a maior parte dos regex não.
FAQ
Por que existem dois tamanhos de RFC?
RFCs de Persona Física tem 13 caracteres porque usam 4 letras do nome (primer nombre + apellido paterno + apellido materno). RFCs de Persona Moral tem 12 caracteres porque empresas tem um único nome, do qual se extraem apenas 3 letras.
O que e exatamente a homoclave?
E um sufixo de 3 caracteres que o SAT atribui para desambiguar dois titulares nascidos na mesma data e com as mesmas letras de nome. Os dois primeiros caracteres são um hash do nome completo oficial; o terceiro e um DV mod 11. Apenas o SAT conhece a tabela de hash canônica.
Estrangeiro consegue tirar RFC?
Sim, com residencia temporaria ou permanente, CURP e domicilio no Mexico. Estrangeiros sem residencia podem usar o RFC genérico XEXX010101000 (PF) ou XAXX010101000 (PM), atribuído pelo SAT para emitir CFDIs a contrapartes estrangeiras não identificadas.
Esta ferramenta consulta o SAT?
Não. A verificação estrutural e o DV rodam localmente no navegador. Para confirmar que o RFC esta ativo e bate com o titular, use a "Constancia de Situacion Fiscal" oficial em sat.gob.mx.
O RFC basta para emitir CFDI?
Não. E preciso também certificado e.firma ativo, PAC autorizado pelo SAT e o XML no schema CFDI 4.0. O RFC apenas identifica emissor e receptor.
Ferramentas Relacionadas
Validador de Domínio
Valide nomes de domínio segundo as RFCs 1034/1035: tamanho máximo, caracteres permitidos, label máximo de 63 chars, IDN. Suporta subdomínios. Tudo no navegador.
Validador de NIF de Portugal
Valida o NIF (Número de Identificação Fiscal) de Portugal — algoritmo de dígito verificador mod 11 e prefixos válidos (1, 2, 3, 5, 6, 8, 9).
Validador de Inscrição Estadual
Valide Inscrições Estaduais de SP, RJ, MG, RS, PR e BA. Verificação no navegador, sem enviar dados para servidores.
Validador de Placa de Veículo
Valide placas de veículo brasileiras nos padrões antigo (ABC-1234) e Mercosul (ABC1D23). Detecta automaticamente qual padrão. Tudo no navegador.
Validador de Google Tag Manager ID
Valida formato do GTM ID: GTM-XXXXXXX (7 caracteres alfanuméricos após GTM-). Útil em auditorias de implementação.
Validador de Meta Pixel ID
Valida formato do Meta Pixel ID (Facebook/Instagram): 15-16 dígitos numéricos. Verifica integridade e dígito de verificação por checksum simples.