OPAY / Techninė informacija / Web API / Pardavėjo gaunami duomenys

Pardavėjo gaunami duomenys

Parametrų duomenys yra UTF-8 koduotės

Dėmesio! Pardavėjo serveris iš OPAY serverio, pranešimų tarp serverių metu, duomenis gaus tik HTTP POST metodu. Pirkėjo nukreipimo į pardavėjo tinklalapį metu, tinklalapiui duomenys gali būti perduodami tiek GET, tiek POST metodu. Standartiškai duomenys bus perduodami GET metodu. Norėdami duomenis gauti POST metodu, kreipkitės į OPAY.

Pardavėjui siunčiami parametrai yra siunčiami kaip vienas parametras pavadinimu encoded. Visi parametrai sudedami į vieną eilutę, kuri yra paverčiama į base64 koduotę. Plačiau apie tai skaitykite skiltyje Duomenų kodavimas siekiant išvengti galimų iškraipymų.

OPAY serveris tokį patį pranešimą gali išsiųsti pakartotinai, todėl Pardavėjas, priimdamas pranešimą, visada turi patikrinti ar jau nėra prieš tai tokio gavęs.
Sėkmingo mokėjimo atveju (status = 1), tai rodys parametras p_token.
Jei Pardavėjas gavo pakartotiną pranešimą apie sėkmingą apmokėjimą (status = 1), kur parametro order_nr reikšmė sutampa su prieš tai gautu (-ais) pranešimu (-ais), bet parametro p_token reikšmės skiriasi, tai reiškia, kad tai atlikti skirtingi mokėjimai už tą patį prekių krepšelį (parametru order_nr grąžinamas Pardavėjo pateiktas užsakymo / krepšelio numeris Pardavėjo sistemoje).

Pardavėjas turi tikrinti parametro status reikšmę.
Ateityje pranešimų tipų (status reikšmių) gali atsirasti daugiau, todėl Pardavėjo serveris turi
reaguoti tik į pranešimus su jam žinomomis parametro status reikšmėmis.

Pardavėjui yra būtina patikrinti ar sutampa suma ir valiuta, kuria gaunamas mokėjimas, su suma ir valiuta, kurios buvo nurodytos siunčiant užklausą į OPAY. Priežastis – atsiskaitant kai kurias mokėjimo būdais (pvz.: Pavedimu banke) Pirkėjas gali klaidingai nurodyti sumą ar valiutą.
Pardavėjui siunčiamame pranešime apie sėkmingą mokėjimą pateikiama valiuta (parametras currency), suma (parametras amount), kurias Pardavėjas siuntė į OPAY, ir valiuta (parametras p_currency), suma (parametras p_amount), kurias Pirkėjas sumokėjo. Nesutampant šiems parametrams, OPAY papildomai informuos Pardavėją el. paštu, tačiau yra svarbu, kad Pardavėjo sistema pati atrastų nesutapimus ir atliktų teisingus Pardavėjo nurodytus tolimesnius veiksmus.

OPAY sistemai siunčiant atsakymą į Pardavėjo pateiktą interneto adresą, skirtą komunikacijai tarp serverių (parametras web_service_url), Pardavėjo serveris turi atsakyti OPAY sistemai, kad Pardavėjo sistema duomenis priimė. Pardavėjo sistema turi grąžinti tekstą „OK“ (be kabučių). OPAY sistema nekreipia dėmesio į HTTP antraštėje (angl. „header“) pateiktus įrašus (Pvz.: Status ar Content-Type), ji tikrina teksto dalį, kur laukia atsakymo „OK“. OPAY serveris, išsiuntęs užklausą su pranešimu, laukia atsakymo 3 sekundes.
OPAY sistema, nesulaukusi atsakymo ar negavusi „OK“, laiko, kad pranešimas buvo negautas, todėl pakartotinai jį siųs vėliau. Po pirmojo nesėkmingo bandymo, OPAY sistema bandys išsiųsti pakartotinai duomenis dar 3 kartus. Pirmą kartą – po 1 min., antrą – po 5 min., o trečią – po 1 val.
Jei ir po trečiojo (iš viso ketvirtojo) bandymo OPAY sistema nesulaukia teisingo atsakymo, šis pranešimas daugiau automatiškai siunčiamas nebebus.

Lentelė Nr. 2
Gaunamų parametrų aprašymas.

  siunčiamas visada.
  siunčiamas priklausomai nuo Pardavėjo siųstų duomenų arba informacijos, kurią pateikia OPAY mokėjimų Partneris.
  nesiunčiamas.
