VAŽNO: Vodič za novim bezbednosnim standardima kod integracije putem OPEN Platform REST API

U nastavku možete videti objašnjenje i primere za usklađivanje sa najnovijim sigurnosnim standardima kod integracije vašeg internet prodajnog mesta sa OPEN platformom. Glavna razlika u odnosu na dosadašnji način integracije je u tome da se svi podaci moraju slati u okviru samog zahteva, a ne kroz URL.

Šta predstavlja bezbednosni rizik?

Trgovac šalje API zahtev, podatke i parametre (uključujući i parametre za autentifikaciju) kroz URL.

Koje korake trgovac mora preduzeti?

Trgovac mora slati Access-Token u Authorization Bearer hederu. Ovo će zameniti potrebu za korišćenjem "authentication" parametara. Access-Token se preuzima iz Portala Trgovca ili se može dobiti od AllSecure službe podrške. Svi ostali podaci i parametri trebaju biti sadržani u samom zahtevu (body) i poslati putem HTTPS. EntityId ostaje obavezan parametar i dalje.

Šta će AllSecure uraditi?

Odmah:

  • AllSecure će odmah dozvoliti slanje Authorization Bearer hedera za svaki zahtev 
  • AllSecure će istovremeno nastaviti do daljnjeg da podržava dosadašnji mehanizam za autentifikaciju

Nakon isteka roka za usklađivanje (koji će biti određen u budućnosti):

  • AllSecure će prestati da podržava zahteve u kojima se podaci (uključujući parametre za autentifikaciju) nalaze u URL
  • AllSecure će odbijati zahteve gde se access-token ne nalazi u Authorization Bearer hederu

Pogledajte ispod nekoliko primera u kojima se vidi razlika između načina kako su se zahtevi slali do sada i kako će izgledati u budućnosti. Ovo ne predstavlja celokupnu listu zahteva, ali će vam dati dovoljno kvalitetan osećaj kako bi se pripremili za promene u narednom periodu.


Kako se radi sada? Kako će se raditi ubuduće?
SecurePay vodič za integraciju

1. PRIPREMA PORUDŽBINE

1. PRIPREMA PORUDŽBINE

Checkout zahtev sa parametrima u okviru URL-a

Checkout zahtev sa parametrima u telu zahteva
curl -X POST https://test.oppwa.com/v1/checkouts? \
authentication.userId=8a8294174b7ecb28014b9699220015cc \
&authentication.password=sy6KJsT8 \
&authentication.entityId=8a8294174b7ecb28014b9699220015ca \
&amount=101.00 \
&currency=EUR \
&paymentType=DB

curl -X POST https://test.oppwa.com/v1/checkouts \
-H "Authorization: Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg=" \
-d "entityId=8a8294174b7ecb28014b9699220015ca" \
-d "amount=92.00" \
-d "currency=EUR" \
-d "paymentType=DB"

2. PRIKAZIVANJE FORME ZA PLAĆANJE - NEMA PROMENA


2. PRIKAZIVANJE FORME ZA PLAĆANJE - NEMA PROMENA

3. STATUS PLAĆANJA

3. STATUS PLAĆANJA

Zahtev za statusom plaćanja sa parametrima u URL-u

Zahtev za statusom plaćanja sa parametrima u telu zahteva
curl -X GET https://test.oppwa.com/v1/checkouts/{id}/payment \
authentication.userId=8a8294174b7ecb28014b9699220015cc \
&authentication.password=sy6KJsT8 \
&authentication.entityId=8a8294174b7ecb28014b9699220015ca

curl -X GET https://test.oppwa.com/v1/checkouts/{id}/payment \
-H "Authorization: Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg=" \
-d "entityId=8a8294174b7ecb28014b9699220015ca"

Server-to-server sinhrone transakcije

SLANJE INICIJALNOG PLAĆANJA

SLANJE INICIJALNOG PLAĆANJA

Zahtev za plaćanjem sa parametrima u URL-u

