Integração do POLI em aplicativos móveis do Casino
1) Contexto e restrições
Funcionalidade POLI: apenas depósitos; a conclusão é através de outros métodos (banco-transferência/cartão/carteira).
Jurisdição:
- Austrália: operações POLI encerradas (setembro de 2023); cassinos/slots online para residentes AU são proibidos (IGA 2001).
- Nova Zelândia: POLi está disponível em locais licenciados; a integração móvel é relevante.
- Conclusão: abaixo é um padrão técnico para os mercados onde o uso é permitido (NZ e outras jurisdições legais).
2) Opções de conexão arquitetônicas
A. Redirect/Hosted Payment Page (HPP) - padrão básico
O cliente caixa cria uma sessão de pagamento para o banco (navegador/banco-aplicativo) um reembolso por 'return _ url' confirmação via webhook/polling.
Benefícios: requisitos PCI mínimos, modelo sustentável, menos riscos.
Contras: depende do processamento correto do app-switch e do deplink de retorno.
B. Server-to-Server + redirect (híbrido)
O servidor cria um pagamento com o provedor POLI, o cliente móvel apenas inicia um rediretor; O status final vem do site.
Os benefícios são reconculação clara, retraias confortáveis, idempotidade no backand.
Contras, mais lógica de servidor.
💡«API limpa» completo não é prático: autenticação bancária requer transferência para o banco.
3) Fluxo personalizado (mobile UX)
1. Caixa → seleção POLi.
2. Digite o valor → cria a sessão de pagamento (txn\_ id, state/nce, prazo de vida).
3. App-switch: abra um banco (ou navegador com banco de Internet).
4. Login/2FA no banco → comprovante de transferência.
5. Retornar por 'return _ url '/deplink para o aplicativo → tela de resultados.
6. Backend recebe um webhook e finaliza o depósito; o cliente pede status por 'txn _ id' (confirmação pull) em caso de atrasos no webhook.
4) especificidades iOS
Use ASWebAuthenticationSession ou SFSafariViewController para o passo de navegador; O WKWebView reto é menos adequado por causa do cookie/rediretos.
Universal Links для `return_url`; processamento em 'scene (_: continuue:)'.
Os horários da sessão ≥ 10 min, o modo de fundo não é obrigatório, mas o estado da caixa é obrigatório.
Se o banco abrir como um aplicativo separado, forneça um cenário de back-to-app amigável e reaproveitamento.
5) Especificidades Android
Preferencialmente Custom Tabs para fluxo Web; para aplicativos de banco - intent filters e App Links testado para 'return _ url'.
Processamento de resultados através do Ativity deplink; novo pedido de status para 'onResume ()'.
Não guarde o estado de pagamento em 'Activity'; Use o SpaceModel/Repositório em alterações de configuração.
Folback para navegador do sistema quando banco/aplicativo não estiver disponível.
6) Segurança de integração
TLS em todo o lado, proibição de protocolos desprotegidos. iOS ATS/Android Network Security Config - incluídos.
Proteção CSRF/Replay: «state »/« nonce» descartável, acerto no retorno.
Idempotidade: idempotency-key para criação de pagamento; reaproveitamento de webhooks é seguro.
Webhooks: assinatura, IP de saída fixa (se disponível), retais com pausa exponencial, dedução por event\_ id.
Logi: Não faça logs bancários/OTR; camuflem o PII; guarde «txn _ id», tempo de redireção/retorno, códigos de estado.
Os sinais Root/Jailbreak são um aviso suave e uma unidade de operações de alto risco com regras de negócios.
Proteção de URL de retorno: lista branca 'return _ url' do lado do provedor e do aplicativo.
7) Processamento de estatais e resistência errada
Статусы: `processing` → `succeeded`/`failed`/`unknown`.
Se o usuário fechar o banco/navegador, exibe a tela «Continuar a pagar/Selecionar outro método».
No 'unknown': não bloqueie o jogador - mantenha a ordem em espera, volte a entrevistar o backand, espere pelo webhook.
Normalize os códigos de erro (o banco não está disponível, limite, autenticação, cancelamento, timeout).
Leve em conta a confirmação fracionada (o banco cancelou, o merchant ainda não foi atualizado) - explique na UI.
8) Recôncavo e finanças
Relatório diário: Os relatórios do provedor POLI ↔ o seu BD (por 'merchant _ ref', montante, moeda, tempo).
Fila separada para os «rusinhões»; As malas manuais estão no escritório de tulling.
Para os bónus «depósito» - ser creditado depois de «suceeded»; para 'processing '/' unknown' - colocar hold.
9) Prática de caixa ux (mobile-first)
Uma faixa visível de progresso e o tempo de «A sessão do banco vai acabar»...
Uma cópia clara nos botões «Ir para o banco», «Confirmar - voltar para o aplicativo».
Quantidades/divisas claras, validação instantânea de limites para redirect.
Salvar rascunho de depósito; reabrir a sessão ao restaurar o aplicativo.
Disponibilidade: Vose Over/TalkBack-editoras, contraste suficiente, Dinamic Type/FontScale.
10) Limites, KYC/AML, responsabilidade
Os limites são definidos pelo banco e pela operadora, não pelo POLI; mostre a faixa disponível antes do pagamento.
Os KYC/AML são independentes do método - os testes de volume/frequência são executados da mesma forma; alto risco - verificação manual.
Política de jogo responsável: os limites de depósito/pausa também estão disponíveis para POLI; adicione links rápidos para gerenciar limites na caixa.
11) Características regionais e fichiflags
AU: Desliga o POLI ao nível de fichiflags/bild; exibe o discleimer (o serviço não está disponível; cassinos online são proibidos).
NZ: permitir POLI; lista de bancos/limites a partir da configuração (remote config).
Geofensing, localização de moedas/formatos, alow-lists de servidores merchantes por país.
12) Matriz de teste e QA
Bancos: Pelo menos uma mala para cada grande banco e por tipo de 2FA (SMS, par, token).
Plataformas: iOS/Android, versões maiores atuais, tópico escuro/claro, diferentes locais/idiomas.
Cenários de falhas: cancelamento bancário, sessão decrescente, quebra de rede, encerramento de webview, deplink incorreto, repetição de webhook.
Relógios de pico, atrasos de webhooks, retais em massa.
13) Monitoramento e operação
Métricas: conversão de caixa, CTR "Ir para o banco", média "time-to-funds', participação" unknown ", frequência de retais do webhook, falha do banco por razões.
Alerts: Tempo de webhooks, sobe 'failed' por lata, altura de 'unknown'> limiar.
O ranbook do incidente é mudar a prioridade dos métodos, informar os utilizadores, força-polinga das estatais, pós-mortem.
14) O que a integração não faz
Não adiciona levantamento.
Não contorna os limites do banco ou do operador.
Não substitui os procedimentos KYC/AML ou jogo responsável.
Resultado
A integração do POLI em aplicativos móveis é feita em torno de um redirect/HPP seguro, com app-switch correto, processamento confiável do deplink de retorno, confirmação através de webhooks e adequação rigorosa. A chave para a estabilidade são estatais transparentes, cenários amigáveis de recuperação e reconculação completa. Na Austrália, o POLi não está disponível e não é aplicável a slots online; Na Nova Zelândia, o método permanece operário e dá aos usuários depósitos rápidos em configurações técnicas e legais corretas.