Distribuidoras de energia elétrica usam APIs de CPF para confirmar a identidade do titular no momento da ligação nova, da transferência de titularidade e da negociação de débitos — prevenindo fraudes como cadastros falsos e transferências irregulares. A CPFHub.io fornece essa verificação via chamada GET simples, retornando nome e data de nascimento em ~900ms, com plano gratuito de 50 consultas mensais sem cartão.
Introdução
As distribuidoras de energia elétrica atendem milhões de unidades consumidoras em todo o Brasil. Cada uma dessas unidades está vinculada a um titular -- pessoa física ou jurídica -- responsável pelo pagamento das faturas e pelo cumprimento das obrigações contratuais. A correta identificação desse titular é fundamental para a operação comercial da distribuidora.
A validação de CPF via API permite que distribuidoras confirmem a identidade de novos titulares no momento da ligação ou transferência de titularidade, reduzam fraudes no fornecimento de energia e mantenham cadastros atualizados e consistentes. A CPFHub.io integra-se a sistemas comerciais existentes e retorna dados validados em tempo real, sem bloquear o fluxo de atendimento.
O CPF nos processos comerciais de distribuidoras
O CPF do titular é utilizado em diversos processos:
- Ligação nova -- Quando um consumidor solicita uma nova ligação de energia, a distribuidora precisa do CPF para criar o cadastro do titular.
- Transferência de titularidade -- Quando o imóvel muda de proprietário ou locatário, a transferência da conta de energia exige a identificação do novo titular.
- Negociação de débitos -- A negociação de faturas em atraso exige a confirmação da identidade do titular para evitar fraudes.
- Segunda via de conta -- A emissão de segunda via online ou presencial pode exigir a confirmação do CPF do titular.
- Geração distribuída -- Consumidores que instalam painéis solares e se tornam micro ou minigeradores precisam ter o CPF validado para o cadastro junto à distribuidora.
Fraudes comuns no setor elétrico
Gato de energia com cadastro falso
Golpistas solicitam ligações de energia usando CPFs falsos ou de terceiros, consomem energia por meses sem pagar e abandonam o imóvel, deixando a dívida para a distribuidora.
Transferência fraudulenta de titularidade
Para escapar de dívidas, consumidores inadimplentes transferem a titularidade para CPFs de terceiros (muitas vezes familiares ou pessoas desavisadas), zerando o histórico de débitos.
Cadastro fantasma para geração distribuída
Fraudes em programas de geração distribuída envolvem a criação de cadastros com CPFs inexistentes para obter créditos de energia de forma irregular.
Implementação com Python
O exemplo a seguir mostra como validar o CPF de um novo titular durante o processo de ligação nova.
import requests
from datetime import datetime
CPFHUB_API_KEY = "sua_api_key_aqui"
CPFHUB_BASE_URL = "https://api.cpfhub.io/cpf"
TIMEOUT_SECONDS = 10
def solicitar_ligacao_nova(cpf: str, nome: str,
endereco: str, classe: str) -> dict:
"""
Processa uma solicitação de ligação nova após validar o CPF do titular.
classe: residencial, comercial, industrial, rural
"""
cpf_limpo = cpf.replace(".", "").replace("-", "")
if len(cpf_limpo) != 11 or not cpf_limpo.isdigit():
return {"aprovado": False, "motivo": "CPF com formato inválido"}
headers = {
"x-api-key": CPFHUB_API_KEY,
"Accept": "application/json"
}
try:
response = requests.get(
f"{CPFHUB_BASE_URL}/{cpf_limpo}",
headers=headers,
timeout=TIMEOUT_SECONDS
)
response.raise_for_status()
resultado = response.json()
except requests.exceptions.Timeout:
return {"aprovado": False, "motivo": "Timeout na validação"}
except requests.exceptions.RequestException as e:
return {"aprovado": False, "motivo": f"Erro: {str(e)}"}
if not resultado.get("success"):
return {"aprovado": False, "motivo": "CPF não encontrado na base"}
dados = resultado["data"]
nome_api = dados.get("nameUpper", "").strip()
nome_titular = nome.strip().upper()
if nome_api != nome_titular:
return {
"aprovado": False,
"motivo": "Nome divergente do CPF informado",
"nome_base": nome_api,
"nome_informado": nome_titular
}
solicitacao = {
"protocolo": f"LN-{datetime.now().strftime('%Y%m%d%H%M%S')}",
"titular": {
"cpf": dados["cpf"],
"nome": dados["name"],
"genero": dados["gender"],
"data_nascimento": dados["birthDate"]
},
"endereco": endereco,
"classe": classe,
"data_solicitacao": datetime.now().isoformat(),
"status": "em_analise"
}
return {"aprovado": True, "solicitacao": solicitacao}
# Exemplo de uso
resultado = solicitar_ligacao_nova(
cpf="123.456.789-09",
nome="Fernanda Costa Lima",
endereco="Rua das Flores, 123, Bairro Centro, Cidade/UF",
classe="residencial"
)
if resultado["aprovado"]:
s = resultado["solicitacao"]
print(f"Protocolo: {s['protocolo']}")
print(f"Titular: {s['titular']['nome']}")
print(f"Classe: {s['classe']}")
else:
print(f"Solicitação negada: {resultado['motivo']}")
Consulta via cURL
curl -X GET "https://api.cpfhub.io/cpf/12345678909" \
-H "x-api-key: sua_api_key_aqui" \
-H "Accept: application/json" \
--max-time 10
Resposta:
{
"success": true,
"data": {
"cpf": "123.456.789-09",
"name": "Fernanda Costa Lima",
"nameUpper": "FERNANDA COSTA LIMA",
"gender": "F",
"birthDate": "20/09/1988",
"day": "20",
"month": "09",
"year": "1988"
}
}
Transferência de titularidade com validação
A transferência de titularidade é um processo frequente em distribuidoras. A validação de CPF garante que o novo titular é uma pessoa real.
const axios = require("axios");
const CPFHUB_API_KEY = "sua_api_key_aqui";
const CPFHUB_BASE_URL = "https://api.cpfhub.io/cpf";
async function transferirTitularidade(cpfNovoTitular, nomeNovoTitular,
unidadeConsumidora) {
const cpfLimpo = cpfNovoTitular.replace(/\D/g, "");
try {
const response = await axios.get(`${CPFHUB_BASE_URL}/${cpfLimpo}`, {
headers: {
"x-api-key": CPFHUB_API_KEY,
Accept: "application/json"
},
timeout: 10000
});
const resultado = response.data;
if (!resultado.success) {
return {
transferido: false,
motivo: "CPF do novo titular não encontrado"
};
}
const dados = resultado.data;
const nomeApi = dados.nameUpper;
const nomeComparacao = nomeNovoTitular.toUpperCase().trim();
if (nomeApi !== nomeComparacao) {
return {
transferido: false,
motivo: "Nome do novo titular diverge do CPF"
};
}
return {
transferido: true,
unidadeConsumidora: unidadeConsumidora,
novoTitular: {
cpf: dados.cpf,
nome: dados.name,
dataNascimento: dados.birthDate
},
dataTransferencia: new Date().toISOString()
};
} catch (error) {
if (error.code === "ECONNABORTED") {
return { transferido: false, motivo: "Timeout na validação" };
}
return { transferido: false, motivo: error.message };
}
}
// Exemplo de uso
(async () => {
const resultado = await transferirTitularidade(
"123.456.789-09",
"Fernanda Costa Lima",
"UC-0012345678"
);
if (resultado.transferido) {
console.log(`Titularidade transferida para: ${resultado.novoTitular.nome}`);
console.log(`UC: ${resultado.unidadeConsumidora}`);
} else {
console.log(`Transferência negada: ${resultado.motivo}`);
}
})();
Regulamentação do setor elétrico
Distribuidoras de energia são reguladas pela ANEEL (Agência Nacional de Energia Elétrica), que estabelece normas para a relação com os consumidores. A Resolução Normativa ANEEL 1.000/2021 define os procedimentos para ligação, desligamento e transferência de titularidade, e exige a correta identificação do titular da unidade consumidora.
A validação de CPF via API contribui para o cumprimento dessas normas ao garantir que os dados cadastrais dos consumidores são consistentes e verificáveis.
Boas práticas para distribuidoras
- Validação obrigatória em ligações novas -- Nunca crie uma unidade consumidora sem validar o CPF do titular.
- Verificação em transferências -- Confirme a identidade do novo titular antes de efetivar a transferência.
- Atualização cadastral periódica -- Realize campanhas de atualização cadastral validando CPFs da base existente.
- Integração com sistemas comerciais -- Conecte a validação de CPF aos sistemas SAP, TOTVS ou outros ERPs utilizados pela distribuidora.
- Canal de atendimento presencial -- Em agências de atendimento, integre a validação ao fluxo do atendente para que a consulta seja feita em tempo real.
Perguntas frequentes
O que é necessário para implementar validação de CPF neste contexto?
A validação de CPF exige uma chamada à API com o número do documento e a chave de autenticação. A CPFHub.io retorna o status do CPF, nome do titular e data de nascimento em menos de 200ms, permitindo a verificação em tempo real durante o cadastro ou transação.
A API CPFHub.io funciona para todos os volumes de consulta?
Sim. O plano gratuito oferece 50 consultas por mês sem cartão de crédito — ideal para testes e projetos pequenos. Para volumes maiores, o plano Pro inclui 1.000 consultas mensais por R$149. Se o limite for ultrapassado, a API não bloqueia: cobra R$0,15 por consulta adicional.
Como garantir conformidade com a LGPD ao usar uma API de CPF?
Use o CPF apenas para a finalidade declarada ao titular, armazene apenas o necessário (não guarde o CPF cru se um token bastar), implemente controle de acesso aos logs de consulta e documente a base legal para o tratamento. A ANPD orienta que dados de identificação devem ser tratados com o princípio da necessidade.
Quanto tempo leva para integrar a API CPFHub.io?
A integração básica leva menos de 30 minutos: crie uma conta em cpfhub.io, gere a API key no painel e faça uma chamada GET para https://api.cpfhub.io/cpf/{CPF} com o header x-api-key. A documentação inclui exemplos em Python, Node.js, PHP, Java e outras linguagens.
Conclusão
A validação de CPF via API é uma ferramenta essencial para distribuidoras de energia elétrica que buscam reduzir fraudes, manter cadastros consistentes e cumprir as normas da ANEEL.
Cadastre-se em cpfhub.io — 50 consultas mensais gratuitas, sem cartão de crédito — e comece hoje mesmo.
CPFHub.io
Pronto para integrar a API?
50 consultas gratuitas para testar agora. Sem cartão de crédito. Acesso imediato à documentação.
Sobre a redação
Redação CPFHub.io
Time editorial especializado em APIs de CPF, identidade digital e compliance no mercado brasileiro. Produzimos guias técnicos, análises regulatórias e tutoriais sobre LGPD e KYC para desenvolvedores e líderes de produto.



