SecurePay 2.0

Borgun Secure Payment Page umožňuje obchodníkům prodávat produkty bezpečně online s minimálními požadavky na integraci. Poskytuje možnost akceptovat platby bez nutnosti zacházet s citlivými informacemi, protože všechna karetní data jsou vkládána přímo do zabezpečené platební brány Borgun.

Platební proces sestává ze dvou kroků. Na první stránce poskytne zákazník data o kreditní kartě.

Po úspěšném provedení platby je kupujícímu zobrazen doklad o provedené platbě.

Technické informace

Veškerá komunikace mezi e-shopem a zabezpečenou platební stránkou Borgun je prostřednictvím HTTPS POST.

Production URL: https://securepay.borgun.is/securepay/default.aspx

Sandbox URL: https://test.borgun.is/securepay/default.aspx

Níže jsou uvedeny jednotlivé kroky procesu zpracování platby mezi e-shopem obchodníka a platební bránou Borgun:

  1. Inicializace: internetový obchod přesměruje zákazníka na platební stránku Borgun, zašle informace o obsahu nákupního košíku a platební metodě
  2. Zákazník má dvě možnosti:
    • Zrušit platbu kliknutím na tlačítko Zrušit dojde k přerušení platby a automatickému návratu na URL specifikovanou e-shopem pro tyto účely
    • Vyplnit data o kreditní kartě a dokončit platební operaci
  3. Jakmile je platba úspěšně dokončena, server Borgun zašle potvrzení o platbě do internetového obchodu s návratovou URL poskytnutou e-shopem (např. www.webshop.cz/chytraplatba)
  4. Zákazníkovi je zobrazen doklad o úhradě
  5. Po kliknutí na tlačítko Zpět do obchodu je zákazník přesměrován na URL adresu dodanou pro tento účel e-shopem

Secret key, tajný klíč, který zná pouze obchodník a platební brána, se používá pro ověření, že HTTPS kominukace probíhá mezi správnými a oprávněnými stranami. Secret key se nikdy neposílá přímo přes HTTPS, vždy je přidán do HMAC podpisu a tak potvrzen nepřímo. Detailní popis, jak se podpis tvoří najdete v kapitole Parametry. HMAC podpis si můžete ověřit na specializovaných webových stránkách, například http://www.freeformatter.com/hmac-generator.html

Níže je uveden příklad HTML kódu:

<html xmlns="http://www.w3.org/1999/xhtml" lang="is" xml:lang="is">
<head>
<title>Webshop</title>
</head>
<body>
<form id="form1" action="https://test.borgun.is/SecurePay/default.aspx" method="post">
Merchantid : <input type="text" name="merchantid" value="9275444" /><br>
paymentgatewayid : <input type="text" name="paymentgatewayid" value="16" /><br>
checkhash : <input type="text" size=100 name="checkhash" value="90e2ace99591128b391811a0694bf2d4da8ea960ee088a75d12a415660f46790" /><br>
orderid : <input type="text" name="orderid" value="ORDER1230001" /><br>
currency : <input type="text" name="currency" value="ISK" /><br>
language : <input type="text" name="language" value="IS" /><br>
buyername : <input type="text" name="buyername" value="Agnar Agnarsson" /><br>
buyeremail : <input type="text" name="buyeremail" value="ba@borgun.is" /><br>
returnurlsuccess : <input type="text" size=100 name="returnurlsuccess" value="http://somedomain.is/ReturnPageSuccess?order_id=ORDER1230001" /><br>
returnurlcancel : <input type="text" size=100 name="returnurlcancel" value="http://somedomain.is/ReturnPageCancel.aspx" /><br>
returnurlerror : <input type="text" size=100 name="returnurlerror" value="http://somedomain.is/ReturnUrlError.aspx" /><br>
itemdescription_0 : <input type="text" name="itemdescription_0" value="Dekk" /><br>
itemcount_0 : <input type="text" name="itemcount_0" value="1" /><br>
itemunitamount_0 : <input type="text" name="itemunitamount_0" value="800.00" /><br>
itemamount_0 : <input type="text" name="itemamount_0" value="800.00" /><br>
amount : <input type="text" name="amount" value="800.00" /><br>
pagetype : <input type="text" name="pagetype" value="0" /><br>
skipreceiptpage : <input type="text" name="skipreceiptpage" value="0" /><br>
merchant logo : <input type="text" name="merchantlogo" value="https://www.b-payment.hu/docs/images/logo.jpg" /><br>
merchantemail : <input type="text" name="merchantemail" value="test@borgun.is" /><br>
<input type="submit" name="PostButton" />
</form>
</body>
</html>