Zahtev za plaćanjem sa parametrima u telu zahteva
url -X POST https://test.oppwa.com/v1/payments? \
authentication.userId=8a8294174b7ecb28014b9699220015cc \
&authentication.password=sy6KJsT8 \
&authentication.entityId=8a8294174b7ecb28014b9699220015ca \
&amount=101.00 \
&currency=EUR \
&paymentType=DB \
&paymentBrand=VISA \
&card.number=4200000000000000 \
&card.holder=Niki Lauda \
&card.expiryMonth=12 \
&card.expiryYear=2020 \
&card.cvv=123

curl -X POST https://test.oppwa.com/v1/payments \
-H "Authorization: Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg=" \
-d "entityId=8a8294174b7ecb28014b9699220015ca" \
-d "amount=101.00" \
-d "currency=EUR" \
-d "paymentType=DB" \
-d "paymentBrand=VISA" \
-d "card.number=4200000000000000" \
-d "card.holder=Niki Lauda" \
-d "card.expiryMonth=12" \
-d "card.expiryYear=2020" \
-d "card.cvv=123"

Server-to-server asinhrone transakcije

1. SLANJE INICIJALNOG PLAĆANJA

1. SLANJE INICIJALNOG PLAĆANJA

Zahtev za plaćanjem sa parametrima u URL-u

Zahtev za plaćanjem sa parametrima u telu zahteva
curl -X POST https://test.oppwa.com/v1/payments? \
authentication.userId=8a8294174b7ecb28014b9699220015cc \
&authentication.password=sy6KJsT8 \
&authentication.entityId=8a8294174b7ecb28014b9699220015ca \
&amount=101.00 \
&currency=EUR \
&paymentBrand=PAYPAL \
&paymentType=PA \
&shopperResultUrl=https://allsecure.docs.oppwa.com/tutorials/server-to-server

curl -X POST https://test.oppwa.com/v1/payments \
-H "Authorization: Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg=" \
-d "entityId=8a8294174b7ecb28014b9699220015ca" \
-d "amount=101.00" \
-d "currency=EUR" \
-d "paymentBrand=PAYPAL" \
-d "paymentType=PA" \
-d "shopperResultUrl=https://allsecure.docs.oppwa.com/tutorials/server-to-server"

2. REDIREKCIJA KUPCA - BEZ IZMENA


2. REDIREKCIJA KUPCA - BEZ IZMENA

3. STATUS PLAĆANJA

3. STATUS PLAĆANJA

Zahtev za statusom plaćanja sa parametrima u URL-u

Zahtev za statusom plaćanja sa parametrima u telu zahteva
curl -X GET https://test.oppwa.com/v1/payments/{id} \
authentication.userId=8a8294174b7ecb28014b9699220015cc \
&authentication.password=sy6KJsT8 \
&authentication.entityId=8a8294174b7ecb28014b9699220015ca

curl -X GET https://test.oppwa.com/v1/checkouts/{id}/payment \
-H "Authorization: Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg=" \
-d "entityId=8a8294174b7ecb28014b9699220015ca"

Server-to-server tokenizacija

TOKENIZACIJA PODATAKA  - STAND-ALONE TRANSAKCIJA

TOKENIZACIJA PODATAKA - STAND-ALONE TRANSAKCIJA

Zahtev za registracijom sa parametrima u URL-u

Zahtev za registracijom sa parametrima u telu zahteva
curl -X POST https://test.oppwa.com/v1/registrations? \
authentication.userId=8a8294174b7ecb28014b9699220015cc \
&authentication.password=sy6KJsT8 \
&authentication.entityId=8a8294174b7ecb28014b9699220015ca \
&paymentBrand=VISA \
&card.number=4200000000000000 \
&card.holder=Niki Lauda \
&card.expiryMonth=12 \
&card.expiryYear=2020 \
&card.cvv=123

curl -X POST https://test.oppwa.com/v1/registration \
-H "Authorization: Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg=" \
-d "entityId=8a8294174b7ecb28014b9699220015ca" \
-d "paymentBrand=VISA" \
-d "card.number=4200000000000000" \
-d "card.holder=Niki Lauda" \
-d "card.expiryMonth=12" \
-d "card.expiryYear=2020" \
-d "card.cvv=123"

