- Ghid de integrare
- Metode de plată
- Secure Remote Commerce
Secure Remote Commerce
Secure Remote Commerce (SRC) este o opțiune de validare inteligentă, online, care nu necesită parolă și oferă o experiență de validare rapidă și facilă pentru plătitori. SRC oferă un singur buton de validare (denumit și „Click to Pay”) și un proces de validare standardizat pentru toate schemele de card participante, inclusiv Mastercard, Visa, American Express, Discover și altele. SRC se bazează pe specificațiile SRC EMVCo și înlocuiește Masterpass, Visa Checkout și Amex Express Checkout.
Plătitorul poate crea un profil SRC folosind adresa de e-mail. La validare, plătitorul trebuie să furnizeze adresa de e-mail și să efectueze un pas de verificare suplimentar, cu un cod de unică folosință. De asemenea, pot alege și opțiunea „Ține-mă minte” pentru a sări ulterior peste pasul de verificare atunci când utilizează același browser.
Plătitorul poate stoca mai multe carduri de credit, de debit sau preplătite, adresele de facturare asociate și mai multe adrese de expediere în profilul SRC. Detaliile cardului sunt stocate în siguranță, iar securitatea este sporită cu funcția de creare a simbolurilor în rețea.
SRC îi permite plătitorului să selecteze detaliile de plată care trebuie utilizate pentru plată; cu toate acestea, plata în sine este procesată cu ajutorul achizitorului configurat pentru profilul dvs. de comerciant din gateway.
SRC este acceptat pe pagina de plată a gateway-ului (Checkout) sau printr-un SDK JavaScript, dacă folosiți propria pagină de plată.
Avantaje cheie
SRC oferă următoarele beneficii:
- Opțiune de validare rapidă și facilă pentru plătitori, cu risc redus de abandonare la validare
- Rate mai mari de aprobare la autorizare dacă utilizați simbolurile din rețea
- Rată scăzută de fraudare din partea plătitorilor
- Schimb securizat al datelor de plată, inclusiv detaliile cardurilor și adresele de facturare și livrare
Cerințe preliminare
Dacă doriți să oferiți SRC ca opțiune de validare pentru plătitorii dvs.:
- Contactați your payment service provider pentru a vă asigura că SRC este disponibil.
- În meniul Administrare din Merchant Administration, faceți clic pe Configurație SRC, urmați instrucțiunile de înscriere SRC și activați SRC pentru profilul dvs. de comerciant. Trebuie să dețineți privilegiile necesare pentru a actualiza configurația SRC.
SRC ca opțiune de validare în Checkout
Dacă folosiți pagina de plată a gateway-ului (Hosted Checkout), SRC va fi opțiunea furnizată automat ca opțiune de validare a plătitorilor dvs. dacă ați activat SRC în profilul dvs. de comerciant și folosiți webServices Integration versiunea 57 sau o versiune mai recentă atunci când remiteți solicitarea Create Checkout Session pentru a iniția interacțiunea Hosted Checkout.
Chiar dacă profilul SRC al plătitorului poate conține carduri pentru orice scheme de card acceptate, plătitorul poate folosi SRC la tranzacție doar pentru cardurile pentru care:
- schema de card a fost activată pentru SRC în profilul dvs. de comerciant și
- profilul dvs. comerciant este configurat să proceseze cardurile cu această schemă și moneda de tranzacție.
Adresă de livrare: Plătitorii nu vor putea selecta o adresă de livrare în timpul interacțiunii SRC, deoarece colectarea adresei de expediere nu este acceptată momentan prin Checkout.
Adresă de facturare: O adresă de facturare va fi colectată întotdeauna în timpul interacțiunii SRC.
Autentificarea 3-D Secure: Dacă aveți configurată Autentificarea 3-D Secure (3DS), Hosted Checkout va efectua automat autentificarea 3DS după interacțiunea SRC.
Pentru a utiliza Checkout, urmați pașii definiți în Implementarea unei integrări Checkout.
Când apelați Checkout.configure()
, includeți următoarele detaliile:
Țara interacțiunii | În cazul unei interacțiuni SRC, țara în care are loc interacțiunea determină conținutul specific țării prezentat plătitorului în timpul interacțiunii SRC, cum ar fi Termenii și condițiile. Valoarea pe ați configurat-o în profilul dvs. de comerciant din gateway este folosită implicit. Adăugați câmpul interaction.country la metoda Checkout.configure() , dacă doriți să suprascrieți această valoare pentru interacțiune. |
Setări regionale interacțiune | Pentru o interacțiune SRC, setările regionale pentru interacțiune determină limba de pe afișaj. Implicit, se utilizează limba configurată în browserul plătitorului. În cazul în care limba plătitorului nu se poate determina sau nu este acceptată, se utilizează en_US. Dacă doriți să suprascrieți această valoare, adăugați câmpul interaction.locale la metoda Checkout.configure() . În prezent, limbile acceptate sunt engleză (UK) (en_UK), spaniolă (Spania) (es_ES), franceză (Canada) (fr_CA), portugheză (Brazilia) (pt_BR) și chineză (Hong Kong) (zh_HK). |
Nume comerciant | Introduceți numele dvs. de tranzacționare, și anume, numele cunoscut de plătitor. Numele poate fi afișat în timpul interacțiunii SRC. |
URL comerciant | Introduceți adresa URL a site-ului dvs. web pe care o folosește plătitorul. De exemplu, https://example.com. Adresa URL poate fi afișată în timpul interacțiunii SRC. |
E-mail plătitor | Adresa de e-mail a plătitorului va fi colectată întotdeauna în timpul interacțiunii SRC. Dacă cunoașteți deja adresa de e-mail a plătitorului, adăugați customer.email :<adresa de e-mail a plătitorului> în Checkout.configure() pentru ca plătitorul să poată sări peste pasul de introducere a adresei de e-mail în timpul interacțiunii SRC. |
<html> <head> <script src="https://static/srci/1.2.0/srci.min.js" data-error="errorCallback" data-cancel="cancelCallback"></script> <script type="text/javascript"> function errorCallback(error) { console.log(JSON.stringify(error)); } function cancelCallback() { console.log('Payment cancelled'); } Checkout.configure({ merchant: "<gateway_merchant_ID>", session: { id: "<session_ID>", }, customer: { email: "<payer_email_address>" }, order: { amount: "60", currency: "USD", description: "High level description of the goods contained in the order", id: "<your_unique_order_ID>", }, interaction: { country: "USA", locale: "en_US", operation: "AUTHORIZE", merchant: { name: "<merchant_name>", url: "<website_URL>", address: { line1: "200 Sample St", line2: "1234 Example Town" } } } }); </script> </head> <body> ... <input type="button" value="Pay with Lightbox" onclick="Checkout.showLightbox();" /> <input type="button" value="Pay with Payment Page" onclick="Checkout.showPaymentPage();" /> ... </body> </html>
SRC ca opțiune de validare pe pagina dvs. de plată
Dacă utilizați propria dvs. pagină de plată și doriți să oferiți SRC ca opțiune de validare pentru plătitori, folosiți SDK-ul SRCI JavaScript (srci.js) furnizat de gateway.
Aceasta este o integrare JavaScript pe partea clientului care vă permite să inițiați interacțiunea SRC direct din browserul plătitorului și garantează faptul că detaliile de plată selectate de plătitor în timpul interacțiunii SRC sunt remise direct din browserul plătitorului către gateway.
Pentru a utiliza SDK-ul SRCI JavaScript, urmați pașii de mai jos.
Pasul 1: Creați o sesiune
Creați o sesiune trimițând o solicitare Create Session
din aplicația de pe serverul dvs. Răspunsul returnează un ID de sesiune pe care trebuie să îl utilizați la pașii ulteriori pentru a referenția sesiunea respectivă.
Pasul 2: Actualizați sesiunea cu valoarea comenzii și moneda
Actualizați sesiunea cel puțin cu suma și moneda comenzii, trimițând o solicitare Update Session
din aplicația de pe serverul dvs. Acest pas este necesar pentru interogarea ulterioară privind disponibilitatea SRC pentru plățile în această monedă.
URL | https://api/rest/version/72/merchant/<your_merchant_ID>/session/<your_session_ID> |
Metoda HTTP | PUT |
{ "order":{ "amount":100.00, "currency":"USD" } }
Pasul 3: Includeți SDK-ul SRCI JavaScript în pagina dvs. de plată
Includeți SDK-ul SRCI JavaScript (srci.js) furnizat de gateway în pagina dvs. de plată adăugând un element script
în elementul head
. Această acțiune plasează un obiect SRCi
în spațiul de nume al ferestrei.
<script type="text/javascript" src="https://static/srci/1.2.0/srci.min.js"></script>
Pasul 4: Configurați interacțiunea SRC
Atunci când încărcați pagina de plată, inițiați interacțiunea SRC invocând metoda SRCi.configure()
.
<html> <head> <script type="text/javascript" src="https://static/srci/1.2.0/srci.min.js"></script> <script type="text/javascript"> var callback = function (response) { if(response.result === "SUCCESS") { console.log("Response from SDK: %s", response.restApiResponse); } else if(response.result === "ERROR") { console.log("An error occurred"); } } SRCi.configure( "<your_gateway_merchant_ID>", "<your_merchant_name>", "<your_merchant_URL>", "<your_session_ID>", { wsVersion: 57 }, callback ); </script> </head> <body> ... </body> </html>
Detalii comerciant
merchantId
este necesar astfel încât gateway-ul să poată determina în mod corect opțiunile dvs. de plată.
Câmpurile merchantName
și merchantUrl
sunt remise către Serverul SRC. Aceste detalii pot fi afișate pentru plătitor în timpul interacțiunii SRC.
Introduceți numele dvs. de tranzacționare, și anume, numele cunoscut de plătitor și adresa URL a site-ului web folosit de plătitor.
Versiune
Setați această valoare la 57. Aceasta este versiunea pe care ați folosit-o la remiterea solicitării Create Session
.
Callback
Utilizați parametrul callback
pentru a defini acțiunile care vor fi invocate după finalizarea SRCi.configure()
. De exemplu, este posibil să vreți să înregistrați dacă metoda a avut succes:
var srciConfigCallback = function (resp) { var response = resp.restApiResponse; if (response.result === "ERROR") { console.error("SRC could not successfully be configured"); } else if (response.result === "SUCCESS") { console.log("SRC was successfully configured"); } }
Apelarea SRCi.configure()
poate returna următoarele răspunsuri de eroare:
response.cause |
resp.explanation |
Acțiune necesară |
---|---|---|
Eroare | Argument lipsă: Merchant ID, Merchant Name, Merchant URL, Hosted Session ID și o funcție de callback sunt toate argumente necesare pentru metoda configure() . |
Reparați integrarea. Trebuie să furnizați toate câmpurile de solicitare obligatorii |
Eroare | Argument lipsă: URL comerciant este un argument obligatoriu pentru metoda configure() |
Reparați integrarea. Trebuie să furnizați câmpul URL comerciant. |
Eroare | Callback trebuie să fie o funcție. | Reparați integrarea. |
Eroare | Versiunea API trebuie să fie <MIN_VERSION> sau mai recentă. |
Reparați integrarea. Setați valoarea wsVersion la 57. |
Dacă este returnată o eroare, nu treceți la pasul următor. Oferiți plătitorului o altă metodă de plată.
Configurație avansată
SDK recuperează detaliile despre configurația profilului dvs. de comerciant pentru SRC (inclusiv, de exemplu, lista cu toate schemele pentru care SRC este disponibil) folosind operațiunea Payment Options Inquiry
. Cu toate acestea, dacă ați remis deja o solicitare Payment Options Inquiry
în cadrul sesiunii plătitorului, puteți include aceste detalii prin adăugarea elementului configuration
la solicitare.
În această situație, SDK nu realizează din nou solicitarea Payment Options Inquiry
. Parametrul wsVersion
indică versiunea webServices Integration pe care ați utilizat-o pentru a remite solicitarea Payment Options Inquiry
.
<html> <head> <script type="text/javascript" src="https://static/srci/1.2.0/srci.min.js"></script> // Response from the Payment Options Inquiry call. This value to SRCi.configure() is optional. If it is not passed in, a call will be made from the SDK to the API to retrieve it. var paymentOptionsInquiryResponse = { merchant: "<gateway_merchant_ID>", paymentTypes: { card: { cardTypes: [{ cardType: "MASTERCARD", schemeTokenTypes: "CRYPTOGRAM_3DSECURE" }, { cardType: "VISA", schemeTokenTypes: "CRYPTOGRAM_3DSECURE" }, { cardType: "AMEX", schemeTokenTypes: "DYNAMIC_CSC_AND_EXPIRY" }], walletProviders: [{ secureRemoteCommerce: { defaultPayerCountry: "USA", shippingAddressCountries : "USA,CAN" scheme: [{ dpaId: "<DPA_ID>", // As configured for this scheme on your merchant profile. name: "MASTERCARD" }, { dpaId: "<DPA_ID>", // As configured for this scheme on your merchant profile. name: "VISA" }, { name: "AMERICAN_EXPRESS" }] }, walletProvider: "SECURE_REMOTE_COMMERCE" }] } }, result: "SUCCESS" } SRCi.configure({ "<gateway_merchant_ID>", "<merchant_name>", "<merchant_URL>", "<session_ID>", configuration: { wsVersion: 57, paymentOptions: paymentOptionsInquiryResponse }, callback: function (response) { if(response.result === "SUCCESS") { console.log("Response from SDK: %s", response.restApiResponse); } else if(response.result === "ERROR") { console.log("An error occurred"); } } }); </script> </head> <body> ... </body> </html>
Exemplu de răspuns SRCi.configure()
Exemplul următor prezintă un apel SRCi.configure()
reușit.
{ result: "SUCCESS" restApiResponse: <Payments Options Inquiry response> }
Răspunsul conține răspunsul Payments Options Inquiry
în câmpul restApiResponse
, care are doar rol informativ. Cu toate acestea, este posibil să vreți să folosiți aceste informații ulterior, în timpul sesiunii plătitorului pentru a evita folosirea solicitării PAYMENT_OPTIONS_INQUIRY
pentru a le recupera.
Exemplul următor prezintă un apel SRCi.configure()
nereușit.
{ result: "ERROR" cause: <cause> explanation: <explanation> }
În acest caz, solicitați plătitorului să selecteze o altă opțiune de validare.
Pasul 5: Afișați SRC ca opțiune de validare
Dacă SRCi.configure()
a reușit, afișați SRC ca opțiune de validare pe pagina dvs. de plată. Pentru cerințele de branding, consultați Indicații privind interfața cu utilizatorul SRC.
Utilizați detaliile de configurare SRC returnate în răspunsul Payment Options Inquiry
, pentru a determina ce sigle de schemă trebuie afișate în buton. Pentru fiecare schemă acceptată, răspunsul Payment Options Inquiry
conține numele schemei în câmpul paymentTypes.card.walletProviders[n].secureRemoteCommerce.scheme[n].name
.
Pasul 6: Lansați UI SRC
Atunci când plătitorul selectează SRC ca opțiune de validare, lansați UI SRC invocând metoda SRCi.launchUI()
.
var payloadCallback = function (correlationId, scheme) { console.log("Payload callback complete with correlation id %s and scheme %s", correlationId, scheme); }; var errorCallback = function (error) { console.log("Error callback triggered with error: %s", error); }; var cancelCallback = function () { console.log("Cancel callback triggered"); }; SRCi.launchUI({ orderAmount: "100.00", orderCurrency: "USD" }, payloadCallback, errorCallback, cancelCallback );
În plus față de câmpurile obligatorii, trebuie să completați câteva câmpuri opționale:
SRCi.launchUI( { "orderAmount":"60" "orderCurrency":"USD", "customerEmail":"<payer_email_address>", "collectShippingAddress":true, "interactionCountry":"CAN" "interactionLocale":"fr" } );
Colectare adrese de e-mail plătitor
Adresa de e-mail a plătitorului va fi colectată întotdeauna în timpul interacțiunii SRC. Dacă cunoașteți deja adresa de e-mail a plătitorului, adăugați câmpul customerEmail
în metoda SRCi.launchUI()
pentru ca plătitorul să poată sări peste pasul de introducere a adresei de e-mail în timpul interacțiunii SRC.
Colectare adrese de facturare
O adresă de facturare va fi colectată întotdeauna în timpul interacțiunii SRC.
Colectare adrese de livrare
În mod implicit, SRC nu va colecta adresa de livrare a plătitorului. Dacă doriți ca SRC să colecteze adresa de livrare a plătitorului, adăugați collectShippingAddress:true
la metoda SRCi.launchUI()
.
În mod implicit, plătitorul poate selecta orice țară pentru adresa de livrare. Pentru a restricționa lista de țări în care livrați bunuri, trebuie să vă configurați profilul de comerciant pentru SRC prin Merchant Administration, fie cu o listă de țări permise, fie cu o listă de țări exceptate. Acolo unde ați definit restricții, plătitorul va putea selecta adrese de livrare doar în țările permise.
Nu puteți suprascrie țările de livrare acceptate pentru o solicitare specifică.
Țara interacțiunii
Țara în care are loc interacțiunea determină conținutul specific țării prezentat plătitorului în timpul interacțiunii SRC, cum ar fi Termenii și condițiile. Valoarea pe ați configurat-o în profilul dvs. de comerciant din gateway este folosită implicit. Adăugați câmpul interactionCountry
la metoda SRCi.launchUI()
, dacă doriți să suprascrieți această valoare pentru interacțiune.
Setări regionale interacțiune
Setările regionale pentru interacțiune determină limba folosită pentru interacțiunea SRC. Implicit, se utilizează limba configurată în browserul plătitorului. În cazul în care limba plătitorului nu se poate determina sau nu este acceptată, se utilizează en_US. Adăugați câmpul interactionLocale
la metoda SRCi.launchUI()
dacă doriți să suprascrieți această valoare. În prezent, limbile acceptate sunt engleză (UK) (en_UK), spaniolă (Spania) (es_ES), franceză (Canada) (fr_CA), portugheză (Brazilia) (pt_BR) și chineză (Hong Kong) (zh_HK).
Callback
Trebuie să definiți acțiunile care vor fi invocate după finalizarea SRCi.launchUI()
, după cum urmează:
payloadCallback |
Funcția de callback care va fi declanșată atunci când plătitorul finalizează interacțiunea în UI SRC. Această funcție utilizează două argumente, correlationId și scheme
Aceste detalii trebuie utilizate ulterior pentru recuperarea detaliilor de plată pentru această interacțiune SRC (consultați pasul 7). |
|||||||||||||||||||||
errorCallback |
Funcția callback care va fi declanșată dacă intervine o eroare la încărcarea UI SRC. Această funcție utilizează un argument care va fi populat cu un obiect de eroare care conține detaliile de eroare.
|
|||||||||||||||||||||
cancelCallback |
Funcția de callback care va fi declanșată atunci când plătitorul anulează interacțiunea SRC sau se închide UI SRC. Nu utilizează niciun argument. |
Pasul 7: Actualizați sesiunea cu detaliile de plată SRC
După ce plătitorul dvs. a finalizat cu succes interacțiunea SRC, trebuie să solicitați gateway-ului să recupereze detaliile de plată pentru interacțiunea SRC și să le stocați în sesiune.
Trimiteți o solicitare Update Session From Wallet
cu:
- ID-ul de sesiune în adresa URL a solicitării și
correlationId
și schema returnate înpayloadCallback
URL | https://api/rest/version/72/merchant/<your_merchant_ID>/session/<your_session_ID> |
Metoda HTTP | POST |
{ "apiOperation":"UPDATE_SESSION_FROM_WALLET", "order":{ "walletProvider":"SECURE_REMOTE_COMMERCE" }, "wallet":{ "secureRemoteCommerce":{ "srcCorrelationId":"<correlationId_provided_in_payloadCallback>", "scheme":"<scheme_provided_in_payloadCallback>" } } }
Dacă sesiunea a fost actualizată cu succes cu detaliile de plată din interacțiunea SRC, puteți continua. Dacă sesiunea nu a fost actualizată cu succes, cereți plătitorului să selecteze o altă opțiune de validare.
Pasul 8: Efectuați Autentificarea 3-D Secure (opțional)
Dacă doriți să autentificați plătitorul, efectuați Autentificarea 3-D Secure folosind sesiunea. Consultați Implementarea integrării 3DS cu ajutorul API-ului 3DS JavaScript pentru detalii.
Pasul 9: Efectuați operațiunea de plată
Dacă sesiunea a fost actualizată cu succes cu detaliile de plată din interacțiunea SRC (și Autentificarea 3-D Secure, dacă aceasta este efectuată la pasul 8), utilizați sesiunea pentru a remite plata spre procesare din aplicația de pe serverul dvs. De exemplu, puteți remite o solicitare Authorize
. Detaliile de plată stocate în sesiunea interacțiunii SRC sunt utilizate pentru procesarea plății. Puteți utiliza sesiunea pentru mai multe operațiuni API; consultați Utilizarea unei sesiuni pentru mai multe informații.
URL | https://api/rest/version/72/merchant/<your_merchant_ID>/order/<your_order_ID>/transaction/<your_transaction_ID> |
Metoda HTTP | PUT |
{ "session":{ "id":"<session_ID>" } "..." }
Următorul exemplu de cod HTML prezintă modalitatea de integrare a SRCi.js pe pagina dvs. de plată. Rețineți următoarele:
SRCi.configure()
trebuie apelat imediat după încărcarea scriptuluisrci.min.js
pe pagină. Încercarea de apelareSRCi.configure()
în funcția de manipulare a clicurilor pe buton va cauza unele browsere să blocheze deschiderea ferestrei de plată SRC.- Funcția de manipulare a evenimentelor asociate cu butonul „Plată” trebuie să verifice inițial dacă SDK-ul JavaScript este configurat integral. Încercarea de apelare
SRCi.launchUI()
înainte de configurarea cu succes va declanșa erori și va afecta negativ experiența plătitorului. - Butonul „Plată” trebuie dezactivat chiar înainte de apelarea SRCi.launchUI() și trebuie reactivat în fiecare dintre callback-uri. Încercarea de apelare repetată a
SRCi.launchUI()
se poate solda cu un comportament imprevizibil.
<html> <head> <script type="text/javascript" src="https://static/srci/1.2.0/srci.min.js"></script> <script type="text/javascript"> var configured = false; //SRCi global object is initialized by srci script SRCi.configure( "<gateway_merchant_ID>", "<merchant_name>", "<merchant_URL>", "<session_ID>", { wsVersion: 57 }, function (response) { if(response.result === "SUCCESS") { configured = true; console.log("Response from SDK: %s", response.restApiResponse); } else if(response.result === "ERROR") { console.log("An error occurred"); } } ); var payloadCallback = function (correlationId, scheme) { console.log("Payload callback complete with correlation id %s and scheme %s", correlationId, scheme); enablePayButton(); }; var errorCallback = function (error) { console.log("Error callback triggered with error %s", error); enablePayButton(); }; var cancelCallback = function () { console.log("Cancel callback triggered"); enablePayButton(); }; function enablePayButton() { document.getElementById("payButton").disabled = false; } function disablePayButton() { document.getElementById("payButton").disabled = true; } function pay() { if (configured) { // ensure only one payment window is launched disablePayButton(); SRCi.launchUI({ orderAmount: "100.00", orderCurrency: "USD" }, payloadCallback, errorCallback, cancelCallback ); } else { console.error("SRCi is not configured"); } } </script> </head> <body> <button id="payButton" type="button" onclick="pay();">Pay</button> </body> </html>
detalii de plată SRC
Această secțiune descrie detaliile de plată returnate pentru interacțiunile SRC.
Tipul de detalii de plată returnate pentru interacțiunile SRC
SRC acceptă returnarea diferitelor tipuri de detalii de plată pentru procesare. Detaliile de plată returnate de sistemul SRC depind de tipul solicitat de gateway, de configurația din sistemul SRC și de schema de card. SRC returnează de regulă un simbol de rețea, data expirării simbolului și criptograma completă (dacă este acceptată de schema de card).
Cu toate acestea, acolo unde gateway-ul nu poate trimite un simbol de rețea cu criptograma completă către achizitor, SRC trebuie să furnizeze în schimb un simbol de rețea, data expirării simbolului și codul de securitate a cardului (CSC) dinamic. Gateway-ul va asigura automat faptul că este solicitat tipul corect de detaliu de plată.
Dacă un card nu acceptă crearea simbolurilor în rețea (de exemplu, acolo unde emitentul nu participă), SRC returnează detaliile cardului (numărul de card și data expirării cardului) în locul detaliilor simbolului în rețea (simbol în rețea, data expirării simbolului și criptograma sau CSC dinamic).
Dacă sunteți un comerciant din S.U.A. și ați indicat că doriți să vă utilizați drepturile prevăzute în amendamentul Durbin, SRC furnizează detaliile cardului (numărul de card și data de expirare a cardului) pentru cardurile de debit.
Detaliile de plată SRC din răspunsul la tranzacție prin API
Detaliile de plată selectate de plătitor în timpul interacțiunii SRC sunt stocate în sesiune și sunt returnate în răspunsul la tranzacție pentru solicitările API efectuate prin intermediul sesiunii. Atunci când SRC furnizează detaliile simbolului de rețea, sunt furnizate atât detaliile simbolului de rețea, cât și detaliile cardului (ascunse).
În funcție de tipul de detalii de plată returnate de sistemul SRC, veți primi următoarele detalii în răspunsul API.
Simbol de rețea cu criptogramă completă (American Express nu acceptă acest tip de simbol de rețea) (Criptograma nu este returnată în răspunsurile de tranzacție) |
|
Simbolul în rețea cu CSC dinamic (CSC nu este returnat în răspunsurile de tranzacție) |
|
Numărul de card și data de expirare |
|
Detalii plătitor
Numele și numărul de telefon al plătitorului sunt furnizate în răspunsul de tranzacție în grupul de parametri customer
.
Adresa de e-mail a plătitorului este furnizat în răspunsul de tranzacție în câmpul customer.email
, dacă ați setat consumerEmailAddressRequested
la true.
Detalii adresă de facturare
Detaliile adresei de facturare asociate cu cardul sunt furnizate în răspunsul de tranzacție în grupul de parametri billing.address
.
Detalii adresă de livrare
Dacă ați setat collectShippingAddress
la true
, detaliile adresei de livrare sunt furnizate în răspunsul de tranzacție în grupul de parametri shipping.address
.
Tranzacții inițiate de comerciant
Nu trebuie să oferiți opțiunea SRC ca opțiune de validare pentru plătitori, dacă doriți să utilizați ulterior detaliile de plată respective pentru a iniția plățile dintr-o serie, cum ar fi plățile periodice sau în rate. Această caracteristică va fi acceptată într-o ediție viitoare.
Testarea integrării
După ce ați terminat integrarea cu gateway-ul pentru SRC, o puteți testa folosind profilul de testare comerciant (ID-ul de comerciant cu prefixul TEST
). Atunci când folosiți profilul de testare comerciant, gateway-ul oferă un simulator pentru interacțiunea SRC. Simulatorul SRC utilizează un set de detalii de plată predefinite care nu pot fi modificate. Pe baza detaliilor de plată predefinite, puteți declanșa și testa scenarii diferite, așa cum se descrie mai jos.
Cea de-a doua coloană din tabelele de mai jos indică ultimele 4 cifre ale FPAN selectat de plătitor în timpul interacțiunii SRC. Pentru a declanșa un scenariu, selectați FPAN corespunzător pe simulator în timpul interacțiunii plătitorului cu SRC.
Schemă | Ultimele 4 cifre FPAN | ID corelație SRC | Răspuns API UPDATE_SESSION_FROM_WALLET obținut | Răspuns API AUTHORIZE sau PAY obținut |
---|---|---|---|---|
Mastercard | xxx0007 | 783a935d-c6a9-4289-b19d-c3336f998b57 |
|
|
Visa | xxx0003 | 12345671-visaTAVV-expiry0822-colShiptrue |
|
|
Schemă | Ultimele 4 cifre FPAN | ID corelație SRC | Răspuns API UPDATE_SESSION_FROM_WALLET obținut | Răspuns API AUTHORIZE sau PAY obținut |
---|---|---|---|---|
Mastercard | xxx0008 | 261af700-e576-43bf-af92-bd0f6810e8fb |
|
|
Visa | xxx0002 | 12345671-visaDTVV-expiry0822-colShiptrue |
|
|
American Express | xxx0017 | cf3de1e0-55a2-44cf-9563-5ef9e648c492 |
|
|
Schemă | Ultimele 4 cifre FPAN | ID corelație SRC | Răspuns API UPDATE_SESSION_FROM_WALLET obținut | Răspuns API AUTHORIZE sau PAY obținut |
---|---|---|---|---|
Mastercard | xxx0305 | 8e455e8b-4e52-46cf-a3da-83aa3cf9a76e |
|
|
Visa | xxx0001 | 12345671-visa1-expiry0822 |
|
|
American Express | xxx4564 | bb978084-42b7-4985-af9d-2e41ee0a370c |
|
|
Testarea SRC cu autentificarea 3-D Secure
Dacă profilul dvs. de comerciant este activat pentru Autentificarea EMV 3-D Secure (3DS2) puteți utiliza detaliile de testare SRC afișate în tabelul de mai jos pentru a declanșa un flux fluidizat sau un flux de testare.
Schemă | Ultimele 4 cifre FPAN | ID corelație SRC | Răspuns API obținut |
---|---|---|---|
Mastercard | xxx0009 | 1049624e-cc67-45f6-bd5f-c625eb4c6cc1 |
|
Visa | xxx4222 | 12345671-SRC3DSChallenge-expiry0822-colShiptrue |
|
American Express | xxx0017 | 16e051bc-bd25-46db-a7d3-d2944fbb05cf |
|
Schemă | Ultimele 4 cifre FPAN | ID corelație SRC | Răspuns API obținut |
---|---|---|---|
Mastercard | xxx0010 | 16e051bc-bd25-46db-a7d3-d2944fbb05cf |
|
Visa | xxx4180 | 12345671-SRC3DSFrictionless-expiry0822-colShiptrue |
|
American Express | xxx4564 | 17e051bc-bd25-46db-a7d3-d2944fbb05cf |
|