Integration Types
Alte caracteristici
Card Payments
Mobile Wallets
Alternative Payment Methods
Resources
Modelul Hosted Payment Session cu JavaScript utilizează următoarele metode și obiecte JavaScript pentru a returna un identificator de sesiune care conține detaliile cardului plătitorului. Trebuie să trimiteți identificatorul de sesiune returnat către serverul dvs. web pentru a iniția o plată sau o tranzacție de stocare. Pentru mai multe informații, consultați secțiunea Realizarea unei operațiuni prin utilizarea sesiunii.
Setează contul comerciant care va fi utilizat pentru tranzacție.
setMerchant(merchantID)
merchantId
Obligatoriu. Identificatorul comerciant furnizat dvs. de către eGenius Platform.
Void
Trimite o solicitare de creare a unei sesiuni și o actualizează cu detaliile cardului.
createSession(sessionDetails, createSessionCallback)
sessionDetails
Obligatoriu. Parametrul obiect pentru specificarea detaliilor cardului.
createSessionCallback
Obligatoriu. Funcția pentru manipularea răspunsului. Definită ca createSessionCallback = function(createSessionResponse)
Trimite o solicitare de creare sau actualizare a unei sesiuni.
updateSession([sessionId], sessionDetails, updateSessionCallback)
sessionId
Opțional. Dacă transmiteți parametrul sessionId, sunt actualizate detaliile sesiunii, dacă aceasta există. Dacă nu transmiteți un identificator de sesiune, este creată o sesiune nouă.
sessionDetails
Obligatoriu. Parametrul obiect pentru specificarea detaliilor cardului.
updateSessionCallback
Obligatoriu. Funcția pentru manipularea răspunsului. Definită ca updateSessionCallback = function(updateSessionResponse)
Lansează lightboxul Visa Checkout și completează detaliile de plată din interacțiune într-o sesiune de plată.
showVisaCheckout([sessionId], options, callback)
sessionId
Opțional. Un identificator pentru o sesiune de plată; dacă nu este furnizat, va fi creată o nouă sesiune de plată.
options
Obligatoriu. Permite controlul opțiunilor oferite în lightboxul Visa Checkout. Dacă nu doriți să controlați opțiunile, puteți să-l setați cu valoarea null sau un obiect gol.
Opțiune | Tipul datelor | Descriere | Valori |
---|---|---|---|
options.acceptedCards | enum | Controlează tipurile de carduri care pot fi selectate de către plătitor în lightboxul Visa Checkout. | MASTERCARD AMEX DISCOVER VISA |
options.paymentConfirmation | enum | Controlează dacă butonul de confirmare de pe ultima pagină este afișat ca "Plată" sau "Continuare" | CONFIRM_AT_PROVIDER – afișează „Pay” în lightboxul Visa Checkout CONFIRM_AT_MERCHANT – afișează „Continue” în lightboxul Visa Checkout |
options.paymentConfirmationMessage | String | Mesajul afișat pentru plătitor alături de butonul de confirmare în lightboxul Visa Checkout. Furnizați acest text în limba definită în options.locale . |
Continuare la comerciant pentru finalizarea achiziției |
options.merchant.logo | URL | Sigla comerciantului afișată în lightboxul Visa Checkout. | https://test.te |
options.merchant.displayName | String | Numele comerciantului care doriți să fie afișat ca mesaj implicit în lightboxul Visa Checkout. În mod normal, acesta este numele companiei dvs. | comerciantul |
options.locale | String | Controlează setările regionale utilizate pentru afișarea lightboxul Visa Checkout. Implicit, setările regionale ale browserului plătitorului | en_us en_au en_ca fr_ca |
options.country | Cod ISO țară din 3 litere | Controlează steagul național afișat în partea din dreapta-sus în lightboxul Visa Checkout. | AUS USA |
options.order.amount | Decimal | Afișează valoarea comenzii în lightboxul Visa Checkout. | 10.50, 200.00 |
options.order.currency | Cod ISO monedă din 3 litere | Afișează moneda comenzii în lightboxul Visa Checkout. | USD |
callback
Obligatoriu. O funcție care apelează rezultatul interacțiunii cu lightboxul.
Parametrul obiect obligatoriu sessionDetails
conține detaliile cardului ce trebuie stocate în sesiunea nou creată. Nu este obligatorie specificarea tuturor câmpurilor — puteți colecta detalii parțiale pentru card; totuși, cardExpiryMonth
și cardExpiryYear
sunt câmpuri obligatorii, dacă oricare dintre acestea este specificat.
String cardNumber
Opțional. Numărul cardului de credit așa cum este imprimat pe card. Acceptă până la maxim 30 de caractere, inclusiv cifre și simbolurile „-” și „ ” ca valoare de intrare.
String cardSecurityCode
Opțional. Codul de verificare al cardului, așa cum este imprimat pe spatele sau fața cardului.
String cardExpiryMonth
Obligatoriu dacă valoarea pentru cardExpiryYear
este specificată. Luna, așa cum este imprimată pe card. Lunile sunt numerotate de la Ianuarie=1, până la Decembrie=12.
String cardExpiryYear
Obligatoriu dacă valoarea pentru cardExpiryMonth
este specificată. Anul, așa cum este imprimat pe card.
var sessionDetails = function() { return { cardNumber: document.getElementById('cardNumber').value, cardSecurityCode: document.getElementById('cardSecurityCode').value, cardExpiryMonth: document.getElementById('expiryMonth').value, cardExpiryYear: document.getElementById('expiryYear').value } }
Obiectul response
returnat de către eGenius Platform ca răspuns la apelul HostedForm.createSession( )/HostedForm.updateSession( ).
String status
Starea generală a solicitării HostedForm.createSession( )/HostedForm.updateSession( ) așa cum este returnată de către eGenius Platform.
String session
Identificatorul de sesiune care conține detaliile cardului. Este obligatoriu să utilizați acest identificator în locul detaliilor cardului la inițierea unei tranzacții de plată.
String cardBrand
Tipul cardului utilizat pentru a descrie cardul , care este recunoscut și acceptat global. Pentru multe dintre tipurile principale de carduri acesta este identic cu numele schemei. În unele piețe, un card poate fi, de asemenea, codenumit cu un brand local, recunoscut și acceptat în țara/regiunea de origine (consultați informațiile pentru câmpul cardLocalBrand).
Puteți utiliza această informație pentru a susține decizii de supra-taxare. Aceste informații sunt colectate din surse terțe și este posibil să nu fie întotdeauna exacte.
String cardScheme
Schema cardului pentru cardul utilizat în solicitarea HostedForm.createSession( )/HostedForm.updateSession( ).
String cardFundingMethod
Metoda utilizată de plătitor pentru furnizarea de fonduri pentru plată.
Puteți utiliza această informație pentru a susține decizii de supra-taxare. Aceste informații sunt colectate din surse terțe și este posibil să nu fie întotdeauna exacte.
String cardLocalBrand
Tipul cardului utilizat pentru a descrie un card, recunoscut și acceptat în țara/regiunea de origine. Cardul poate fi, de asemenea, codenumit cu un brand, recunoscut și acceptat global (consultați informațiile pentru câmpul cardBrand).
Puteți utiliza această informație pentru a susține decizii de supra-taxare. Aceste informații sunt colectate din surse terțe și este posibil să nu fie întotdeauna exacte.
Object fieldsInError
Un obiect ale cărui proprietăți corespund numelor câmpurilor care prezintă erori. Valorile indică, cauza erorii.
{ "status":"ok", "session":"SESSION000264159551414428148515", "cardFundingMethod":"credit", //possible values: CHARGE, CREDIT, DEBIT, UNKNOWN "cardScheme":"visa",// possible values AMEX, DINERS_CLUB, DISCOVER, JCB, MASTERCARD, UATP, VISA, OTHER "cardBrand":"visa" //possible values: AMEX, DINERS_CLUB, DISCOVER, JCB, MAESTRO, MASTERCARD, VISA, UATP, LOCAL_BRAND_ONLY, UNKNOWN }
Obiectul fieldsInError
analizează erorile referitoare la câmpuri returnate în răspuns. Erorile sunt returnate în următorul format: {"field_name":"error_code", ...}
, de exemplu, {cardNumber:"invalid", cardExpiryYear:"missing"}
String cardNumber
Numărul cardului de credit, așa cum a fost transmis în obiectul sessionDetails.
String cardSecurityCode
Codul de verificare al cardului, așa cum a fost transmis în obiectul sessionDetails.
String cardExpiryMonth
Luna de expirare, așa cum a fost transmisă în obiectul sessionDetails.
String cardExpiryYear
Anul de expirare, așa cum a fost transmis în obiectul sessionDetails.
String invalid
Indică faptul că acel câmp este nevalid.
String missing
Indică faptul că un câmp obligatoriu lipsește.
//fields_in_error example { "status":"fields_in_error", "fieldsInError": { "cardExpiryYear":"invalid", "cardSecurityCode":"invalid", "cardExpiryMonth":"invalid", "cardNumber":"invalid" } }