Această pagină descrie modul de trimitere către gateway a tranzacțiilor inițiate de posesorul cardului și de comerciant pentru respectarea standardelor schemei de carduri în vederea procesării tranzacțiilor respective.
Puteți avea o integrare în care colectați detaliile de plată de la plătitori, le stocați și apoi le utilizați pentru a procesa plățile viitoare pentru plătitori. Dacă acesta este cazul, trebuie să trimiteți gateway-ului, în tranzacția inițială, informația că urmează să stocați detaliile de plată și să le utilizați în viitor. Trebuie, de asemenea, să furnizați aceste informații gateway-ului atunci când utilizați detaliile de plată stocate pentru a efectua plăți ulterioare, fie inițiate de către plătitor (tranzacție inițiată de posesorul cardului), fie de către dvs. în calitate de comerciant, ca urmare a acordului de plată cu plătitorul (tranzacție inițiată de comerciant).
Acest lucru are rolul de a asigura respectarea standardelor schemei de carduri pentru procesarea tranzacțiilor inițiate de posesorul cardului și de comerciant pe baza detaliilor de plată stocate (aceste standarde poartă și numele de cerințe privind acreditările înregistrate). Trimiterea către gateway a informațiilor de identificare a detaliilor de plată stocate, a tranzacțiilor inițiate de posesorul cardului și a celor inițiate de comerciant poate asigura:
Gateway-ul acceptă următoarele plăți care utilizează detaliile de plată stocate începând din API v54:
O tranzacție inițiată de posesorul cardului este o tranzacție efectuată cu participarea activă a plătitorului. De exemplu, o tranzacție de comerț electronic sau efectuată în urma unei comenzi poștale sau telefonice.
Pentru a indica faptul că tranzacția a fost inițiată de plătitor, trebuie să setați transaction.source
la INTERNET
/MOTO
/MAIL_ORDER
/TELEPHONE_ORDER
/VOICE_RESPONSE
/CALL_CENTER
. În cadrul acestor instrucțiuni, vom utiliza o plată prin internet (transaction.source
= INTERNET
) pentru a ilustra o tranzacție inițiată de posesorul cardului; puteți utiliza, însă, oricare dintre celelalte valori permise.
O tranzacție inițiată de posesorul cardului poate reprezenta o plată unică, pentru care detaliile de plată furnizate de plătitor nu vor fi, în mod normal, păstrate. Puteți, însă, încheia un acord cu plătitorul pentru a stoca detaliile de plată ale acestuia pentru utilizare ulterioară (în general, în cadrul unui proces de înscriere a clientului sau de creare a unui cont), efectuând ulterior tranzacții inițiate de posesorul cardului pe baza detaliilor de plată stocate.
Dacă plătitorul acceptă, în timpul unei interacțiuni cu acesta, stocarea detaliilor sale de plată în vederea utilizării ulterioare, trebuie să completați următoarele câmpuri în tranzacția inițială:
sourceOfFunds.type
=CARD
sau SCHEME_TOKEN
sourceOfFunds.provided.card.*
sau sourceOfFunds.token
transaction.source
=INTERNET
sourceOfFunds.provided.card.storedOnFile
:TO_BE_STORED
Pentru plățile ulterioare inițiate de plătitor (nu de către dvs.) și dacă sunt utilizate detaliile de plată stocate ale plătitorului, trebuie să completați:
sourceOfFunds.type
=CARD
sau SCHEME_TOKEN
sourceOfFunds.provided.card.*
sau sourceOfFunds.token
transaction.source
=INTERNET
sourceOfFunds.provided.card.storedOnFile
:STORED
Pentru informații privind modul în care trebuie să indicați gateway-ului dacă detaliile de plată sunt stocate, nestocate sau intenționați să le stocați, consultați Întrebările frecvente.
O tranzacție inițiată de comerciant este una efectuată pe baza detaliilor de plată stocate, însă fără participarea activă a plătitorului. Puteți efectua tranzacții inițiate de comerciant dacă oferiți:
În astfel de cazuri, va fi necesar să încheiați un acord cu plătitorul în privința acestor servicii. Plătitorul trebuie să fie de acord ca dvs. să îi stocați detaliile de plată în acest scop și trebuie să vă permită să inițiați ulterior plăți pe baza detaliilor de plată stocate, fără participarea activă a acestuia.
Atunci când încheiați un acord cu plătitorul, prin care acesta vă permite să efectuați ulterior plăți inițiate de comerciant, este necesar să includeți, următoarele detalii ale acordului în tranzacția inițială din serie, respectiv în tranzacția inițiată de posesorul cardului:
agreement.id
: O valoare unică, generată de către dvs. pentru a identifica un acord de plată încheiat cu plătitorul. Este necesar, de asemenea, să includeți această valoare în tranzacțiile ulterioare inițiate de comerciant, pentru a indica apartenența plăților la o serie. Acest lucru are rolul de a asigura respectarea cerințelor schemei de carduri, ID-ul acordului având funcția de identificator prin care prima tranzacție, inițiată de posesorul cardului, este asociată cu tranzacțiile ulterioare, inițiate de comerciant. agreement.type
: Indică dacă acordul comercial încheiat cu plătitorul are ca obiect plăți periodice, rate sau neprogramate. Acesta trebuie furnizat numai dacă încheiați un acord cu plătitorul în cadrul tranzacției inițiate de posesorul cardului.Referință API detalii acord [REST][NVP]
Atunci când trimiteți plăți, trebuie să faceți distincția între prima tranzacție din serie, respectiv tranzacția inițiată de posesorul cardului, și orice plăți ulterioare inițiate de comerciant în aceeași serie. Puteți face acest lucru utilizând câmpul transaction.source
, unde, pentru tranzacția inițială, trebuie să setați transaction.source
=INTERNET
sau orice altă valoare permisă pentru a indica faptul că tranzacția a fost inițiată de către plătitor. Pentru plățile ulterioare din aceeași serie, trebuie să setați transaction.source
=MERCHANT
pentru a indica faptul că tranzacția a fost inițiată de dvs. Furnizorul dvs. de servicii de plată trebuie activeze opțiunea „MERCHANT” ca sursă permisă a tranzacțiilor în legătura dvs. de achizitor comerciant.
Referință API Sursă tranzacție [REST][NVP]
Atunci când trimiteți prima tranzacție inițiată de posesorul cardului sau plăți ulterioare inițiate de comerciant în aceeași serie, trebuie să indicați gateway-ului dacă detaliile de plată sunt stocate, nestocate sau intenționați să le stocați. Pentru mai multe informații, consultați întrebările frecvente.
O plată periodică este un acord prin care plătitorul vă autorizează să procesați plăți pentru facturi periodice, la intervale stabilite (de exemplu, săptămânal sau lunar).
Puteți trimite către gateway plăți periodice pentru procesare dacă aveți un acord de plată cu plătitorul, prin care acesta acceptă stocarea de către dvs. a detaliilor de plată pentru utilizare ulterioară și vă autorizează să inițiați plăți periodice ulterioare fără participarea activă a acestuia.
Pentru a permite acest lucru, trebuie să completați următoarele câmpuri în tranzacția inițială a seriei:
sourceOfFunds.type
=CARD
sau SCHEME_TOKEN
sourceOfFunds.provided.card.*
sau sourceOfFunds.token
transaction.source
=INTERNET
sourceOfFunds.provided.card.storedOnFile
=TO_BE_STORED
agreement.id
agreement.type
=RECURRING
Pentru plățile ulterioare din serie care sunt inițiate de către dvs., trebuie să completați:
sourceOfFunds.type
=CARD
sau SCHEME_TOKEN
sourceOfFunds.provided.card.*
sau sourceOfFunds.token
transaction.source
=MERCHANT
sourceOfFunds.provided.card.storedOnFile
=STORED
agreement.id
: Valoarea agreement.id trebuie să fie identică cu cea furnizată în tranzacția inițială. Acest lucru permite gateway-ului să asocieze plățile dintr-o serie.Plata ratelor este un acord prin care plătitorul autorizează efectuarea mai multor plăți pentru o singură achiziție, procesate la intervale stabilite. De exemplu, o achiziție poate fi plătită în șase rate lunare.
Puteți trimite către gateway plăți de rate pentru procesare dacă aveți un acord de plată cu plătitorul, prin care acesta acceptă stocarea de către dvs. a detaliilor de plată pentru utilizare ulterioară și vă autorizează să inițiați plăți de rate ulterioare fără participarea activă a acestuia.
Pentru a permite acest lucru, trebuie să completați următoarele câmpuri în tranzacția inițială a seriei:
sourceOfFunds.type
=CARD
sau SCHEME_TOKEN
sourceOfFunds.provided.card.*
sau sourceOfFunds.token
transaction.source
=INTERNET
sourceOfFunds.provided.card.storedOnFile
=TO_BE_STORED
agreement.id
agreement.type
=INSTALLMENT
Pentru plățile de rate ulterioare din serie care sunt inițiate de către dvs., trebuie să completați:
sourceOfFunds.type
=CARD
sau SCHEME_TOKEN
sourceOfFunds.provided.card.*
sau sourceOfFunds.token
transaction.source
=MERCHANT
sourceOfFunds.provided.card.storedOnFile
=STORED
agreement.id
: Valoarea agreement.id trebuie să fie identică cu cea furnizată în tranzacția inițială. Acest lucru permite gateway-ului să asocieze plățile dintr-o serie.O plată neplanificată este un acord prin care plătitorul autorizează comerciantul să retragă automat fonduri pentru o plată, pentru o achiziție convenită, atunci când acest lucru este necesar (fără planificare). De exemplu, adăugarea automată de fonduri atunci când soldul contului scade sub un anumit prag.
Puteți trimite către gateway plăți neplanificate pentru procesare dacă aveți un acord de plată cu plătitorul, prin care acesta acceptă stocarea de către dvs. a detaliilor de plată pentru utilizare ulterioară și vă autorizează să inițiați plăți neplanificate ulterioare fără participarea activă a acestuia.
Pentru a permite acest lucru, trebuie să completați următoarele câmpuri în tranzacția inițială a seriei:
sourceOfFunds.type
=CARD
sau SCHEME_TOKEN
sourceOfFunds.provided.card.*
sau sourceOfFunds.token
transaction.source
=INTERNET
sourceOfFunds.provided.card.storedOnFile
=TO_BE_STORED
agreement.id
agreement.type
=UNSCHEDULED
Pentru plățile neplanificate ulterioare din serie care sunt inițiate de către dvs., trebuie să completați:
sourceOfFunds.type
=CARD
sau SCHEME_TOKEN
sourceOfFunds.provided.card.*
sau sourceOfFunds.token
transaction.source
=MERCHANT
sourceOfFunds.provided.card.storedOnFile
=STORED
agreement.id
: Valoarea agreement.id trebuie să fie identică cu cea furnizată în tranzacția inițială. Acest lucru permite gateway-ului să asocieze plățile dintr-o serie.Pentru a respecta standardele schemei de carduri pentru procesarea tranzacțiilor inițiate de posesorul cardului și a celor inițiate de comerciant, trebuie să indicați gateway-ului dacă detaliile de plată sunt stocate, nestocate sau intenționați să le stocați folosind câmpul sourceOfFunds.provided.card.storedOnFile
.
Pentru tranzacția inițială, respectiv cea inițiată de posesorul cardului:
sourceOfFunds.provided.card.storedOnFile
.sourceOfFunds.provided.card.storedOnFile
=TO_BE_STORED
. Acest lucru indică gateway-ului că plătitorul a acceptat stocarea detaliilor de plată. Trebuie să setați această valoare: Pentru plățile ulterioare, fie că este vorba despre o tranzacție inițiată de posesorul cardului, care utilizează detaliile stocate ale plătitorului, sau despre o tranzacție inițiată de comerciant care utilizează detaliile de plată stocate, setați sourceOfFunds.provided.card.storedOnFile
=STORED
Dacă utilizați crearea de simboluri pe gateway, gateway-ul va seta valorile implicite pentru dvs.
sourceOfFunds.provided.card.storedOnFile
=NOT_STORED
sourceOfFunds.provided.card.storedOnFile
=TO_BE_STORED
sourceOfFunds.provided.card.storedOnFile
=STORED
Referință API Stocare internă [REST][NVP]
Dacă nu aveți un identificator unic pentru acordul dvs. cu plătitorul, puteți să:
Dacă, în momentul stabilirii unui acord de plată cu plătitorul, nu intenționați să percepeți nicio plată de la acesta – de exemplu, dacă este vorba despre un abonament la o publicație, iar prima plată este programată în 30 de zile, trebuie să trimiteți o solicitare de verificare cu detaliile acordului:
agreement.id
agreement.type
Tranzacția de verificare va deveni prima tranzacție inițiată de posesorul cardului din serie. Pentru orice plăți ulterioare, utilizați agreement.id
pentru a asocia plățile din serie.
Detaliile de plată asociate unui acord se pot schimba, de exemplu, dacă:
Dacă detaliile cardului s-au schimbat (exceptând cazul reemiterii unui card expirat, împreună cu simbolurile schemei de carduri), trebuie să efectuați o tranzacție inițiată de către posesorul cardului folosind același ID de acord pentru a actualiza detaliile de plată/simbolul de pe gateway înainte de a efectua o tranzacție inițiată de comerciant folosind noul număr de card. În funcție de modelul dvs. de afaceri, puteți alege să creați un acord nou.
Dacă utilizați un simbol de schemă, numărul de card stocat și asociat simbolului schemei poate fi actualizat automat de către schemă.