Parametry

Funkce / Omezení

  • Borgun zabezpečená platební stránka může být nakonfigurována tak, aby byly po držiteli karty vyžadovány údaje, jako jsou e-mailová adresa, telefonní číslo nebo adresa trvalého bydliště.

  • Pokud je hodnota parametru skipreceiptpage nastavena na 1, tak není zobrazena stránka s potvrzením a zákazník je rovnou přesměrován na URL uvedenou v parametru returnurlsuccess. V tomto kroku musí obchodník zákazníkovi zobrazit potvrzení o platbě sám.

  • Logo společnosti může být zobrazeno na platební stránce nastavením validní URL v parametru merchantlogo. Logo bude poté zobrazeno v levém horním rohu nad jménem obchodníka. Obrázek musí být k dispozici prostřednictvím HTTPS protokolu, jinak může docházet k zobrazování varovné hlášky v prohlížeči.

  • SecurePay používá sadu znaků unicode (UTF-8). Pokud váš web používá jinou sadu znaků, např. iso8859, pak je nutná znaková konverze. Příklad konverzního kódu v .Net následuje

public static string iso8859ToUnicode(string src) 
{
Encoding iso = Encoding.GetEncoding("iso8859-1");
Encoding unicode = Encoding.UTF8;
byte[] isoBytes = iso.GetBytes(src);
byte[] unibytes = Encoding.Convert(iso,unicode,isoBytes);
char[] unichars = new char[iso.GetCharCount(unibytes,0,unibytes.Length)];
unicode.GetChars(unibytes,0,unibytes.Length,unichars,0);
return new string(unichars);
}
  • SecurePay podporuje Verified By Visa (VbyV) a MasterCard SecureCode, žádné technické změny nejsou potřeba k aktivaci těchto zabezpečení. Prosím zašlete požadavek o aktivaci na: info@b-payment.cz, uveďte webovou adresu a ID obchodníka (Merchant ID).

  • Desetinná čísla mohou být posílána jak s . tak s ,

  • Každý pár MarchantId / PaymentGatewayId může podporovat pouze jednu měnu. Pokud je potřeba podpory více než jedné měny, musí web umět přepínat páry MerchantId/PaymentGatewayId v závislosti na měně. Za více MerchantId/PaymentGatewayId se neúčtuje žádný poplatek.

Parametry zasílané e-shopem platební stránce

Název Hodnota
Merchantid
Potřebný
ID obchodníka dodané bankou Borgun.
paymentgatewayid
Potřebný
ID platební brány dodané bankou Borgun; identifikuje platební metodu.
Orderid
Potřebný
ID objednávky generované e-shopem; zahrnuje se do platební transakce; maximální délka: 12 alfanumerických znaků; nesmí být použity znaky rozšířené znakové sady.
reference
Volitelný
Libovolný text (string) vrácený se stejnou hodnotou, s jakou byl poslán. Hlavní funkcí je zjednodušení adaptace na systém obchodníka; slouží jako externí id objednávky.
checkhash
Potřebný
Podpis, který je vytvořený spojením následujících parametrů s | jako oddělovačem a použitím HMAC SHA256 v kombinaci s tajným klíčem Secret key. MerchantId|ReturnUrlSuccess|ReturnUrlSuccessServer|OrderId|Amount|Currency (Secret key je vydán bankou Borgun a je znám pouze obchodníkovi a bance Borgun)
Více v příloze: HMAC value creation appendix.
amount
Potřebný
Finální součet; maximálně 2 desetinná čísla; Validní hodnoty např.: 350 nebo 12.34 nebo 54,43.
currency
Potřebný
Kód měny; možné hodnoty: GBP, USD, EUR, DKK, NOK, SEK, CHF, CAD, HUF, BHD, AUD, RUB, PLN, RON, HRK, CZK, ISK. defaultní hodnota je ISK.
language
Potřebný
Jazyk platební stránky. V současnosti podporujeme tyto jazyky: Čeština (CZ), Islandština (IS), Angličtina (EN), Němčina (DE), Francouzština (FR), Ruština (RU), Španělština (ES) Italština (IT), Portugalština (PT), Slovinský (SI), Maďarština (HU), Švédština (SE), Holandský (NL), Polština (PL), Norský (NO), Slovák (SK), Chorvatský (HR), Srbský (SR), Rumun (RO), Dánština (DK), Finský (FI) and Faerština (FO).
buyername
Volitelný
Jméno zákazníka, pokud je prázdné, zákazník může doplnit na platební stránce.
returnurlsuccess
Potřebný
URL pro přesměrování zákazníka po úspěšně provedené platbě.
returnurlsuccessserver
Podmínečný
URL pro zaslání notifikace o úspěšné platbě ze serveru, Pokud není parametr vyplněn, bude pro notifikaci automaticky použita URL v parametru returnurlsuccess.*
returnurlcancel
Volitelný
URL pro přesměrování zákazníka po zrušení platby, zákazník stiskl tlačítko Zrušit
returnurlerror
Volitelný
URL pro přesměrování zákazníka v případě neočekávané chyby.
pagetype
Volitelný
Pokud je nastavena hodnota ‘1’, budou po držiteli karty vyžadovány tyto informace: e-mailová adresa, telefonní číslo, místo trvalého bydliště. V tomto případě musí být nastaven i parametr merchantemail, protože na tento email jsou obchodníkovi zaslána výše uvedená data.
merchantlogo
Volitelný
Pokud tento parametr obsahuje URL obrázku (100x100 pixelů), bude obrázek zobrazen v levé části přes obchodníkovo jméno. Důležité: pokud není obrázek dostupný přes SSL protokol, IE zobrazí varovnou hlášku.
skipreceiptpage
Volitelný
Pokud je nastavena hodnota ‘1’, není zákazníkovi zobrazeno potvrzení o platbě. Zákazník je okamžitě přesměrován na URL uvedenou v parametru returnurlsuccess. V tomto případě musí potvrzení o platbě zákazníkovi zobrazit e-shop.
merchantemail
Volitelný
Pokud je vyplněn, je na tuto adresu zaslán e-mail s potvrzením o úspěšné platbě. Zpráva obsahuje informaci o obchodníkovi kupujícím a obsahu nákupního košíku.
buyeremail
Volitelný
Je-li vyplněno, je zákazníkovi zaslán e-mail o úspěšné platbě. Zpráva obsahuje informace o obchodníkovi, kupujícím a obsah nákupního košíku.
displaymode
Volitelný
Can be set as "iframe" to make the payment page use a more compact layout suitable for display in iframes. Minimum supported width is 370px and maximum supported width is 755px.
showadditionalbrands
Volitelný
Can be set as "false" to hide brand logos other than VISA and MasterCard.
Obsah nákupního košíku se z pohledu platební stránky skládá z jedné nebo více položek, přičemž každý typ položky musí být na novém řádku. Každý řádek se pak skládá z jednoho typu položky s množstvím, jednotkovou cenou a mezisoučtem za typ položky. Položky nákupního košíku jsou zasílány s pořadovým číslem. Číslování začíná nulou a inkrement je 1. Každá sada parametrů představuje jeden řádek v nákupního košíku.
Potřebný
Itemdescription_x
Potřebný
Popis položky, maximální délka: 80 znaků.
Itemcount_x
Potřebný
Počet položek daného typu.
Itemunitamount_x
Potřebný
Cena za jednotku.
Itemamount_x
Potřebný
Mezisoučet za typ položky. itemamount = itemcount * itemunitamount

