Integrazione di POLi nelle applicazioni mobili del casinò

1) Contesto e vincoli

Funzione POLi: solo depositi; output - attraverso altri metodi (banca-trasferimento/carta/portafoglio).

Giurisdizioni:
  • Australia: operazioni POLi interrotte (settembre 2023); casinò/slot online per residenti AU sono vietati (IGA 2001).
  • Nuova Zelanda: POLi è disponibile su siti autorizzati; l'integrazione mobile è rilevante.
  • Conclusione: di seguito è indicato uno schema tecnico per i mercati in cui l'uso è consentito (NZ e altre giurisdizioni legali).

2) Opzioni di connettività architettoniche

A. Redirect/Hosted Payment Page (HPP) - standard base

Il cliente di cassa crea una sessione di pagamento di un readyrett alla banca (browser/banca-applicazione) che restituisce la restituzione'return _ url ', conferma tramite webhook/polling.

Vantaggi: requisiti PCI minimi, modello sostenibile, meno rischi.

Contro - Dipende dall'elaborazione corretta dell'app switch e del deeplink di ritorno.

B. Server-to-Server + redirect (ibrido)

Il server crea il pagamento dal provider POLi, il client mobile esegue solo il reading; Lo stato finale viene da un webhock.

I vantaggi sono la riconcolazione nitida, i retrai comodi, l'idampotenza sul backend.

Meno: più logica server.

💡 L'API netta completa non è praticabile: l'autenticazione bancaria richiede il trasferimento in banca.

3) Flusso utente (mobile UX)

1. La cassa ha scelto POLi.

2. Immettere un importo → creare una sessione di pagamento (txn\_ id, state/nonce, durata).

3. App-switch: aprire una banca (o un browser con una banca online).

4. Login/2FA in banca per confermare il trasferimento.

5. Restituisce «return _ url »/deeplink all'applicazione la schermata del risultato.

6. Beckand ottiene un webhook e finalizza il deposito; il client richiede lo stato dì txn _ id "(conferma pull) in caso di ritardi del webhook.

4) Specifica iOS

Utilizzare un ASWebAuthenticationSession o un SFSafariViewController per la fase del browser. Il rettilineo è meno adatto a causa dei cookie/redirecti.

Universal Links для `return_url`; lavorazione in'scene (_: continua:) '.

I timeout della sessione sono di 10 minuti, la modalità di sottofondo non è obbligatoria, ma lo stato della cassa è obbligatorio.

Se la banca viene aperta come un'applicazione separata, fornire uno script back-to-app amichevole e riavvicinare lo stato al rimborso.

5) Particolare Android

Preferibilmente Custom Tabs per il flusso Web per le applicazioni di banca - intent filters e App Links collaudate per'return _ url '.

Elaborazione dei risultati attraverso l'attivazione deeplink; richiedere nuovamente lo stato a «onResume ()».

Non salvare lo stato del pagamento in Attivity; Utilizzare un repository o un repository che esegue modifiche alla configurazione.

Folback sul browser di sistema quando la banca/applicazione non è disponibile.

6) Sicurezza dell'integrazione

TLS ovunque, divieto di protocolli non protetti. iOS ATS/Android Network Security Config - abilitati.

Protezione CSRF/Replay: «state »/« nonce» usa e getta.

Idempotence: idempotency-key per la creazione del pagamento; riprogettare i webhoop è sicuro.

Web Hook: firma, IP in uscita fisso (se disponibile), retrai con pausa esponenziale, deduplicazione per event\_ id.

Login: non logifichi i login bancari/OTR; mascherare il PII; memorizzare: 'txn _ id', tempo di reading/ritorno, codici di stato.

I segnali Root/Jailbreak sono un avviso morbido e un blocco di operazioni ad alto rischio secondo le regole aziendali.

Protezione URL di ritorno: elenco bianco «return _ url» sul lato del provider e dell'applicazione.

7) Elaborazione degli stati e resistenza errata

Статусы: `processing` → `succeeded`/`failed`/`unknown`.

Se l'utente ha chiuso la banca/browser, mostrare la schermata Continua pagamento/Scegli un metodo diverso.

In caso dì unknown ", non bloccare il giocatore, tenere l'ordine in attesa, interrogare nuovamente il backend, aspettare il webhook.

Standardizzare i codici di errore (banca non disponibile, limite, autenticazione, annullamento, timeout).

Considerate le prove frazionarie (la banca ha cancellato, il merchant non è ancora stato aggiornato) - spiegatelo in UI.

8) Riconcolazione e finanza

Incrociatura giornaliera: i rapporti del provider POLi sono il tuo database (in «merchant _ ref», somma, valuta, tempo).

Coda separata per «rassincroni»; valigette manuali nel back office del tulling.

Per i bonus «deposito» - rimborsare dopo «succeeded»; per «processing »/« unknown», mettere hold.

9) La pratica UX della cassa (mobile-first)

Una visibile striscia di progresso e un timer, «La seduta della banca scadrà tra»...

«Vai in banca», «Conferma - Torna all'applicazione».

Valori/valuta chiari, convalida istantanea dei limiti fino a ridirect.

Salvataggio della bozza di deposito; riaprire la sessione durante il ripristino dell'applicazione.

Disponibilità: VoavaOver/TalkBack-label, contrasto sufficiente, Dynamic.

10) Limiti, KYC/AML, responsabilità

I limiti vengono impostati da una banca e da un operatore, non da POLi; Visualizzare l'intervallo disponibile prima dell'inizio del pagamento.

KYC/AML non dipendono dal metodo: i controlli di volume/frequenza funzionano allo stesso modo; rischi elevati - controllo manuale.

Politica di gioco responsabile: limiti di deposito/pausa disponibili anche per POLi; aggiungere collegamenti rapidi alla gestione dei limiti nella cassa.

11) Caratteristiche regionali e ficcoflagi

AU: disattiva POLi a livello di phicheflag/bild; Visualizza il display (il servizio non è disponibile; casinò online vietato).

NZ: consenti POLi; un elenco di banche/limiti da tracciare dalla configurazione (remote config).

Geofensing, localizzazione valute/formati, allow-lists server merchant per paese.

12) Test-matrice e QA

Banche: almeno una valigetta per banca di grandi dimensioni e per tipo 2FA (SMS, pass, token).

Piattaforme: iOS/Android, attuali versioni maggiori, tema scuro/chiaro, locali/lingue diverse.

Gli scenari di guasto sono: annullamento in banca, sessione interrotta, interruzione di rete, chiusura di webview, deeplink errato, ripetizione di webhook.

Ore di carico: orologi di punta, ritardi di webhoop, retrai di massa.

13) Monitoraggio e operazione

Metriche: conversione della cassa, CTR "Vai in banca", media "time-to-funds', quota" unknown ", frequenza dei retrai webhook, rifiuto della banca per motivi.

Il timeout dei webhook, l'aumento dì failed «su un barattolo, l'aumento dì unknown» su una soglia.

Runbook dell'incidente: cambiare la priorità dei metodi, informare gli utenti, forza-polling dello stato, post-mortem.

14) Cosa non fa l'integrazione

Non aggiunge alcun prelievo.

Non si aggirano i limiti della banca o dell'operatore.

Non sostituisce le procedure KYC/AML e il gioco responsabile.

Totale

L'integrazione di POLi nelle applicazioni mobili si basa su una redict/HPP sicura, con una app-switch corretta, un trattamento affidabile del deeplink di ritorno, la conferma tramite webhoop e la massima idoneità. La chiave di stabilità sono gli stati trasparenti, gli scenari di ripristino amichevoli e la riconcolazione completa. In Australia POLi non è disponibile e non è applicabile alle slot online; In Nuova Zelanda, il metodo rimane operativo e dà agli utenti depositi rapidi con una corretta configurazione tecnica e legale.

Caswino Promo