TWINT Svizzera: QR e in-app
1) Contesto e posizionamento TWINT
TWINT è un sistema svizzero di pagamenti A2A e portafogli integrati con le banche del paese. L'utente paga dall'applicazione TWINT/banca: online tramite in-app/App2App o Deep Link, offline tramite QR (standard «TWINT QR»). La conferma viene effettuata nell'applicazione (SCA: PIN/Biometria), i fondi vengono prelevati da un conto/carta collegato e versati dal Merchant con un prestito bancario.
Proprietà chiave:- Un unico marchio/QR per online e POS, ad alta copertura degli utenti.
- Immediata conferma on-line per UX e massement rapido (all'interno delle finestre bancarie).
- P2P per numero di telefono/contatto all'interno dell'ecosistema.
- Basso frodo grazie a SCA e device bining.
2) Membri e ruoli
TWINT - Regole, directory dei membri, routing.
Banche partecipanti/emittenti TWINT: KYC, limiti e antifrode.
PSP/Equayers: connettono il merchant (online/POS), forniscono API/SDK, web hook e report.
Merchant: avvia un pagamento/richiesta, elabora gli stati/rimborsi, controlla.
Pagatore: conferma le transazioni nell'applicazione TWINT/Bank.
3) Canali e script personalizzati
3. 1 E-commerce: in-app / Deep Link / App2App
In un checkout, il merchant crea un intent di pagamento → dà a Deep Link/pulsante «Paga TWINT».
L'applicazione TWINT viene aperta (App2App) e l'utente conferma il ritorno alla cassa di stato.
Per il desctop viene visualizzato un QR dinamico per-order; il client scansione nell'applicazione e conferma.
3. 2 POS/offline: TWINT QR
QR dinamico sulla schermata di biglietteria/terminale: importo, orderId, metadati.
L'utente esegue la scansione e conferma nell'applicazione Merchant lo stato online.
Il QR statico (l'importo viene immesso manualmente) è applicabile per i donati/piccole prese, ma è peggiore in termini di compressione.
3. 3 P2P «per telefono»
Traduzioni tra fisici per numero di telefono/contatto con conferma push e prestito immediato al destinatario.
3. 4 Request-to-Pay / Pay-by-Link
Merchant avvia la richiesta di pagamento (importo/destinazione/scadenza), il cliente conferma nell'allegato che il pagamento avviene secondo il normale flow A2A.
4) Stati e timing
States tipici: 'iniziated' 'pending' success '/' failed '/' canceled '/' expired '.
Per QR/Desctop, tenere conto del timeout di conferma (mostra il timer).
Settement: credito bancario T + 0/T + 1 a seconda della finestra di calcolo/PSP; per il report è comunque obbligatorio recon diurno.
5) Limiti e politiche di rischio
I limiti sono definiti dalla banca pagatrice e/o PSP e dipendono dal profilo e dal canale:- Per-trasmissione, per-day/24h, a volte week/monthly.
- Nuovo destinatario/merchant - soglie ridotte e/o estrazione.
- I limiti di canale sono: e-commerce (Deep Link/QR), POS, P2P, Richiest-to-Pay.
- Velocity/device/geo-regole vengono applicate dalle banche e dallo schema.
6) Economia e commissioni
Il merchant TWINT è generalmente più economico di un MDR tipico; le condizioni variano in PSP (file/basso%).
Ipoteca i costi di integrazione/SDK, elaborazione dì pending/expired ', supporto/ODR e convalida.
7) Restituzioni e display
Marceback (come nelle mappe) non è disponibile. Restituzione: nuovo prestito da Merchant a Pagatore; supportati da partial refunds.
I tempi di rimborso sono bancari (solitamente T + 0/T + 1).
Display/reclamo - secondo le procedure PSP/banca; archiviare i fogli dell'ordine, confermare la fornitura del servizio/consegna, collegare il refund↔order.
8) Sicurezza e conformità
SCA nell'applicazione TWINT/banca (PIN/biometria), device binding.
Antifrode presso la banca/PSP: velocity, nuovi destinatari, rischio-scorrimento.
PI-minimizzazione e crittografia, HMAC/nonce su Web Hook, protezione contro replay, registro di controllo.
Conformità ai requisiti di pagamento locali e alle norme di protezione dei dati GDPR.
9) Integrazione del merchant
Opzioni
1. Hosted/Embedded da PSP - avvio rapido, in-app/QR da scatole, stati e errori.
2. Server-to-Server + Deep Link/QR - Personale UX, QR per-order dinamico, elaborazione degli errori sottile.
3. Pay-by-Link/Richiest-to-Pay - Fatturazione tramite link (email/SMS/messaggistica).
- API: `createPayment`, `refund`, `requestToPay`, `webhook`, `reconcile`.
- Idampotenza ('orderId' + chiave), retrai esponenziali, deducibilità degli eventi.
- Recon: daily auto-recon + full-recon periodico; Conservare l'UTR/l'arbitro bancario.
- SLA-dashboard: conversione, 'pending→success/expired', tempo di iscrizione/ritorno.
10) Accoppiamento e reporting
Logica «paymentId/transactionId» provider, «orderId», canale (App2App/QR/Link), banca pagante, stato, importo/valuta, timestamp, UTR.
Da PSP/banca: registri di accessi/rimborsi/correzioni, aggiornamenti di stato tardivi.
Aggiustate gli alert per i dissincroni e i pending.
11) Pratiche UX
Mobile-first: su mobile - in-app/App2App; Il dectop è un QR dinamico di grandi dimensioni con timer.
Recovery: con «timeout/expired» è una replica sicura e un'alternativa (scheda/SEPA/altro A2A).
Ricevuta: importo, ora, transactionId, canale, UTR, contatti di zapport.
Evidenziazione dei rischi/limiti: mostra all'utente chi ha visualizzato la soglia, una banca o un canale.
12) Recurrent e mandati
TWINT base - one-off con SCA. Le sottoscrizioni utilizzano il primo pagamento TWINT-e-mandate/SEPA DD/Open-Banking per futuri prelievi (limite/periodicità/notifica).
Dare all'utente la schermata di gestione dei mandati (pausa/cancel/update) e pre-notifica prima del prelievo.
13) Verticale ad alto rischio (comprese le iGaming)
La disponibilità dei canali e i limiti dipendono dalla politica di banca/PSP e dal diritto locale.
Aspettate le soglie ridotte rinforzate da KYC, possibili hold's.
Pianificare binari alternativi (mappe, SEPA, altri PIS) e smart-routing per rischio/canale/banca.
14) Architettura «TWINT Gateway»
Uno strato API (REST/GraphQL) per la cassa e il becofice.
Le code di eventi sono States-Ivent-Billing/CRM/Analista.
Sicurezza: vault per i segreti, IP-allowlist PSP, convalida rigorosa redict-URI, token anti-replay.
Osservabilità: conversione via canale (App2App/QR/Link), quota «pending→expired», tempo fino a settlement/ritorno.
15) Assegno foglio di output
1. Collegare TWINT a PSP/banca; Selezionare i canali (App2App/QR/Link).
2. Implementare «createPayment »/« requestToPay», QR dinamico, schermate di errore/limiti.
3. Collegare webhooks, idampotenza, retrai e deduzioni degli eventi.
4. Configura il recon (daily + full), memorizza le istruzioni UTR/fine.
5. Supportare partial/full refunds e procedure ODR.
6. Avvia i dashboard SLA e gli alert per conversione/latitanza/statuto.
7. Eseguire test e2e con le principali banche/dispositivi e POS (se rilevante).
Scheda di riferimento dei limiti
Per-txn/24h/7d: memorizza e controlla prima dell'avvio.
Nuovi destinatari/merchant: soglie/estrazione ridotte.
I canali includono limiti separati per e-commerce (App2App/QR), POS, P2P, Richiest-to-Pay.
Velocity/Risk - L'antifrode della banca può respingere e rallentare le operazioni.
Riepilogo
In linea, in-app/App2App + QR dinamico, TWINT QR, P2P per telefono.
Condividi la conferma online e il prestito finale; costruite intorno a webhooks + recon e partial refunds.
Non fissare gli importi: mantenere i limiti di configura per banca/canale e aggiornare regolarmente.
Per le sottoscrizioni, il primo collegamento TWINT → un mandato con controllo trasparente e notifiche.