Parametry zasílané platební stránkou e-shopu

Platební stránka může ukončit zpracování platby ve třech případech:

  • Úspěšná platba: zákazník je přesměrován na URL nastavenou oddělit slova
  • Zrušení platby zákazníkem: zákazník je přesměrován na URL nastavenou v parametru returnurlcancel
  • Neočekávaná chyba: zákazník je přesměrován na URL nastavenou v parametru returnurlerror

Úspěšná platba

POZNÁMKA: Je výslovně doporučováno, aby obchodník verifikoval Orderhash, který se vrátí ze serveru Borgun na returnurlsuccessserver, aby se předešlo pokusům o podvody.

Pokud je platba úspěšná, zákazník je přesměrován na url adresu definovanou v parametru returnurlsuccess s následujícími HTTP POST parametry. Použití je na rozhodnutí webu, ale je důležité verifikovat Orderhash, aby se zvalidovala zpráva o úspěšné platbě od Borgun.

Název Hodnota
status „Ok“
orderhash Podpis, který je vytvořený spojením následujících parametrů s | jako oddělovačem a použitím HMAC SHA256 v kombinaci s tajným klíčem secret key.
orderid|amount|Currency
(Secret key je vydán bankou Borgun a je znám pouze obchodníkovi a bance Borgun)
Více v příloze: HMAC value creation appendix.
orderid Číslo objednávky generované a zaslané e-shopem platební stránce během inicializace platby.
authorizationcode Autorizace platby z Borgunu.
creditcardnumber Částečně maskované číslo kreditní karty (1234-******1234).
step Borgun zasílá úspěšnou zprávu do e-shopu ve dvou případech. 1. Zákazník provedl úspěšnou platbu a Borgun zobrazil zákazníkovi potvrzení o platbě. Důležité: tento URL požadavek přichází od serveru Borgunu, není předán ze strany zákazníka a není ani ve stejné aktivní session. 2. Zákazník stiskl tlačítko ‘Zpět do e-shopu’. Kroky jsou označeny následujícími hodnotami: Platba: platební transakce byla dokončena. Pro další informace viz oddíl C. Potvrzení: Zákazník se vrátil z platebni internetového obchodu.
ticket Je zahrnut v případě, že bylo k platební stránce přistoupeno za použití ticketu (viz Sekce 4). Tento parametr bude obsahovat identifikátor použitého ticketu.
buyername Pouze v případě, že byla vyžadována registrace (pagetype = 1)
buyeraddress Pouze v případě, že byla vyžadována registrace (pagetype = 1)
buyerzip Pouze v případě, že byla vyžadována registrace (pagetype = 1)
buyercity Pouze v případě, že byla vyžadována registrace (pagetype = 1)
buyercountry Pouze v případě, že byla vyžadována registrace (pagetype = 1)
buyerphone Pouze v případě, že byla vyžadována registrace (pagetype = 1)
buyeremail Pouze v případě, že byla vyžadována registrace (pagetype = 1)
buyerreferral Pouze v případě, že byla vyžadována registrace (pagetype = 1)
buyercomment Pouze v případě, že byla vyžadována registrace (pagetype = 1)

Zrušení

Pokud zákazník stiskne tlačítko Zrušení, je přesměrován na URL uvedenou v parametru returnurlcancel

Název Hodnota
Status "Cancel"