Back-office transakcije

REFUNDACIJA PLAĆANJA (SLIČNO ZA CAPTURE, REVERSAL)

REFUND A PAYMENT (SLIČNO ZA CAPTURE, REVERSAL)

Zahtev za Refundacijom sa parametrima u URL-u

Zahtev za Refundacijom sa parametrima u telu zahteva
curl -X POST https://test.oppwa.com/v1/payments? \
authentication.userId=8a8294174b7ecb28014b9699220015cc \
&authentication.entityId=8a8294174b7ecb28014b9699220015ca \
&authentication.password=sy6KJsT8 \
&amount=10.00 \
&currency=EUR \
&paymentType=RF

curl -X POST https://test.oppwa.com/v1/payments \
-H "Authorization: Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg=" \
-d "entityId=8a8294174b7ecb28014b9699220015ca" \
-d "amount=10.00" \
-d "currency=EUR" \
-d "paymentType=RF"

Recurring plaćanja

SLANJE INICIJALNOG PLAĆANJA

SLANJE INICIJALNOG PLAĆANJA

Inicijalni zahtev za plaćanjem sa parametrima u URL-u

Inicijalni zahtev za plaćanjem sa parametrima u telu poruke
curl -X POST https://test.oppwa.com/v1/payments \
authentication.userId=8a8294174b7ecb28014b9699220015cc \
&authentication.password=sy6KJsT8 \
&authentication.entityId=8a8294174b7ecb28014b9699220015ca \
&amount=92.00 \
&currency=EUR \
&paymentBrand=VISA \
&paymentType=DB \
&card.number=4200000000000000 \
&card.holder=Niki Lauda \
&card.expiryMonth=05 \
&card.expiryYear=2020 \
&card.cvv=123 \
&recurringType=INITIAL \
&createRegistration=true

curl -X POST https://test.oppwa.com/v1/payments \
-H "Authorization: Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg=" \
-d "entityId=8a8294174b7ecb28014b9699220015ca" \
-d "amount=92.00" \
-d "currency=EUR" \
-d "paymentBrand=VISA" \
-d "paymentType=DB" \
-d "card.number=4200000000000000" \
-d "card.holder=Niki Lauda" \
-d "card.expiryMonth=05" \
-d "card.expiryYear=2020" \
-d "card.cvv=123" \
-d "recurringType=INITIAL" \
-d "createRegistration=true"

SLANJE NAKNADNIH PLAĆANJA

SLANJE NAKNADNIH PLAĆANJA

Ponavljajuće plaćanje sa parametrima u URL-u

Ponavljajuće plaćanje sa parametrima u telu poruke
curl -X POST https://test.oppwa.com/v1/registrations/{id}/payments \
authentication.userId=8a8294174b7ecb28014b9699220015cc \
&authentication.password=sy6KJsT8 \
&authentication.entityId=8a8294174b7ecb28014b9699220015ca \
&amount=92.00 \
&currency=EUR \
&paymentType=PA \
&recurringType=REPEATED

curl -X POST https://test.oppwa.com/v1/payments \
-H "Authorization: Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg=" \
-d "entityId=8a8294174b7ecb28014b9699220015ca" \
-d "amount=92.00" \
-d "currency=EUR" \
-d "paymentType=PA" \
-d "recurringType=REPEATED"

Transaction Reports

PRETRAGA TRANSAKCIJA KORISTEĆI PAYMENTID

PRETRAGA TRANSAKCIJA KORISTEĆI PAYMENTID

Pretraga transakcija sa parametrima u URL-u

Pretraga transakcija sa parametrima u telu poruke
curl -X GET https://test.oppwa.com/v1/query/{id}? \
authentication.userId=8a8294174b7ecb28014b9699220015cc \
&authentication.password=sy6KJsT8 \
&authentication.entityId=8a8294174b7ecb28014b9699220015ca

curl -X GET https://test.oppwa.com/v1/query/{id}/payment? \
entityId=8a8294174b7ecb28014b9699220015ca \
-H "Authorization: Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg="