Fizetési folyamat
A fizetési folyamat leírását négy részre bontottuk a könnyebb átláthatóság miatt. Az elválasztás alapját a kereskedő boltjából indított négy fő lépés adja, ezek a lépések a következők:
A. Init
- kétlépcsős tranzakció inicializálása és a vásárló adatainak átadása rendszerünknek
B. Start
- kétlépcsős tranzakció indítása és a vásárló átirányítása a fizetési szolgáltatóhoz
C. Result
- kétlépcsős tranzakció eredményének lekérése rendszerünkből
D. Close
- kétlépcsős tranzakció lezárása
Az A, B és C lépések együttesen adják ki a vásárló jelenlétében történő fizetési folyamatot, ami a tranzakciós összeg zárolásával végződik.
A D lépés az első három lépést követően később is elvégezhető, de ennek hatására fejeződik be a tranzakció terheléssel, vagy a zárolt összeg feloldásával.
A felsorolt pontok egy sikeres fizetési folyamatot írnak le.
A. Init
- kétlépcsős tranzakció inicializálása és a vásárló adatainak átadása rendszerünknek
Init
- kétlépcsős tranzakció inicializálása és a vásárló adatainak átadása rendszerünknekA kereskedő oldala rögzíti a vásárló elektronikus fizetési szándékát,
ezután a kereskedő oldala új, kétlépcsős fizetési tranzakciót kezdeményez rendszerünkben.
Rendszerünk hitelesíti a beérkezett kérést (autentikáció),
ezután rendszerünk egy egyedi tranzakció azonosítót (
TransactionId
) küld vissza a kereskedőnek (sikeres hitelesítés esetén).A kereskedő oldala tárolja az egyedi tranzakció azonosítót.
Hitelesítés (autentikáció) során rendszerünk a következőket ellenőrzi:
a kereskedő boltja szerepel rendszerünkben a megadott boltnév (
StoreName
) és API kulcs (ApiKey
) párossalaz API kérés a kereskedő által előre megadott IP címről érkezik (az engedélyezett IP címeket a PayAdmin felületén adhatja meg a megfelelő jogosultsággal rendelkező felhasználó)
a kereskedő boltjához hozzá van rendelve a tranzakcióban szereplő szolgáltatás, devizanem és végrehajtási mód (a szolgáltatás ebben az esetben a fizetési szolgáltatót takarja, a végrehajtási mód pedig az azonnali vagy későbbi terhelést jelöli)
A TransactionId
olyan egyedi azonosító melyet a BIG FISH Payment Gateway rendszere hoz létre. Segítségével egy tranzakció egyértelműen beazonosítható rendszerünkben és a PayAdmin felületén. Fontos, hogy a TransactionId
nem azonos a ProviderTransactionId
azonosítóval. Utóbbi az egyes fizetési szolgáltatók saját rendszereiben azonosítja be az adott tranzakciót.
B. Start
- kétlépcsős tranzakció indítása és a vásárló átirányítása a fizetési szolgáltatóhoz
Start
- kétlépcsős tranzakció indítása és a vásárló átirányítása a fizetési szolgáltatóhozA kereskedő oldala átirányítja a vásárlót rendszerünkbe (HTTP Redirect) a tárolt tranzakció azonosítóval.
Rendszerünk ellenőrzi a tranzakció azonosítót és átirányítja a vásárlót a fizetési szolgáltatóhoz (sikeres ellenőrzés esetén).
A vásárló megadja bankkártya adatait (vagy kiválasztja a megfelelő mobiltárcát) a fizetési szolgáltató oldalán. (Ezen a ponton a vásárló átirányításra kerülhet a kártyakibocsátó bankhoz, ahol személyazonosságát 3DS hitelesítési folyamattal igazolhatja.)
A fizetési szolgáltató visszairányítja a vásárlót rendszerünkbe majd megtörténik a tranzakció összegének befoglalása.
Rendszerünk lekérdezi a befoglalás eredményét a fizetési szolgáltatótól, majd beállítja a tranzakció státuszát a fizetési szolgáltató válasza alapján,
ezután rendszerünk a tranzakció azonosítóval visszairányítja a vásárlót a kereskedő oldalára (az inicializáció (
Init
) során megadott visszatérési URL címre (ResponseUrl
)).Ezzel párhuzamosan rendszerünk a tranzakció végstátuszának beállítását követően aszinkron módon meghívja az inicializáció (
Init
) során átadottNotificationUrl
címet is.
A B.3. lépésben leírt 3DS hitelesítési folyamat (3D Secure vagy 3D Secure Code) a pénzügyi visszaélések megakadályozását célzó megoldás. Fizetés során a 3DS a kötelező kártyaadatok bekérésén túl egy egyszer használatos kóddal biztosítja a kártyabirtokos védelmét visszaélésekkel szemben. Használata egyszerű, a vásárlónak mindössze egy mobiltelefonra van szüksége.
C. Result
- kétlépcsős tranzakció eredményének lekérése rendszerünkből
Result
- kétlépcsős tranzakció eredményének lekérése rendszerünkbőlA kereskedő oldala a
ResponseUrl
hívás hatására egy tranzakció azonosítót tartalmazóResult
kéréssel lekérdezi a befoglalás eredményét rendszerünkből.Rendszerünk ellenőrzi a tranzakció azonosítót,
ezután rendszerünk megválaszolja a befoglalás státuszát a kereskedő oldalának (sikeres ellenőrzés esetén).
A kereskedő oldala tárolja a befoglalás státuszát és értesíti a vásárlót a tranzakció eredményéről.
Figyeljen arra, hogy minden NotificationUrl
hívást követően is indítson egy Result
kérést rendszerünk felé.
D. Close
- Kétlépcsős tranzakció lezárása
A kereskedő kezdeményezi a tranzakció lezárását a tranzakció azonosító segítségével (
TransactionId
) és a lezárás módjának megadásával, mely lehet: • a teljes befoglalt összeg terhelése • a befoglalt összeg részterhelése (és a maradék összeg feloldása) • a teljes befoglalt összeg feloldásaRendszerünk hitelesíti a beérkezett kérést, majd továbbítja azt a fizetési szolgáltató felé, aki végrehajtja a tranzakció lezárását.
Ezután rendszerünk megválaszolja a lezárás eredményét a kereskedő oldalának (sikeres hitelesítés esetén).
A kereskedő oldala tárolja a kapott választ és értesíti a vásárlót a tranzakció eredményéről.
Last updated