Neočekávaná chyba

V případě neočekávané chyby je zákazník přesměrován na URL uvedenou v parametru returnurlerror

Název Hodnota
Status „Error“
errordescription Popis chyby pro zákazníka,
errorcode Kód chyby.

V tomto případě vrací testovací verze platební brány následující parametry:

Název Hodnota
errordetail Detaily chyby.
auditlog Data z audit logu.

Odpověď na notifikaci o platbě

Pokud parametr step obsahuje hodnotu „Payment“, tak preferovaná odpověď od e-shopu by měla být XML dokument, který indikuje, že e-shop úspěšně obdržel notifikaci.

Struktura XML by měla být následující:

<PaymentNotification>Accepted</PaymentNotification>

Pokud je od e-shopu obdržena tato odpověď, je vytvořen záznam do logu, že e-shop úspěšně obdržel notifikaci o platbě. V opačném případě bude záznam v logu obsahovat pouze informaci, že notifikace o platbě byla zaslána e-shopu.

Ticket API

Borgun SecurePay systém poskytuje také rozhraní, které generuje jedinečné tokeny pro každou objednávku. E-shop zasílá detaily o objednávce Ticket API, které vrací unikátní řetězec (takzvaný ticket), který odkazuje detaily objednávky. Poté může být ticket zaslán zákazníkovi ve formě jednoduché URL adresy, která otevře přímo SecurePay stránku s kompletními informacemi k objednávce.

Tato URL může být také vytvořena ručně na straně obchodníka.

Production URL: https://securepay.borgun.is/securepay/ticket.aspx

Sandbox URL: https://test.borgun.is/securepay/ticket.aspx

Ticket API podporuje všechny parametry platební stránky (Sekce I.3.b). Níže uvedené parametry jsou specifické pro vytvoření a obsluhu ticketů:

Název Hodnota
TicketExpiryDate Ticket je validní do tohoto data. Pokud není nastaveno, ticket je validní po dobu dvou měsíců. Formát data: dd.mm.yyyy.

Ticket API vrátí zprávu v následujícím formátu: ticket=ticket&ret=ret&message=message

Název Hodnota
ticket Tento parametr bude obsahovat ticket, pokud je hodnota parametru ret nastavena na “True”.
ret Návratový kód. “True” pokud byla objednávka úspěšně zpracována. “False” v případě výskytu chyby.
Message Tento parametr bude obsahovat popis chyby v případě, že parametr ret obsahuje hodnotu “False”.

V případě používání ticketů musí být tickety zasílány Ticket API jako GET parametr ?ticket=ticket, následně dojde k přesměrování zákazníka na platební bránu.

Testovací prostředí

Testovací prostředí: https://test.borgun.is/SecurePay/default.aspx

merchantid: 9275444

paymentgatewayid: 16

secretkey: 99887766

The test environment supports all the same parameters as the Payment Page.

Test transaction's amount has to be between 10-1000 ISK or the same value in other currencies. Volitelnýly a testcard for testing errorstatus can be supplied.

Do not use the test cards outside the test environment!

Transactions in test environment do not mean actual money transfers!

Číslo karty: 4741 5200 0000 0003
Kód CVC: 000
Platnost karty: jakákoliv
Jméno: jakékoliv

For further technical assistance do not hesitate to contact us via web@b-payment.com

Vytvoření HMAC

Při vytváření parametru CheckHash a verifikování parametru OrderHash by mělo být použito kódování HMAC_SHA256. Proces funguje spojením tajného klíče secret key a zprávy message dohromady a vytvořením hash použitím SHA256 kódování, následné spojení tejného klíče secretkey a hash pomocí SHA256 kódování vytvoří hodnotu HMAC.

HMAC_SHA256(secretkey, message) = SHA256(secretkey || SHA256(secretkey || message))

Kde message obsahuje data zakódování. Např.