Parametras
tipas(maks. ilgis)
Galimos reikšmės Kai atsakymo parametras status = 1 Kai atsakymo parametras status = 0 Kai atsakymo parametras status = 2, status = 3 Kai atsakymo parametras status = 5 Rodyti aprašymus Slėpti aprašymus
status
int(1)
0, 1, 2, 3, 5         Rodyti aprašymąSlėpti aprašymą
Šis parametras apibrėžia pranešimo tipą.

0 – Mokėjimas (Operacija) neįvyko per nurodytą (parametru time_limit) laiką. Pranešimas siunčiamas tik į parametere web_service_url (Lentelė Nr. 1) nurodytą adresą ir tik tuo atveju, kai pardavėjui siunčiant užklausą į OPAY buvo nurodytas time_limit parametras.

1 – Mokėjimas (Operacija) įvykdytas sėkmingai. Naudojantis sandartiniu OPAY funkcionalumu, „status = 1“ yra vienintėlis OPAY pranešimo tipas. Visi kiti pranešimai aktyvuojasi papildomai, parametrais, aprašytais lentelėje Nr. 1.
Pranešimas yra siunčiamas kai vartotojas nukreipiamas į redirect_url (Lentelė Nr. 1) nurodytą adresą, kartu su HTTP GET metodu perduodamais duomenimis.
Pranešimas pakartotinai siunčiamas į parametre web_service_url (Lentelė Nr. 1) nurodytą adresą, kartu su HTTP POST metodu perduodamais duomenis.
Pranešimas, ateinantis kartu su vartotoju (į redirect_url) ir pranešimas, siunčiamas tiesiai į serverį (į web_service_url) vienas kito atžvilgiu yra asinchroniški. Tai yra, pirma gali ateiti vienas, arba pirma kitas. Vartotojas su pranešimu iš viso gali neateiti (į redirect_url), jei uždarytų naršyklę. Bet pranešimas į serverį (web_service_url) siunčiamas visada.
2 – Mokėjimo nurodymas priimtas. Jei Pardavėjas, siųsdamas užklausą mokėjimui, nurodė parametro redirect_on_success reikšmę „0“, tai grįžtantis po mokėjimo Pirkėjas (Pirkėjas visada nukreipiamas į redirect_url nurodytą adresą) gali grįžti su šio tipo pranešimu. Pardavėjui pateikus redirect_on_success = 0, OPAY iš karto, nelaukiant mokėjimo būsenos iš Partnerio, Pirkėją grąžina į Pardavėjo nurodytą parametre redirect_url adresą. Šis pranešimo tipas yra todėl, kad kai kurie OPAY Partneriai (pvz.: kai kurie bankai) negali iš karto po atlikto mokėjimo pranešti OPAY sistemai ar mokėjimas yra pavykęs

3 – Mokėjimas atšauktas Jei Pardavėjas, siųsdamas užklausą mokėjimui, nurodė parametro pass_through_only reikšmę „1“ ir kitos šiam parametrui reikiamos sąlygos buvo įvykdytos (teisingai nurodytas pass_through_channel_name ir c_email), tai nepavykus ar atšaukus mokėjimą viename iš mokėjimo būdų, Pirkėjas bus grąžintas pas Pardavėją (Pirkėjas visada nukreipiamas į redirect_url nurodytą adresą) su šio tipo pranešimu.

5 – Pirkėjas paspaudė mygtuką „grįžti į pardavėjo tinklalapį“ (Lentelė Nr. 1, parametras back_url). Pirkėjas nukreipiamas į parametre back_url nurodytą adresą kartu su pranešimu, siunčiamu HTTP GET metodu.
website_id
str(10)
          Rodyti aprašymąSlėpti aprašymą
Pardavėjo interneto Parduotuvės unikalus kodas, kurį OPAY suteikia ir nurodo Pardavėjo ir OPAY pasirašytoje Sutartyje.
transaction_id
str(10)
          Rodyti aprašymąSlėpti aprašymą
OPAY suteiktas Operacijos unikalus numeris, kuris identifikuoja Pardavėjo suformuotą transakciją OPAY sistemoje. Naudojant šį numerį galima atsidaryti konkrečiam atsiskaitymui skirtą puslapį.
order_nr
str(40)
          Rodyti aprašymąSlėpti aprašymą
Parduotuvės sugeneruotas užsakymo numeris.
Pardavėjas jį pateikia tam, kad OPAY atsakyme matydamas šį numerį Pardavėjas žinotų kurio tai užsakymo mokėjimo patvirtinimas ar pranešimas apie nepavykusį mokėjimą.
standard
str(9)
opay_8.1         Rodyti aprašymąSlėpti aprašymą
Duomenų mainų specifikacijos versija.
Pardavėjo / OPAY sistemos turi žinoti kurios specifikacijos pagrindu pateikiami / gaunami duomenys.
language
str(3)
LIT         Rodyti aprašymąSlėpti aprašymą
Kokia kalba buvo rodytas OPAY mokėjimo puslapis.
amount
int(10)
          Rodyti aprašymąSlėpti aprašymą
