Como usar API de CPF grátis para validar cadastro de motoristas de aplicativo

Valide gratuitamente o CPF de motoristas durante o cadastro em plataformas de transporte e entregas. Segurança no onboarding.

Redação CPFHub.io
Redação CPFHub.io
··7 min de leitura
Como usar API de CPF grátis para validar cadastro de motoristas de aplicativo

Plataformas de transporte e entrega podem usar a API gratuita da CPFHub.io para validar o CPF de motoristas diretamente no onboarding, cruzando nome e data de nascimento em tempo real. O plano gratuito oferece 50 consultas mensais sem cartão de crédito — suficiente para MVPs e testes de integração. A latência média da API é de ~900ms, compatível com fluxos de cadastro em etapas.

Plataformas de transporte por aplicativo e serviços de entrega enfrentam um desafio crítico no onboarding: garantir que o motorista ou entregador é quem diz ser. Um cadastro com CPF falso ou de terceiros coloca passageiros em risco, expõe a plataforma a responsabilidades legais e compromete a confiança no serviço.

A validação de CPF no momento do cadastro é a primeira barreira contra essas fraudes. Com a API gratuita da CPFHub.io


Por que validar motoristas de aplicativo

Segurança dos passageiros

A principal responsabilidade de uma plataforma de transporte é a segurança de quem usa o serviço. Permitir que alguém se cadastre com documentos falsos cria uma situação em que o passageiro não sabe com quem está realmente viajando.

A plataforma pode ser responsabilizada judicialmente se um incidente envolver um motorista cadastrado com dados falsos. A diligência na verificação de identidade é um fator atenuante em disputas legais. O Ministério do Trabalho e Emprego orienta que prestadores de serviço por plataforma devem ter seus dados cadastrais corretamente identificados para fins de compliance trabalhista.

Qualidade da base de motoristas

CPFs duplicados, perfis falsos e cadastros inconsistentes geram problemas operacionais: repasses incorretos, dificuldade de comunicação e dados fiscais inválidos.

Compliance fiscal

Para emitir recibos ou informar pagamentos à Receita Federal, a plataforma precisa de CPFs válidos e dados corretos dos prestadores de serviço.


Fluxo de validação no onboarding

Etapa 1 -- Cadastro inicial

O motorista preenche o formulário com CPF, nome completo, data de nascimento e demais dados.

Etapa 2 -- Validação via API

O sistema consulta o CPF automaticamente antes de aprovar o cadastro:

curl -X GET "https://api.cpfhub.io/cpf/98765432100" \
    -H "x-api-key: SUA_CHAVE_GRATUITA" \
    -H "Accept: application/json" \
    --connect-timeout 10 \
    --max-time 30

Resposta:

{
    "success": true,
    "data": {
    "cpf": "98765432100",
    "name": "Roberto Silva Mendes",
    "nameUpper": "ROBERTO SILVA MENDES",
    "gender": "M",
    "birthDate": "1995-06-14",
    "day": "14",
    "month": "06",
    "year": "1995"
    }
}

Etapa 3 -- Comparação automática

O sistema compara o nome e a data de nascimento informados com os retornados pela API.

Etapa 4 -- Decisão

  • Dados conferem: cadastro prossegue para as próximas etapas (upload de documentos, foto).
  • Dados divergem: cadastro é bloqueado para análise manual.

Implementação do validador de motoristas

import requests
import logging
from typing import Dict
from datetime import datetime

logger = logging.getLogger(__name__)

API_KEY = "SUA_CHAVE_GRATUITA"
TIMEOUT = 30

def validar_motorista(
    cpf: str,
    nome_informado: str,
    nascimento_informado: str
) -> Dict:
    """
    Valida dados do motorista contra o CPF informado.

    Args:
    cpf: CPF do motorista
    nome_informado: nome declarado no cadastro
    nascimento_informado: data de nascimento (YYYY-MM-DD)

    Returns:
    Resultado da validação com status e detalhes
    """
    cpf_limpo = cpf.replace(".", "").replace("-", "").strip()

    if len(cpf_limpo) != 11 or not cpf_limpo.isdigit():
    return {
    "status": "rejeitado",
    "motivo": "CPF com formato invalido",
    "pode_prosseguir": False
    }

    try:
    response = requests.get(
    f"https://api.cpfhub.io/cpf/{cpf_limpo}",
    headers={
    "x-api-key": API_KEY,
    "Accept": "application/json"
    },
    timeout=TIMEOUT
    )
    response.raise_for_status()
    dados = response.json()

    if not dados.get("success"):
    return {
    "status": "nao_encontrado",
    "motivo": "CPF nao localizado na base",
    "pode_prosseguir": False
    }

    nome_api = dados["data"]["nameUpper"]
    nascimento_api = dados["data"]["birthDate"]

    nome_confere = nome_informado.upper().strip() == nome_api
    nascimento_confere = nascimento_informado == nascimento_api

    # Verificar idade mínima (18 anos)
    try:
    data_nasc = datetime.strptime(nascimento_api, "%Y-%m-%d")
    idade = (datetime.now() - data_nasc).days // 365
    maior_de_idade = idade >= 18
    except ValueError:
    maior_de_idade = True # em caso de erro, não bloquear por idade

    if nome_confere and nascimento_confere and maior_de_idade:
    return {
    "status": "aprovado",
    "motivo": "Dados verificados com sucesso",
    "pode_prosseguir": True,
    "nome_verificado": dados["data"]["name"],
    "idade": idade
    }

    problemas = []
    if not nome_confere:
    problemas.append(f"Nome divergente (informado: {nome_informado})")
    if not nascimento_confere:
    problemas.append("Data de nascimento divergente")
    if not maior_de_idade:
    problemas.append(f"Menor de 18 anos (idade: {idade})")

    return {
    "status": "pendente_analise",
    "motivo": "; ".join(problemas),
    "pode_prosseguir": False
    }

    except requests.exceptions.Timeout:
    logger.error("Timeout na validacao do motorista")
    return {
    "status": "erro_temporario",
    "motivo": "Servico de validacao indisponivel",
    "pode_prosseguir": False
    }
    except requests.exceptions.RequestException as e:
    logger.error(f"Erro na validacao: {e}")
    return {
    "status": "erro_temporario",
    "motivo": "Erro na comunicacao com servico de validacao",
    "pode_prosseguir": False
    }

