Integration Types
Altre funzionalità
Card Payments
Mobile Wallets
Alternative Payment Methods
Resources
Una sessione di pagamento, o semplicemente sessione, è un contenitore temporaneo per i campi e i valori delle richieste delle operazioni che fanno riferimento a una sessione. Questo consente di utilizzare una sessione in un'operazione per fare riferimento ai campi e ai valori delle richieste anziché fornirli direttamente nella richiesta di operazione. Quando Mastercard Gateway riceve un'operazione che fa riferimento a una sessione, formula la richiesta finale combinando i campi della richiesta nella sessione con quelli forniti direttamente nella richiesta.
Le sessioni consentono l'uso di integrazioni più sofisticate in cui parti differenti della richiesta vengono acquisite in punti differenti del flusso del pagamento o tramite canali differenti. Ad esempio, i flussi di pagamento sia per Hosted Session che per i wallet (ad esempio Masterpass) utilizzano le sessioni per raccogliere e archiviare informazioni sensibili sul pagante. Questo riduce i costi di implementazione e conformità PCI in quanto non è necessario gestire né archiviare i dettagli di pagamento sul server.
Il primo passaggio consiste nella creazione di una sessione, che è quindi possibile aggiornare con i campi e i valori delle richieste che si desidera archiviare nella sessione.
È possibile creare una sessione utilizzando:
È possibile facoltativamente fornire il limite di autenticazione (session.authenticationLimit), che indica il numero di operazioni che possono essere inviate al gateway utilizzando l'ID di sessione come password. Se non fornito, il gateway imposta un valore predefinito.
Vengono restituiti i seguenti campi:
session.id
: un identificativo di sessione univoco che è necessario fornire nelle richieste successive per fare riferimento al contenuto della sessione.session.authenticationLimit
: il limite fornito nella richiesta o il valore predefinito del gateway.session.aes256Key
: la chiave che può essere utilizzata per decrittografare i dati sensibili inviati al sito Web tramite il browser o il dispositivo mobile del pagante.session.version
: è possibile utilizzare questo campo per implementare il blocco ottimistico del contenuto della sessione.session.updateStatus
: un riepilogo del risultato dell'ultimo tentativo di modificare la sessione.Riferimento per session.js[JavaScript]
È possibile aggiungere o aggiornare i campi della richiesta in una sessione utilizzando:
Consente di aggiungere dati di pagamento e di pagante a una sessione che può successivamente diventare l'input per determinare il rischio associato a un pagante in una operazione di autenticazione.
Riferimento per session.js[JavaScript]
È possibile utilizzare una sessione contenente i campi e i valori delle richieste in una delle operazioni seguenti:
È possibile eseguire più operazioni utilizzando la stessa sessione, ad esempio Pay e Tokenization. Questo è utile se si desidera eseguire un pagamento e salvare i dettagli della carta. Tenere presente che la versione DirectAPI per le operazioni che fanno riferimento alla sessione deve corrispondere alla versione DirectAPI utilizzata per l'aggiornamento o l'aggiunta dei campi di richiesta alla sessione.
Open Wallet
, Update Session
, Update Session From Wallet
), il codice di sicurezza della carta, se archiviato nella sessione, viene rimosso. Questa operazione è necessaria per garantire la conformità con le normative PCI. Se si desidera salvare i dettagli della carta per un uso successivo, è possibile farlo eseguendo un'operazione Tokenization utilizzando la sessione.Quando si invia una richiesta di operazione, i campi e i valori della richiesta archiviati per la sessione vengono utilizzati solo se non vengono forniti direttamente nella richiesta.
È possibile ottenere i campi e i valori delle richieste archiviati in una sessione specificando l'identificativo della sessione.
Se si prendono decisioni aziendali in base ai dati ottenuti da una sessione, occorre utilizzare una funzionalità di blocco ottimistico della sessione. Tale blocco garantisce che i dati utilizzati per prendere le decisioni siano identici a quelli usati per elaborare l'operazione della richiesta.
Per utilizzare la funzionalità di blocco ottimistico, è necessario:
Retrieve Session
.session.version
nel contenuto della sessione restituito.session.version
insieme all'identificativo della sessione come parte dell'operazione.Se il contenuto della sessione è cambiato in seguito alla registrazione di session.version
, il gateway rifiuterà l'operazione e restituirà error.cause=INVALID_REQUEST
.
Esempi di decisioni aziendali basate sul contenuto della sessione includono: