Guia de integração · 2026

Segurança de API de cassino: assinaturas, allowlists e idempotência explicadas

Uma API de cassino move dinheiro a cada giro. Aqui, segurança tem menos a ver com firewalls e mais com três perguntas: esta requisição é genuína, ela é inofensiva se chegar duas vezes e cada alteração de saldo pode ser rastreada depois? São estes os controles a combinar com o seu provedor antes da primeira aposta real.

A versão resumida

  • Assine toda requisição nos dois sentidos e rejeite tudo o que falhar na verificação.
  • Use allowlist de IPs de servidor dos dois lados; endpoints de carteira nunca ficam abertos à internet.
  • Torne toda chamada de carteira idempotente pelo id da transação.
  • Mantenha os tokens de sessão de curta duração e vinculados a um único jogador e a um único jogo.
  • Registre em log cada requisição e resposta; você vai precisar deles em uma disputa.

O que uma requisição assinada comprova

Uma assinatura é um hash do corpo da requisição e de um timestamp, feito com um segredo que só você e o provedor possuem. O lado receptor o recalcula; se os dois valores diferem, a requisição foi forjada ou alterada e é rejeitada. O timestamp também importa: aceite requisições apenas dentro de uma janela curta, e uma requisição capturada não poderá ser repetida uma hora depois.

Na IGP, toda chamada pela API de cassino leva um hash para que o servidor possa provar que veio de você. Peça a mesma proteção nos callbacks que chegam à sua carteira e teste os dois sentidos, não só o que você envia.

Allowlist de IPs

O endpoint da sua carteira é onde o dinheiro se move, então deve responder apenas aos servidores do provedor. Combine IPs de saída fixos dos dois lados, mantenha listas separadas para staging e produção e trate qualquer alteração na lista como uma solicitação de mudança, não como um ajuste rápido.

Idempotência: o controle que protege os saldos

Redes sofrem timeout. Quando um provedor não recebe a sua resposta a tempo, ele envia o mesmo débito ou crédito de novo. Se a sua carteira trata a nova tentativa como uma transação nova, o jogador paga duas vezes ou é pago duas vezes.

A correção é simples e inegociável: armazene todo id de transação e, quando um chegar de novo, devolva a resposta original sem mover o saldo. Rollbacks devem referenciar a transação que revertem. Nosso checklist de integração da API de cassino traz os testes para os três casos.

Tokens de sessão e abertura de jogo

Uma sessão de jogo começa com um token que a sua plataforma emite na abertura. Vincule-o a um jogador, um jogo e uma moeda, dê a ele vida curta e verifique-o na primeira chamada de carteira. Não coloque dados pessoais nas URLs de abertura; um id de jogador e um token bastam.

Controle O que impede Quem é responsável
Assinatura da requisição Chamadas forjadas ou alteradas Operador e provedor
Janela de timestamp Requisições repetidas Operador e provedor
Allowlist de IPs Chamadas de servidores desconhecidos Operador e provedor
Ids de transação idempotentes Débitos e créditos duplicados em novas tentativas Carteira do operador
Tokens de sessão de vida curta Sessões de jogo sequestradas ou reutilizadas Plataforma do operador
TLS em toda chamada Interceptação em trânsito Operador e provedor
Logs de auditoria Disputas que você não consegue provar para nenhum dos lados Operador e provedor

Antes de entrar em operação

  • Envie uma requisição com assinatura errada e timestamp expirado; as duas devem ser rejeitadas.
  • Chame a carteira de um IP que não está na lista; deve ser recusada.
  • Envie o mesmo débito duas vezes e o mesmo crédito duas vezes; o saldo deve se mover uma vez em cada caso.
  • Abra um jogo com um token expirado; ele não deve abrir uma sessão com dinheiro real.
  • Escolha uma rodada aleatória de ontem e rastreie-a de ponta a ponta nos seus logs.

Perguntas frequentes

Não. O TLS protege os dados em trânsito, mas não prova quem enviou uma requisição nem impede que uma requisição válida seja enviada duas vezes. Você também precisa de requisições assinadas, janela de timestamp, allowlist de IPs e chamadas de carteira idempotentes.

Se a sua carteira é idempotente pelo id da transação, nada: a segunda chamada devolve o resultado original e o saldo se move uma vez. Se não for, o jogador é debitado ou creditado duas vezes, um dos clássicos bugs que fazem perder dinheiro em integrações de cassino.

Apenas o que o jogo precisa para rodar: um id de jogador, um token de sessão, moeda, idioma e jurisdição. Nomes, e-mails, endereços e dados de pagamento ficam na sua plataforma.

Em um calendário combinado com o seu provedor e imediatamente após mudanças na equipe ou qualquer suspeita de vazamento. Suporte dois segredos ativos durante a rotação para que o tráfego em produção não quebre.

Uma integração assinada, mais de 150 provedores

Requisições assinadas, uma carteira e um fluxo de transações normalizado para mais de 18.000 jogos, com um sandbox para testar cada controle acima.

Veja a API de cassino →