Plataformas de apostas esportivas no Brasil são obrigadas pela Lei 14.790/2023 a verificar a identidade de cada apostador antes de qualquer transação — e a validação de CPF via API é o mecanismo central desse processo, confirmando identidade, bloqueando menores de 18 anos e impedindo contas duplicadas em tempo real.
Introdução
A regulamentação das apostas esportivas no Brasil, estabelecida pela Lei 14.790/2023, trouxe exigências rigorosas de verificação de identidade. Plataformas de apostas (bets) precisam confirmar que cada apostador é quem diz ser, tem mais de 18 anos e não está em listas de restrição. A validação de CPF via API é a base desse processo de KYC (Know Your Customer).
O que a Lei 14.790/2023 exige
A regulamentação de apostas esportivas no Brasil determina:
-
KYC obrigatório — Verificação de identidade de todos os apostadores.
-
Restrição de idade — Apenas maiores de 18 anos podem apostar.
-
Prevenção à lavagem de dinheiro — Processos de AML integrados.
-
Uma conta por CPF — Proibição de contas duplicadas.
-
Registro de transações — Auditabilidade de todas as operações.
Como a validação de CPF atende essas exigências
1. Verificação de identidade (KYC)
curl -X GET https://api.cpfhub.io/cpf/12345678900 \
-H "x-api-key: SUA_CHAVE_DE_API" \
-H "Accept: application/json"
Resposta:
{
"success": true,
"data": {
"cpf": "12345678900",
"name": "João da Silva",
"nameUpper": "JOÃO DA SILVA",
"gender": "M",
"birthDate": "15/06/1990",
"day": 15,
"month": 6,
"year": 1990
}
}
A API retorna nome real, data de nascimento e gênero associados ao CPF, permitindo cruzar com os dados informados pelo apostador.
2. Verificação de idade
Com a data de nascimento retornada pela API, é possível calcular automaticamente se o apostador tem 18 anos ou mais.
from datetime import datetime
def verificar_idade_minima(ano: int, mes: int, dia: int, idade_minima: int = 18) -> bool:
nascimento = datetime(ano, mes, dia)
hoje = datetime.now()
idade = hoje.year - nascimento.year
if (hoje.month, hoje.day) < (nascimento.month, nascimento.day):
idade -= 1
return idade >= idade_minima
3. Prevenção de contas duplicadas
Cada CPF deve ter apenas uma conta na plataforma. Ao consultar o CPF no cadastro, verifique se já existe uma conta associada.
4. Conformidade AML
Registre cada validação com timestamp, resultado e base legal para atender exigências de prevenção à lavagem de dinheiro.
Implementação completa para plataformas de apostas
import requests
from datetime import datetime
import hashlib
import json
CPFHUB_API_KEY = 'SUA_CHAVE_DE_API'
def cadastrar_apostador(cpf: str, nome: str, nascimento: str) -> dict:
# 1. Verificar se CPF ja esta cadastrado
cpf_hash = hashlib.sha256(cpf.encode()).hexdigest()
# Consultar banco de dados por cpf_hash (implementar conforme seu banco)
# 2. Consultar API para validar identidade
url = f'https://api.cpfhub.io/cpf/{cpf}'
headers = {
'x-api-key': CPFHUB_API_KEY,
'Accept': 'application/json'
}
response = requests.get(url, headers=headers, timeout=10)
resultado = response.json()
if not resultado.get('success'):
return {'status': 'REJEITADO', 'motivo': 'CPF nao encontrado'}
dados = resultado['data']
# 3. Verificar nome
nome_confere = nome.upper().strip() in dados['nameUpper']
if not nome_confere:
return {'status': 'REJEITADO', 'motivo': 'Nome divergente'}
# 4. Verificar idade minima (18 anos)
idade_ok = verificar_idade_minima(dados['year'], dados['month'], dados['day'])
if not idade_ok:
return {'status': 'REJEITADO', 'motivo': 'Menor de 18 anos'}
# 5. Registrar validacao para auditoria
registro = {
'timestamp': datetime.now().isoformat(),
'cpf_hash': cpf_hash,
'kyc_aprovado': True,
'idade_verificada': True,
'base_legal': 'Obrigacao legal - Lei 14.790/2023'
}
print(json.dumps(registro))
return {
'status': 'APROVADO',
'nome_confirmado': dados['name'],
'idade_verificada': True
}
Fluxo de cadastro para apostadores
- Apostador informa CPF, nome e data de nascimento.
- Sistema valida formato do CPF localmente.
- Sistema consulta API da CPFHub.io.
- Verifica se o nome confere com o retornado pela API.
- Calcula idade e confirma que é maior de 18 anos.
- Verifica se CPF já possui conta na plataforma.
- Se tudo confere: cria conta com status verificado.
- Registra validação no banco para auditoria e AML.
Tabela de decisões
| Cenário | Decisão | Ação |
|---|---|---|
| CPF válido + nome confere + maior de 18 | Aprovado | Criar conta |
| CPF válido + nome divergente | Rejeitado | Solicitar documentos |
| CPF válido + menor de 18 | Rejeitado | Bloquear cadastro |
| CPF não encontrado | Rejeitado | Bloquear + alertar |
| CPF já cadastrado | Rejeitado | Informar conta existente |
Requisitos de auditoria para apostas
A Lei 14.790/2023 e as portarias da SPA (Secretaria de Prêmios e Apostas) exigem:
-
Registro de KYC — Evidência de verificação de identidade.
-
Verificação de idade — Prova de que o apostador é maior de 18.
-
Transações rastreáveis — Histórico de depósitos, apostas e saques.
-
Retenção — Registros mantidos por no mínimo 5 anos.
-
Relatórios ao COAF — Comunicação de operações suspeitas.
Por que a CPFHub.io é ideal para plataformas de apostas
-
Resposta em ~150 ms — Cadastro sem fricção para o apostador.
-
99,9% de uptime — Disponibilidade para operação 24/7.
-
100% conforme à LGPD — Base legal documentada.
-
Data de nascimento na resposta — Verificação de idade automática.
-
Planos escaláveis — Do gratuito (50/mês) ao corporativo com SLA dedicado.
Perguntas frequentes
A Lei 14.790/2023 obriga plataformas de apostas a validar CPF?
Sim. A regulamentação das bets no Brasil exige KYC completo antes de qualquer depósito ou aposta. A validação de CPF via API confirma identidade, bloqueia menores de 18 anos e impede a criação de contas duplicadas — todos requisitos expressos na lei e nas portarias da SPA.
Como a API retorna a data de nascimento para verificação de idade?
A resposta inclui os campos day, month e year como inteiros, além do campo birthDate formatado. Com esses dados, um cálculo simples determina se o apostador tem 18 anos ou mais no momento do cadastro, sem necessidade de processar texto ou interpretar formatos de data.
O que acontece se o apostador informar um CPF de outra pessoa?
O sistema cruza o nome informado pelo apostador com o nome retornado pela API. Se houver divergência, o cadastro é rejeitado antes de qualquer criação de conta. Isso impede que CPFs de terceiros sejam usados para burlar restrições de idade ou listas de bloqueio.
A API bloqueia o acesso quando o plano gratuito acaba?
A cota mensal e o limite por minuto não se confundem. No plano Grátis, zerar os 50 créditos pausa as consultas com HTTP 403 ("Limite de créditos excedido"); nos planos pagos, o excedente eventual é faturado depois, no preço da página de preços. Acima do limite por minuto a API responde HTTP 429 e informa o Retry-After. Em crescimento, atingir a cota do Grátis pausa as validações até a troca de plano ou a renovação mensal.
Conclusão
Plataformas de apostas esportivas no Brasil precisam de KYC rigoroso para operar dentro da lei. A validação de CPF via API é o primeiro passo para verificar identidade, confirmar idade e prevenir fraudes. A CPFHub.io entrega esse processo em ~150 ms, com dados confiáveis e integração simples em qualquer linguagem.
Cadastre-se em cpfhub.io — 50 consultas mensais gratuitas, sem cartão de crédito.
CPFHub.io
Pronto para integrar a API?
50 créditos gratuitos para testar agora. Sem cartão de crédito. Acesso imediato à documentação.




