Utilizarea sesiunilor permite existența unor integrări mai sofisticate în care părți diferite ale solicitării sunt capturate în diferite puncte în procesul de plată sau prin intermediul unor canale diferite. De exemplu, procesele de plată pentru Hosted Session și portofelele electronice (de exemplu, Masterpass) utilizează sesiuni pentru a colecta și stoca informațiile sensibile ale plătitorilor. Această caracteristică reduce costurile de conformitate și implementare PCI datorită faptului că dvs. nu manipulați sau stocați niciun fel de detalii de plată pe serverul dvs.
Utilizarea sesiunilor
Crearea unei sesiuni
Ca prim pas, trebuie să creați o sesiune, pe care apoi o puteți actualiza cu câmpurile de solicitare și valorile pe care doriți să le stocați în cadrul sesiunii.
Puteți crea o sesiune folosind:
Actualizarea unei sesiuni
Puteți adăuga sau actualiza câmpurile de solicitare într-o sesiune utilizând:
Nu puteți să ștergeți câmpuri dintr-o sesiune, dar puteți suprascrie valorile câmpurilor existente.
Utilizarea unei sesiuni
O sesiune care conține câmpurile de solicitare și valorile poate fi utilizată în oricare dintre următoarele operațiuni:
Este recomandat să colectați detaliile de sesiune utilizând operațiunea Retrieve Session și să verificați conținutul sesiunii înainte de a iniția o operațiune de plată sau creare de simbol.
Puteți să realizați mai multe operațiuni utilizând aceeași sesiune, de exemplu Pay și Tokenization. Această caracteristică este utilă dacă doriți să realizați o plată și să salvați, de asemenea, detaliile cardului. Rețineți că versiunea API pentru operațiunile care sunt realizate cu o referință a sesiunii trebuie să fie aceeași cu versiunea API utilizată la actualizarea sau adăugarea câmpurilor de solicitare în cadrul sesiunii.
În momentul în care inițiați o operațiune care include o referire la o sesiune (exceptând Open Wallet
, Update Session
, Update Session From Wallet
), codul de securitate al cardului, dacă este stocat în cadrul sesiunii, este șters. Această caracteristică este necesară pentru a respecta regulamentele PCI. Dacă doriți să salvați detaliile cardului pentru utilizare ulterioară, puteți face acest lucru apelând operațiunea Tokenization utilizând sesiunea.
Reguli de precedență
Când trimiteți o solicitare de operațiune, câmpurile de solicitare și valorile stocate cu ajutorul sesiunii sunt utilizate numai dacă nu le furnizați direct în solicitare.
Colectarea câmpurilor dintr-o sesiune
Puteți obține câmpurile de solicitare și valorile stocate într-o sesiune furnizând identificatorul sesiunii.
Referință API Retrieve Session[REST][NVP]
Luarea de decizii de operare pe baza conținutului sesiunii
Dacă luați decizii de operare pe baza datelor obținute dintr-o sesiune, ar trebui să utilizați capacitatea de blocare optimistă a sesiunii. Aceasta asigură faptul că datele pe care le-ați utilizat pentru luarea deciziei sunt aceleași cu cele utilizate pentru procesarea operațiunii solicitate.
Pentru a utiliza capacitatea de blocare optimistă trebuie să:
- Colectați în mod securizat conținutul sesiunii utilizând operațiunea
Retrieve Session
.
- Înregistrați valoarea
session.version
din conținutul returnat al sesiunii.
- Luați deciziile de operare pe baza conținutului returnat al sesiunii.
- Când trimiteți operațiunea de solicitare către gateway, transmiteți
session.version
împreună cu identificatorul sesiunii ca parte a operațiunii.
Dacă s-a modificat conținutul sesiunii de când ați înregistrat session.version
, gateway-ul va respinge operațiunea și va returna error.cause=INVALID_REQUEST
.
Exemple de decizii de operare bazate pe conținutul sesiunii includ:
- Calcularea sumei de suprataxare pe baza tipului de card furnizat de către plătitor.
- Calcularea costului de livrare pe baza adresei de livrare furnizată de către plătitor.
Referință API Retrieve Session[REST][NVP]
Plată[REST][NVP]