Supporto per POLi, PayID, bonifico bancario e AUD
Introduzione
I giocatori australiani preferiscono i metodi locali di pagamento, come i trasferimenti bancari immediati tramite POLi, i trasferimenti NPP e la banca di trasferimento tradizionale, tutti in AUD. Per l'operatore è importante garantire integrazione, elaborazione immediata, conformità alle regolazioni e architettura affidabile.
1. Panoramica dei metodi di pagamento
1. POLi Payments
L'autorizzazione utente OAUTH tramite l'interfaccia della banca, senza carte e altri codici SMS.
Immissione immediata, adatta per depositi.
2. PayID/Osko (NPP)
Tradotto tramite ID (email, telefono), lo standard di rete NPP fornisce il calcolo entro secondi.
Richiede l'integrazione con PSP che supporta Australia's New Payments Platform.
3. Trasferimento bancario (BPAY/trasferimento diretto)
BPAY: generazione di Biller Code e Customer Reference, pagamento effettuato dall'utente presso la banca Internet; iscrizione fino a 24 ore
AUD-transfer diretto: SWIFT/BAN traduzione, adatto per importi elevati, tempo di elaborazione 1-3 giorni lavorativi.
4. Valuta AUD
Tutte le operazioni in AUD: visualizzazione corretta, archiviazione nel database, arrotondamento a centesimi ('DECIMAL (12,2)').
2. Architettura di integrazione
```mermaid
flowchart LR
API-Gateway: convalida, rate-limiting, instradamento al PaymentService.
PaymentService: punto unificato per tutti i metodi AUD, memorizza «paymentId», «method», «status», «metadata».
BillingService: modulo per i conti BPAY e polling states.
TransactionService - Le transazioni ACID aggiornano il saldo e logificano le operazioni.
AuditDB L'archivio di query e risposte immutabile.
3. Implementazione POLi
1. Inizializzazione:
→ `{ paymentId, poliUrl }`
2. Reindirizzamento del giocatore:
3. Elaborazione webhook:
Controllo HMAC sù X-Signature ".
Aggiornamento status: 'pending's'approved '/' declined'.
Con "approved" è il lancio dì TransactionService ". credit(playerId, amount)`.
4. Implementazione del PayID/Osko
1. Inizializzazione:
→ `{ paymentId, transactionRef }`
2. Notifica webhook:
Controllo della firma analogo.
States: «pending», «settled», «failed».
5. Implementazione BPAY e bonifico bancario
1. Generazione conto BPAY:
→ `{ billerCode, customerRef, expiryDate }`
2. Polling degli stati:
3. Bonifico bancario diretto:
6. Localizzazione e UX
Formattazione:
I giocatori australiani preferiscono i metodi locali di pagamento, come i trasferimenti bancari immediati tramite POLi, i trasferimenti NPP e la banca di trasferimento tradizionale, tutti in AUD. Per l'operatore è importante garantire integrazione, elaborazione immediata, conformità alle regolazioni e architettura affidabile.
1. Panoramica dei metodi di pagamento
1. POLi Payments
L'autorizzazione utente OAUTH tramite l'interfaccia della banca, senza carte e altri codici SMS.
Immissione immediata, adatta per depositi.
2. PayID/Osko (NPP)
Tradotto tramite ID (email, telefono), lo standard di rete NPP fornisce il calcolo entro secondi.
Richiede l'integrazione con PSP che supporta Australia's New Payments Platform.
3. Trasferimento bancario (BPAY/trasferimento diretto)
BPAY: generazione di Biller Code e Customer Reference, pagamento effettuato dall'utente presso la banca Internet; iscrizione fino a 24 ore
AUD-transfer diretto: SWIFT/BAN traduzione, adatto per importi elevati, tempo di elaborazione 1-3 giorni lavorativi.
4. Valuta AUD
Tutte le operazioni in AUD: visualizzazione corretta, archiviazione nel database, arrotondamento a centesimi ('DECIMAL (12,2)').
2. Architettura di integrazione
```mermaid
flowchart LR
Player --> | initiate deposit | API-Gateway |
---|---|---|
API-Gateway --> PaymentService | ||
PaymentService --> | init POLi | POLi-API |
PaymentService --> | init PayID | PSP-API |
PaymentService --> | generate BPAY | BillingService |
POLi-API --> | webhook | PaymentService |
PSP-API --> | webhook | PaymentService |
BillingService --> | polling / webhook | PaymentService |
PaymentService --> TransactionService | ||
TransactionService --> AuditDB | ||
``` |
API-Gateway: convalida, rate-limiting, instradamento al PaymentService.
PaymentService: punto unificato per tutti i metodi AUD, memorizza «paymentId», «method», «status», «metadata».
BillingService: modulo per i conti BPAY e polling states.
TransactionService - Le transazioni ACID aggiornano il saldo e logificano le operazioni.
AuditDB L'archivio di query e risposte immutabile.
3. Implementazione POLi
1. Inizializzazione:
- ```http
- POST /api/payments/poli/init
- {
- "amount": 100. 00,
- "currency": "AUD",
- "returnUrl": "https: //casino. com/poli/callback"
- }
- ```
→ `{ paymentId, poliUrl }`
2. Reindirizzamento del giocatore:
- Il giocatore viene reindirizzato a «poliUrl», autorizzato in banca, confermato il pagamento.
3. Elaborazione webhook:
- ```http
- POST /api/payments/poli/callback
- Headers: X-Signature
- Body: { paymentId, status, bankTransactionId }
- ```
Controllo HMAC sù X-Signature ".
Aggiornamento status: 'pending's'approved '/' declined'.
Con "approved" è il lancio dì TransactionService ". credit(playerId, amount)`.
4. Implementazione del PayID/Osko
1. Inizializzazione:
- ```http
- POST /api/payments/payid/init
- {
- "payId": "user@example. com",
- "amount": 250. 00,
- "currency": "AUD",
- Descrittore: Casino deposit
- }
- ```
→ `{ paymentId, transactionRef }`
2. Notifica webhook:
- PSP шлёт `POST /api/payments/payid/callback { paymentId, status }`.
Controllo della firma analogo.
States: «pending», «settled», «failed».
5. Implementazione BPAY e bonifico bancario
1. Generazione conto BPAY:
- ```http
- POST /api/payments/bpay/generate
- { "amount": 500. 00 }
- ```
→ `{ billerCode, customerRef, expiryDate }`
2. Polling degli stati:
- `GET /api/payments/bpay/status? billerCode=&customerRef= ogni 15 minuti.
- При `PAID` — update `approved`, credit funds.
3. Bonifico bancario diretto:
- Visualizza i dettagli del conto (SWIFT, BSB, Account) in UI.
- Le operazioni vengono controllate manualmente o automaticamente tramite incoming bank statents tramite SFTP.
6. Localizzazione e UX
Formattazione:
- ```js
- new Intl. NumberFormat('en-AU', { style: 'currency', currency: 'AUD' }). format(1000)
- // "A$1,000. 00"
- ``` UI:
- Le icone POLI, PayID, BPAY, Bank Transfer.
- Descrizione dei tempi e delle commissioni sotto ogni metodo.
- Verifica prima della prima immissione: KYC/AML.
- POLi: `poli. sandbox. domain'con token falsi 'test _ user'.
- PSP: crediti di prova per i provider di PayID.
- Test E2E (Cypress) - Script - Avvia l'emulazione di callback e controlla l'equilibrio.
- Load Testing (k6) - Simulazione di 1000 depositi concurrent con il metodo POLi e PayID.
7. Sicurezza e disponibilità
TLS 1. 2 + per tutte le API e Webhook.
Circuito Breaker (Resilience4j) per le chiamate PSP, disattivare il metodo con error-rate> 5%.
Retry-logic con backoff esponenziale in caso di guasti temporanei.
AuditTrail: tutti gli eventi e le transazioni Web sono memorizzati per 7 anni in termini di regolazioni minime.
8. Test
Modalità Sandbox:
Conclusione
L'integrazione di POLi, PayID/Osko e tradizionali trasferimenti bancari in AUD richiede un unico PaymentService, una gestione affidabile del Web hook, la localizzazione dei formati e un'architettura a tolleranza di errore con circuito breaker e retry. Questo approccio garantisce depositi rapidi, alto CR e conformità con i requisiti australiani.