За Borica EMV 3DS интеграция виж тук
Стъпки за интеграция на плащания с БОРИКА/BORICA
- Трябва да се сключи договор с банка.
- Трябва да си инсталирате OpenSSL, за да генерирате ТРИ ключа и ТРИ сертификата:
- KEY и CSR за тестовия сървър;
- KEY и CSR за eTlog (инсталира се в IE, той е за достъп до административния панел на БОРИКА);
- KEY и CSR за реалния сървър;
- Изпращате горните ТРИ сертификата на банката (без ключовете) + return URL (където да връща банката, когато транзакцията приключи) + вашето фирмено лого.
- Банката след одобрение на изпратените от вас сертификати ви връща други (CER) “подписани”.
- Тук вече започва главоблъсканицата с тестване и интеграция и инсталация на сертификати в браузъра.
- След това преминавате на реалния сървър.
Стъпка 1:
Сключване на договор с банка.
Стъпка 2:
Ако нямате openssl e нужно да го свалите оттук Binaries -> Zip – http://gnuwin32.sourceforge.net/packages/openssl.htm
Разархивирате го в някоя папка, отваряте папката /bin и shift + дясно копче -> Open command prompt.
Generate the RSA key:
openssl genrsa -out domainname-real.key -des3 1024 openssl genrsa -out domainname-etlog.key -des3 1024 openssl genrsa -out domainname-test.key -des3 1024
Create a CSR:
Когато правите сертификатите посредством ключовете, трябва да попълвате вярно и пълно информацията, която ви иска. Парола не е задължително да посочвате.
- Organization (O) – Името на фирмата
- Organization Utility (OU) – отдел на фирмата (Saels, IT…)
- Location (L) – Града, в който е адресната регистрация на фирмата
- State or Province Name (ST) – Общината в която се намира града, където е адресната регистрация на фирмата
- Common name(CN) – Обикновено там е името на собственика или управителя на фирмата, тъй като данните в това поле се визуализират срещу “Issued to”. Може да бъде също така името на фирмата или името на web страницата.
- Country (C) – BG
Най-вероятно ще трябва да сетнете конфига на OpenSSL-а, защото няма да ви пусне да правите сертификати.
set OPENSSL_CONF=C:\OpenSSL\share\openssl.cnf
openssl req -new -key domainname-real.key -out domainname-real.csr openssl req -new -key domainname-etlog.key -out domainname-etlog.csr openssl req -new -key domainname-test.key -out domainname-test.csr
Стъпка 3:
Изпращате следните файлове към банката:
- трите файла (без .key файловете)
- domainname-real.csr
- domainname-etlog.csr
- domainname-test.csr
- return url – адрес където ще връща банката след приключване на транзакцията
- лого
Стъпка 4:
Трябва да сте получили три файла – real, etlog и test.
След това трябва да си създаде P12 сертификат с вашия ключ за eTlog и върнатия сертификат (CER) за eTlog.
Create P12 eTlog
openssl pkcs12 -export -inkey domainname-etlog.key -in eTlog_domainname-etlog_f.cer -out domainname-etlog.p12
p12 се инсталира в браузъра (Internet Explorer) на таба Personal. Рестартирате браузъра след инсталацията!
След това ако не се отваря тестовия адрес, инсталирате и другите два сертификата по описания начин в документацията (трябва да сте получили такава от банката).
За юзър ползвате MID и парола, които са ви предоставили.
Стъпка 5:
Интеграция.
Свалете публичният сертификат от etlog за подписване на Response!
Може да ползвате пакета https://github.com/mirovit/borica-api. Съвместим е и с Laravel / PHP
Пример за интеграция на laravel:
Нужно е да се сетъпне всичко описано в пакета.
Генериране на ново плащане:
use Mirovit\Borica\Factory;
class PaymentsController extends Controller
{
public function borica(Factory $borica)
{
$boricaRedirectUrl = $borica->request()
->amount('1') // 1 EUR
->orderID(1) // Unique identifier in your system
->description('testing the process') // Short description of the purchase (up to 125 chars)
->currency('EUR') // The currency of the payment
->register(); // Type of the request
return redirect($boricaRedirectUrl);
}
}
Обработка на отговора от Borica:
public function boricaSuccess(Request $request, Factory $borica) { $boricaResponse = $borica->response($request->input('eBorica')); //... }
Кодове за грешка
Кодовете на грешка описват значението на поле 1 (Код на завършване) в BOResp съобщението.
No Описание
00 Нормално изпълнена авторизация
85 Транзакция от тип Reversal със същите характеристики вече е
регистрирана в системата.
86 Транзакция със същите характеристики е вече регистрирана в
системата.
87 Грешна версия на протокола
88 За управляващи транзакции. Не е подаден параметър BOReq.
89 За управляващи транзакции. Не е намерена първоначалната
транзакция. (Пример: при reversal – не е намерена първоначалната
транзакция, върху която ще се извърши reversal.)
90 Картата не е регистрирана в Directory сървъра.
91 Timeout от авторизационната система
92 При операция „Проверка за статуса на транзакция”. Изпратеният
параметър eBorica е с невалиден формат.
93 Неуспешна 3 D автентикация от ACS
94 Анулирана (канцелирана) трансакция
95 Невалиден подпис на търговеца
96 Техническа грешка при обработка на транзакцията
97 Отхвърлена поради правило за измама
98 При операция „Проверка за статуса на транзакция”. За изпратения
BOReq няма регистриран BOResp в сайта на БОРИКА –
БАНКСЕРВИЗ.
99 Авторизацията е отхвърлена от TPSS