A partnerközpontban történő kártyás fizetési lehetőség megteremtésének első és legfontosabb feltétele, hogy szerződést kell kötni az OTP SimplePay-el. (A program jelenleg csak az OTP SimplePay-el történő kommunikációra van felkészítve)
Információk https://simplepay.hu/kereskedoknek/, valamint szerződéskötési lehetőség: https://simplepay.secure.force.com/register?aggr=sERPaIVR
A Partnerközpont paraméter működés fülének kártyás fizetés sávjában ki kell pipálni a Kártyás fizetés engedélyezése mezőt. Ezután kötelezően meg kell adni azt a fizetési módot, amely esetén a vásárló a kosár lezárásakor átirányításra kerül a SimplePay oldalára.
A SimplePay megköveteli egy adattovábbítási nyilatkozat elfogadását is. Annak érdekében, hogy ezt ne kelljen minden egyes vásárláskor kipipálnia a vevőnek, a nyilatkozat első elfogadását követően a program "megjegyzi", hogy mely ügyféldolgozó fogadta ezt el és tőle már többet ezt nem fogja kérni. Ez a "megjegyzés" úgy történik, hogy a kártyás fizetés kipipálása után kötelezően meg kell adni egy dolgozó kategóriát és tételt, amibe besorolásra kerül az a dolgozó, aki elfogadta a nyilatkozatot.
Kártyás fizetést vevőrendelésre és vevőszámlára lehet eszközölni. Vevőszámla kifizetéshez további követelmény, hogy a fenti mezők után a Számla kártyás kiegyenlítés mezőt is ki kell tölteni. További részleteket lásd a mező leírásánál.
A kártyás fizetés kizárólag Ügyfél dolgozó bejelentkezéssel lehetséges.
A fenti beállítások után a kártyás vásárlás során az alábbi folyamat zajlik:
Rendelés leadásakor,
a kosár lezárás gombra kattintva - ha egyéb feltétel nem akadályozza meg (pl. ha készlet feletti rendelés tiltott és több van a kosárban, mint a készlet, akkor a kosár nem zárható) - felvételre kerül a rendelés a sERPa-ba. Amennyiben a rendelés fizetési módja megegyezik a paraméterben megadott kártyás fizetési móddal, a vásárló átirányításra kerül a SimplePay oldalára. Ahhoz, hogy a fizetéshez jusson a vásárló, szükséges a már említett adattovábbítási nyilatkozat elfogadása és kötelezően meg kell adni egy e-mail címet a SimplePay számára. Adott ügyféldolgozó első vásárlásakor az adattovábbítási nyilatkozat elfogadása mindenképpen szükséges, elfogadás után a fent említett besorolás felvételre kerül hozzá és legközelebb erre már nem lesz szükség. Ugyan ezen a felületen az e-mail cím bekérés akkor válik szükségessé, ha az adott dolgozóhoz a sERPa-ban nincs megadva hivatali e-mail. Ezt is csak egyszer kell megtegye a vásárló, mert az itt megadott e-mail címet visszaírja a program a sERPa-ba, így legközelebb már nem fogjuk kérni.
Vevőszámla kiegyenlítéskor,
a számla melletti bankkártya ikonra kattintva a folyamat a rendeléssel egyező azzal a különbséggel, hogy nincsenek feltételek, a fizetés folyamata azonnal elkezdődik. Összeg nem választható, a számla hátralékos összege egyenlíthető ki, ha az pozitív értékű.
A kártyás fizetés során különböző státuszok lehetségesek, melyek letárolásra kerülnek a sERPa-ban és a vevőrendelés bevitelben nyomon követhetők.
Ezek a státuszok:
- Megkezdett (Az AruforgBizKartyaTranzakcio táblában az Allapot mezőben ez 0-t jelent) rendelés felvételkor automatikusan generálódik.
- Folyamatban (Az AruforgBizKartyaTranzakcio táblában az Allapot mezőben ez 1-t jelent) ezt a SimplePay akkor küldi, ha a kártyát elfogadta.
- Teljesült (Az AruforgBizKartyaTranzakcio táblában az Allapot mezőben ez 2-t jelent) ezt a SimplePay akkor küldi, ha a számlán a terhelés megvalósult.
- Megszakított tranzakció (Az AruforgBizKartyaTranzakcio táblában az Allapot mezőben ez 3-t jelent) olyan esetben tud ilyen státuszba kerülni egy fizetés, amikor a vásárló olyan műveletet hajt végre, amivel a fizetési folyamat megszakad.
- Időtúllépés (Az AruforgBizKartyaTranzakcio táblában az Allapot mezőben ez 4-t jelent) 5 perc alatt nem végzett a fizetéssel.
- Hibás tranzakció (Az AruforgBizKartyaTranzakcio táblában az Allapot mezőben ez 5-t jelent) programhiba a Partnerközpontban.
- Érvénytelen hash (Az AruforgBizKartyaTranzakcio táblában az Allapot mezőben ez 6-t jelent) a visszakapott adatok érvénytelenek, hackertámadás.
- Sikertelen tranzakció (Az AruforgBizKartyaTranzakcio táblában az Allapot mezőben ez 7-t jelent) a megadott kártya érvénytelen, nincs rajta fedezet, stb.
Egy adott rendelés státusz története a Vevőrendelés Kártyás fizetés fülén tekinthető meg, az aktuális státusz pedig az Általános fül Kártyás fizetés státusz mezőben.
Rendelés esetén további részletek:
Állapot >= 3 esetén a kártyás fizetés nem folytatható, azt újra kell kezdeni, ezért ha a sERPa-ba ilyen státusz információ érkezik, akkor a felvett rendelés automatikusan visszamondásra kerül és a vásárló a Partnerközpont felületén a nyitott rendelésekben fogja látni a tételeket. (tehát nem kell újra felvennie a rendelést a Partnerközpontban.) Amikor ezt a nyitott rendelést kosár zárással újra megpróbálja kifizetni, akkor a sERPa-ban egy új vevőrendelés keletkezik.
Ha a vásárló olyan műveletet hajt végre, amivel a fizetési folyamat úgy szakad meg, hogy nem jutunk információhoz, (pl. bezárja az egész böngészőt) akkor a rendelése a sERPa-ban lesz csak látható.
Normál esetben a folyamat:
Kártyás fizetési módú rendelés rögzítéskor a sERPa felvesz egy sort az AruforgBizKartyaTranzakcio táblába, státusz = megkezdett, időpont a rendelésfelvétel időpontja, összeg pedig a rendelés szállítási költséggel emelt bruttó végösszege a kerekítés szabályai szerint kerekítve. HUF esetén egész számot fogad csak el a SimplePay, egyéb deviza esetén 2 tizedesig kell átadnunk részükre.
Kártya elfogadáskor egy új sor kerül a táblába. Státusz = folyamatban, Időpont az információ megérkezése.
Az összeg terhelésekor szintén új sor keletkezik, Státusz = Teljesült, Időpont az információ megérkezése, összeg a terhelt összeg. Az ilyen információhoz a SimplePay elküldi a tranzakció azonosítót is, ami ehhez a sorhoz szintén mentésre kerül a táblába.
A fizetési folyamat egyes státuszait a Vevőrendelés Kártyás fizetés fülén lehet nyomon követni. Az aktuális státusz az Általános fülön is megjelenítésre kerül, hogy a rendelés kiszolgálásakor az ügyintéző felhasználó azonnal láthassa, hogy teljesült-e a kifizetés és átadható-e az áru. Az általános fülön a státuszból mindig a legerősebb értéket mutatjuk és nem azt, ami legutoljára érkezett. Ennek oka, hogy a SimplePay-től előfordulhat, hogy korábban érkezik meg a sikeres terhelésről szóló információ, mint az, hogy a kártya elfogadásra került.
Normáltól eltérő eseményeknél röviden azt lehet mondani, hogy amiről információnk van, azt kezeljük, egyéb esetében a rendelés megragad valamilyen státuszban és kézi beavatkozást igényel.
Példák:
- Van információnk arról, hogy a kifizetés meghiúsult. Ekkor a fentebb említett rendelés visszamondásos folyamat zajlik le.
- Nincs információnk arról, hogy mi történt a kifizetéssel. Ilyen történhet többek közt akkor, ha Megkezdett, vagy Folyamatban státusz után a SimplePay gyanúsnak találja a tranzakciót és felhívja telefonon a kártya tulajdonost. Amennyiben visszaélés történt és a kártya tulajdonos azt mondja, hogy nem ő kezdeményezte a terhelést és ne hagyják jóvá, akkor részünkre semmilyen információ nem jut el erről. Ilyen esetben fel kell venni a kapcsolatot a vásárlóval és kézi beavatkozással kezelni a rendelés sorsát.
Kerekítési eltérések miatt előfordulhat, hogy a számla végösszege minimális mértékben eltér majd a vásárló által kártyával kifizetett összegtől. A kerekítés eltérések Partnerközpont / SimplePay közti elkerülésének érdekében egyetlen tételt adunk át a SimplePay-nek, ami rendelés bruttó szállítási költséggel emelt bruttó végösszege. (Áfatartalom=0%, szállítási költség=0 értékek mennek a SimplePay-nek)
Fenti okból a SimplePay is áfatartalom nélküli átadást ajánl. Ellenkező esetben a fizetendő végösszeget a SimplePay számolná ki és esetleg más összeget kérne el, mint amit mi a sERPa-ban kiszámoltunk.
A rendelés olyan módosítása, ami az érték megváltozását okozza, azzal jár, hogy a kártyával kifizetett összeg el fog térni a végül számlázásra kerülő összegtől. Ezért is kerül eltárolásra a rendelés rögzítésekor a bruttó végösszeg, hogy látható legyen az, hogy milyen összeget kértünk el eredetileg a vásárlótól. Az ilyen értékváltozással járó módosításokat egyedileg kell a kiszolgálás további folyamatában kezelni.
A SimplePay fizetés konfigurálása:
A telepítő könyvtárában van két Word dokumentum (SimplePay_Adattovabbitasi_nyilatkozat.docx és SimplePay_Data_transfer_statement.docx), ezek a minták. Mindkettőt ki kell tölteni a kereskedő adataival, és elmenteni a webalkalmazás gyökérkönyvtárába, pdf formában. Ezek a pdf-ek jelennek meg a weboldalon.
A kereskedő SimplePay Fiókkezelőjében a következőket kell beállítani minden devizára, a sandbox és az éles SimplePay-ben is:
Az IPN URL-t a [saját weboldal]/SimplePay/ipn címre kell állítani.
Kereskedői e-mail cím kitöltése.
A Termék és vásárlói adatok elrejtése az e-mail-ben és a fizető oldalon (4 pipa).
Logó feltöltése (max. 200x50 px). Nem kötelező, de ha fel van töltve, a SimplePay oldalán is megjelenik a logó.
A webalkalmazás könyvtárában a SimplePay.Minta.config fájlt le kell másolni SimplePay.config néven, és a megfelelő devizáknál a MERCHANT és SECRET_KEY mezőket ki kell tölteni a SimplePay oldaláról kimásolt adatokkal (minden devizához más-más azonosító és titkos kulcs tartozik):
A program alapból a sandbox rendszert használja, itt lehet tesztelni. Ha minden rendben, a SimplePay.config fájlban a SANDBOX mezőt állítsuk false-ra. A sandbox rendszerrel működő webalkalmazásunkat ne rakjuk ki az éles honlapunkra, mert a vevő azt fogja hinni, hogy megrendelte és kifizette az árut, pedig nem, mert egy teszt fizetési rendszeren zajlott a folyamat.
A Partnerközpont a nyelvek listáját és a SimplePay konfigurációt csak a webalkalmazás induláskor olvassa be.