CheckHashMessage = MerchantId|ReturnUrlSuccess|ReturnUrlSuccessServer|OrderId|Amount|Currency
OrderHashMessage = OrderId|Amount|Currency

Příklady:

SecretKey = "1234567890abcdef"
CheckHashMessage = "9123456|https://borgun.is|https://borgun.is/success|TEST00000001|100|ISK"
CheckHash value = "275dcb516773c96a1856550c1b2126f35d501c5dc1b0ba2f73fdf617cecb7461"

OrderHashMessage = "TEST00000001|100|ISK"
OrderHash value = "d605531aa71c833edb59651652161e7845933d2f7d44d3697bc336e493befd25"

POZNÁMKA: Pokud není použit parametr returnurlsuccessserver, pak parametr returnurlsuccess je použit namísto returnurlsuccessserver.

Některý z online HMAC validátorů může být použit na verifikování výstupu vaší implementace. Např. https://www.freeformatter.com/hmac-generator.html.

POZNÁMKA: Nikdy nepoužívejte reálná ostrá data při použití online HMAC testovacích skriptů.

Následují příklady HMAC implementace v různých programovacích jazycích:

C# použití HMAC_SHA256

Příklad na použití třídy HMACSHA256 class.

string secretKey = "1234567890abcdef";
string message = "9123456|https://borgun.is|https://borgun.is/success|TEST00000001|100|ISK";

byte[] secretBytes = Encoding.UTF8.GetBytes(secretKey);
HMACSHA256 hasher = new HMACSHA256(secretBytes);
byte[] result = hasher.ComputeHash(Encoding.UTF8.GetBytes(message));
string checkhash = BitConverter.ToString(result).Replace("-", "");

PHP

Příklad na použití hash_hmac.

$secretKey = '1234567890abcdef';
$message = utf8_encode('9123456|https://borgun.is|https://borgun.is/success|TEST00000001|100|ISK');
$checkhash = hash_hmac('sha256', $message, $secretKey);

Python 2.7

Příklad na použití hmac.

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import hmac
import hashlib

secret_key = '1234567890abcdef'
message = u'9123456|https://borgun.is|https://borgun.is/success|TEST00000001|100|ISK'.encode('utf-8')
checkhash = hmac.new(secret_key, msg=message, digestmod=hashlib.sha256).hexdigest()

Python 3.4

Příklad na použití hmac.

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import hmac
import hashlib

secret_key = b'1234567890abcdef'
message = '9123456|https://borgun.is|https://borgun.is/success|TEST00000001|100|ISK'.encode(encoding='utf-8')
checkhash = hmac.new(secret_key, msg=message, digestmod=hashlib.sha256).hexdigest()

Ruby

Příklad na použití OpenSSL::HMAC.

# encoding: utf-8

require 'openssl'

secret_key = '1234567890abcdef'
message = '9123456|https://borgun.is|https://borgun.is/success|TEST00000001|100|ISK'
digest  = OpenSSL::Digest.new('sha256')
checkhash = OpenSSL::HMAC.hexdigest(digest, secret_key, message)

Javascript

Příklad na použití crypto-js a Node.

var crypto = require('crypto-js');

var secret_key = '1234567890abcdef';
var message = '9123456|https://borgun.is|https://borgun.is/success|TEST00000001|100|ISK';

var checkhash_data = crypto.HmacSHA256(message, secret_key);
var checkhash = crypto.enc.Hex.stringify(checkhash_data);

Java

Příklad na použití Mac

import java.util.*;
import javax.crypto.*;
import javax.crypto.spec.*;
import javax.xml.bind.DatatypeConverter;