Parametro reikšmė atitinka Pardavėjo siųstą į OPAY reikšmę.
currency
str(3)
EUR         Rodyti aprašymąSlėpti aprašymą
Parametro reikšmė atitinka Pardavėjo siųstą į OPAY reikšmę.
test
str(10)
          Rodyti aprašymąSlėpti aprašymą
Jei šis parametras yra pateiktas, reiškia, kad tai testinis pranešimas. Tikras mokėjimas nebuvo atliktas. Parametro reikšmė atitinka Pardavėjo siųstą į OPAY reikšmę
p_token
str(100)
          Rodyti aprašymąSlėpti aprašymą
Mokėjimui skirtas unikalus kodas.
Jei tas pats žmogus tą patį mokėjimą atliktų daugiau nei vieną kartą, visų parametrų reikšmės sutaptų, bet šio parametro reikšmė būtų kita. Jei šio parametro reikšmė kartojasi, reiškia, kad tai pakartotinas pranešimas apie tą patį mokėjimą (Operaciją).
p_amount
int(10)
          Rodyti aprašymąSlėpti aprašymą
Suma centais, kuria Pirkėjas atliko mokėjimą (Operaciją).
p_currency
str(3)
EUR         Rodyti aprašymąSlėpti aprašymą
Valiuta, kuria Pirkėjas atliko mokėjimą (Operaciją).
p_channel
str(30)
          Rodyti aprašymąSlėpti aprašymą
Mokėjimo būdas (Mokėjimo paslauga), kuriuo buvo atliktas mokėjimas.
p_bank
str(30)
          Rodyti aprašymąSlėpti aprašymą
OPAY Partnerio, kurio paslaugomis naudojosi Pirkėjas atlikdamas mokėjimą, sisteminis pavadinimas.
p_local_date_time
str(19)
          Rodyti aprašymąSlėpti aprašymą
Vietinis laikas, kada OPAY gavo pranešimą apie mokėjimą. Laiko formatas: YYYY-MM-DD hh:mm:ss
p_gmt_date_time
str(19)
          Rodyti aprašymąSlėpti aprašymą
GMT laiko juostos laikas, kada OPAY gavo pranešimą apie apmokėjimą. Laiko formatas: YYYY-MM-DD hh:mm:ss
c_full_name
str(100)
          Rodyti aprašymąSlėpti aprašymą
Pirkėjo vardas ir pavardė. Pateikiama, jeigu OPAY mokėjimų Partneris (pvz.: bankas) pateikia tokią informaciją OPAY.
c_account_nr
str(50)
          Rodyti aprašymąSlėpti aprašymą
Pirkėjo sąskaitos numeris, iš kurios Pirkėjas atliko mokėjimą. Pateikimas, jeigu OPAY mokėjimų Partneris (pvz.: bankas) pateikia tokią informaciją OPAY.
c_email
str(100)
          Rodyti aprašymąSlėpti aprašymą
Pirkėjo el. pašto adresas.
Pastaba: El. pašto adresas gali skirtis nuo to, kurį Pardavėjas pateikė OPAY, kadangi OPAY suteikia galimybę Pirkėjui redaguoti Pardavėjo pateiktą Pirkėjo el. pašto adresą.
c_mobile_nr
str(30)
          Rodyti aprašymąSlėpti aprašymą
Pirkėjo mobilaus telefono numeris.
Pastaba: mobilaus telefono numeris gali skirtis nuo to, kurį Pardavėjas pateikė OPAY, kadangi OPAY suteikia galimybę Pirkėjui redaguoti Pardavėjo pateiktą Pirkėjo mobilaus telefono numerį.
rsa_signature
str(700)
          Rodyti aprašymąSlėpti aprašymą
OPAY, siųsdama duomenų paketą, pasirašo jį tuo būdu, kuriuo Pardavėjas pasirašė siųsdamas savo užklausą į OPAY. Pasirašymo būdai sutariami Sutartyje.
password_signature
str(32)
          Rodyti aprašymąSlėpti aprašymą
OPAY, siųsdama duomenų paketą, pasirašo jį tuo būdu, kuriuo Pardavėjas pasirašė siųsdamas savo užklausą į OPAY. Pasirašymo būdai sutariami Sutartyje.