PHP implementácia modulu TrustPay

TrustPay je on-line služba, ktorá umožňuje realizovať okamžité bankové prevody s portfóliom až 25 bánk, v 7 krajinách, v 4 podporovaných menách a platby kartou (VISA, MasterCard, Maestro a UnionPay). Je možné ju integrovať napríklad v e-shopoch. Schematicky znázornený proces platieb je veľmi jednoduchý:

Platobný modul TrustPay

Ako pri iných službách, aj tu je potrebné správne vygenerovať bezpečnostný podpis SIG. SIG sa generuje zreťazením parametrov AID+AMT+CUR+REF s následným vytvorením hashu algoritmom SHA1 s použitím Secret Key, ktorý je pridelený od TrustPay. AID je TrustPay číslo účtu, AMT je suma v tvare dvoch desatinných miest, CUR definuje menu a REF je jedinečný identifikátor platby.

Údaje a podpis je možné poslať na server TrustPay metódou POST, pričom:

URL na okamžitý bankový prevod je: https://ib.trustpay.eu/mapi/pay.aspx
URL na okamžitú platbu kartou je: https://ib.trustpay.eu/mapi/cardpayments.aspx

Formulár pre zaslanie platby môže vyzerať nasledovne:

<FORM action='https://ib.trustpay.eu/mapi/cardpayments.aspx' method='POST'>
<INPUT type='hidden' name='AID' value='cislo-uctu-obchodnika' />
<INPUT type='hidden' name='AMT' value='123.45' />
<INPUT type='hidden' name='CUR' value='EUR' />
<INPUT type='hidden' name='REF' value='123456789' />
<INPUT type='hidden' name='SIG' value='$vypocitany-sig'/>
<INPUT type='submit' name='Pay with TrustPay' />
</FORM>

Výpočet podpisu SIG môže vyzerať nasledovne:

<?php
function GetSign($key$message)
{
return 
strtoupper(hash_hmac('sha256'pack('A*'$message), pack('A*'$key)));
}
$vypocitany-sig GetSign('Secret Key od Trust Pay''AID123.45EUR123456789');
?>

Technická príručka | TrustPay

Pridať komentár k článku