public class hmac {
    public static void main (String[] args) throws Exception {
        String secretKey = "1234567890abcdef";
        String message = "9123456|https://borgun.is|https://borgun.is/success|TEST00000001|100|ISK";
        byte[] secretKeyBytes = secretKey.getBytes("utf-8");
        byte[] messageBytes = message.getBytes("utf-8");

        SecretKeySpec signingKey = new SecretKeySpec(secretKeyBytes, "HmacSHA256");
        Mac mac = Mac.getInstance("HmacSHA256");
        mac.init(signingKey);
        byte[] checkhashBytes = mac.doFinal(messageBytes);
        String checkhash = DatatypeConverter.printHexBinary(checkhashBytes).toLowerCase();
    }
}

Aktualizace starších verzí

Je vyžadována aktualizace starších verzí integrace SecurePay, aby mohly být využity všechny funkce. Podle kroků popsaných níže by aktualizace neměla zabrat hodně času. Pro případnou technickou podporu nás prosím kontaktujte na emailu web@b-payment.com

Vytvoření HMAC

Při vytváření parametru CheckHash a verifikování parametru OrderHash by mělo být použito kódování HMAC_SHA256. Proces funguje spojením tajného klíče secret key a zprávy message dohromady a vytvořením hash použitím SHA256 kódování, následné spojení tejného klíče secretkey a hash pomocí SHA256 kódování vytvoří hodnotu HMAC.

CheckHash

CheckHash parametr, který se odesílá na platební bránu se nyní nově vytváří pomocí HMAC namísto MD5 kódování.

Starý Checkhash:

Checkhash = MD5(Merchantid + returnurlsuccess + secretkey)

Nový Checkhash:

CheckHashMessage = MerchantId|ReturnUrlSuccess|ReturnUrlSuccessServer|OrderId|Amount|Currency
Checkhash = HMAC256(secretkey, CheckHashMessage)

Například:

SecretKey = "1234567890abcdef"
CheckHashMessage = "9123456|https://borgun.is|https://borgun.is/success|TEST00000001|100|ISK"
CheckHash value = "275dcb516773c96a1856550c1b2126f35d501c5dc1b0ba2f73fdf617cecb7461"

POZNÁMKA: Pokud není použit parametr returnurlsuccessserver, pak parametr returnurlsuccess je použit namísto returnurlsuccessserver.

POZNÁMKA: Nikdy nepoužívejte reálná ostrá data při použití online HMAC testovacích skriptů.

POZNÁMKA: Všechny bílé znaky musí být ze všech řetězců odstraněny.

POZNÁMKA: Hodnota parametru použitá v CheckHashMessage musí být přesně stejná jako hodnota parametru, která se posílá na platební bránu.

Příklady kódů najdete v příloze HMAC.

OrderHash

Parametr Orderhash, který se odesílá zpět na web z platební brány se nyní také vytváří pomocí HMAC namísto MD5 kódování.

Starý OrderHash:

Orderhash = MD5(orderid + amount + secretkey)

Nový OrderHash:

OrderHashMessage = OrderId|Amount|Currency
OrderHash = HMAC256(secretkey, OrderHashMessage)

Příklad

SecretKey = "1234567890abcdef"
OrderHashMessage = "TEST00000001|100|ISK"
OrderHash value = "d605531aa71c833edb59651652161e7845933d2f7d44d3697bc336e493befd25"

Příklady kódů najdete v příloze HMAC.

Loga

Všechna loga v1

Všechna loga v1JPG | 1080 x 380 pxDownload

Všechna loga v2

Všechna loga v2JPG | 500 x 462 pxDownload

Karetní loga

Card logosJPG | 1080 x 220 pxDownload

Borgun logoPNG | 1048 x 289 pxDownload

Maestro logoPNG | 1000 x 822 pxDownload

MasterCard logoPNG | 1000 x 820 pxDownload

MasterCard SecureCode logoPNG | 1000 x 304 pxDownload

Visa logoPNG | 1280 x 813 pxDownload

Visa Electron logoPNG | 1280 x 813 pxDownload

Visa Electron logoPNG | 1280 x 552 pxDownload

UnionPay logoJPG | 630 x 375 pxDownload