# Exemplo de uso no fluxo de onboarding
resultado = validar_motorista(
    cpf="987.654.321-00",
    nome_informado="Roberto Silva Mendes",
    nascimento_informado="1995-06-14"
)

if resultado["pode_prosseguir"]:
    print(f"Cadastro aprovado: {resultado['nome_verificado']}, {resultado['idade']} anos")
else:
    print(f"Cadastro bloqueado: {resultado['motivo']}")

Integração com APIs de onboarding

Para plataformas que usam um fluxo de onboarding em etapas, a validação de CPF é a primeira barreira:

class OnboardingMotorista:
    """Fluxo de onboarding com validação de CPF como primeira etapa."""

    ETAPAS = ["validacao_cpf", "upload_cnh", "foto_perfil", "aprovacao_final"]

    def __init__(self):
    self.etapa_atual = 0
    self.dados_validados = {}

    def processar_etapa(self, dados: dict) -> dict:
    etapa = self.ETAPAS[self.etapa_atual]

    if etapa == "validacao_cpf":
    resultado = validar_motorista(
    cpf=dados["cpf"],
    nome_informado=dados["nome"],
    nascimento_informado=dados["nascimento"]
    )

    if resultado["pode_prosseguir"]:
    self.dados_validados["nome"] = resultado["nome_verificado"]
    self.dados_validados["cpf"] = dados["cpf"]
    self.etapa_atual += 1
    return {"sucesso": True, "proxima_etapa": self.ETAPAS[self.etapa_atual]}
    else:
    return {"sucesso": False, "motivo": resultado["motivo"]}

    # Demais etapas...
    return {"sucesso": True, "proxima_etapa": "concluido"}

Cenários para diferentes tipos de plataforma

Transporte de passageiros

Validação obrigatória para todos os motoristas. A segurança do passageiro depende da identidade confirmada do condutor.

Entregas e logística

Entregadores que acessam endereços residenciais precisam ter identidade verificada. A validação do CPF é o primeiro passo.

Aluguel de veículos peer-to-peer

Plataformas de compartilhamento de carros precisam validar tanto o locador quanto o locatário.

Serviços domésticos

Plataformas que conectam profissionais (diaristas, eletricistas, encanadores) a clientes precisam verificar a identidade dos prestadores.


Volume e planos adequados

Tamanho da plataformaCadastros/mêsPlano recomendado
MVP / validação de conceito10-50Gratuito
Startup em crescimento50-500Pro
Plataforma estabelecida500+Corporativo

O plano Gratuito da CPFHub.io


Perguntas frequentes

Como funciona a API de CPF para validar motoristas de aplicativo?

A API recebe o CPF do motorista via requisição GET e retorna nome completo, data de nascimento e gênero vinculados ao documento. A plataforma compara esses dados com as informações que o motorista declarou no cadastro — se houver divergência, o perfil é bloqueado para revisão manual. A latência média da API é de ~900ms, compatível com fluxos de onboarding em etapas.

O plano gratuito é suficiente para começar a validar motoristas?

Sim. O plano gratuito oferece 50 consultas por mês sem necessidade de cartão de crédito — ideal para MVPs e testes de integração. Se o volume ultrapassar esse limite, a API não bloqueia: cada consulta adicional custa R$0,15. Para plataformas em crescimento, o plano Pro (R$149/mês) inclui 1.000 consultas mensais.

O que fazer quando a API retorna dados divergentes do motorista?

A recomendação é bloquear o cadastro automaticamente e encaminhar o perfil para análise humana. O sistema deve registrar a divergência — se o nome ou a data de nascimento não conferem, pode ser erro de digitação ou tentativa de fraude. O motorista pode ser contatado para corrigir os dados antes de nova tentativa de validação.

Como garantir conformidade com a LGPD ao validar CPF de motoristas?

O tratamento do CPF nesse contexto tem base legal na execução de contrato ou legítimo interesse da plataforma, conforme a LGPD. É fundamental informar o motorista sobre a coleta no momento do cadastro, armazenar apenas o necessário, e descartar dados de perfis rejeitados. A ANPD orienta que dados de identificação devem ser tratados com o princípio da necessidade e finalidade específica.


Conclusão

A validação de CPF no cadastro de motoristas de aplicativo é uma medida essencial de segurança que protege passageiros, reduz fraudes e garante compliance fiscal. A implementação é direta -- uma chamada de API que retorna o nome e a data de nascimento vinculados ao CPF em cerca de 900ms.

Para plataformas em estágio inicial, o plano Gratuito da CPFHub.io

Cadastre-se em cpfhub.io

CPFHub.io

Pronto para integrar a API?

50 consultas gratuitas para testar agora. Sem cartão de crédito. Acesso imediato à documentação.

Redação CPFHub.io

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.

WhatsAppFale conosco via WhatsApp