Документация Альфа Банк

Установка 2.0-2.1-2.2-2.3:
1) Установить модуль через Установщик модулей, в модификациях нажать обновить
2) Установить модуль в админ панель -> Дополнения -> Оплата -> Альфа Банк Эквайринг-> Установить
3) Ввести настройки модуля: имя и пароль Api, выбрать свой адрес сервера и вписать https://web.rbsuat.com/ab/rest/ - для тестовых, https://pay.alfabank.ru/payment/rest/- для реальных
4) Для получения уведомлений о оплате сообщить банку ссылку callback (не обязательно NEW возможность работы без калбеков, опция в настройках делать запрос на страницы удачной оплаты уже включена по умолчанию)
5) Установить статус включено

Установка 1.5:

1) Скопировать все из папки Upload в корень сайта
2) Установить модуль в админ панель -> Дополнения -> Оплата -> Альфа Банк Эквайринг-> Установить
3) Ввести настройки модуля: имя и пароль Api
4) Для получения уведомлений о оплате сообщить банку ссылку callback (указана в настройках модуля)
5) Установить статус включено

6) Внимание! на данный момент альфа банк сменил адреса, необходимо отредактировать файл catalog/controller/account/abacquiring.php
 и заменить все адреса https://test.paymentgate.ru/testpayment/rest/
на
https://web.rbsuat.com/ab/rest/ - для тестовых, https://pay.alfabank.ru/payment/rest/ - для реальных

FAQ

 

1. При переходе на оплату пишет No Data 

Смотреть журнал ошибок - расшифровка ошибок ниже

 

2. В журнале ошибок запись "Доступ запрещен"

Это означает что не верный логин или пароль (Внимание! Вводить логин и пароль API, а не Оператор)

  1. Вы выбрали не верный Адрес сервера в настройках для вашего логина и пароля (Выбирать тестовый или реальный, свой адрес только в исключительных случаях) - Внимание для магазинов 1.5 адрес менять в файлах как описано в документации по установки!
  2. Вы ввели не верный логин API (Попробуйте пересохранить логин, убедитесь что отсутвуют пробелы в начале и в конце. Логин API выдает Вам поддержка банка)
  3. Вы ввели не верный пароль API (Попробуйте пересохранить пароль, убедитесь что отсутвуют пробелы в начале и в конце. Сброс пароля API может помочь, подробности сброса пароля API уточняйте в поддержке банка) , убедитесь что пароль соответвует режиму тестовый или реальный (это разные пароли), также убедитесь что при реальных платежах вы совершили первоначальный сброс пароля api (как это делать вам подскажет поддержка банка)
  4. Вам не открыли доступ на стороне банка
  5. Пароль содержит спец символы (попробуйте использовать только ! восклицательный знак, он проверенно работает) - сбросить пароль на временный можно через поддержку банка, а потом установить первоначальный путем сброса временного - ДЛЯ МАГАЗИНОВ ТОЛЬКО 2х можно попробывать использовать метод File get contents
  6. если пароль API содержит спецсимволы. Например, пароль "qwe?rt%y" можно попробовать записать как "qwe%0Frt%25y". http://web-developer.name/urlcode/

 

3. В журнале ошибок запись AlfaBank error: code= ( без описания ошибки) - NEW Можно сменить метод запросов к банку в настройках модуля(только для магазинов 2.х)

не работает полноценно curl (Внимание при такой ошибки только проблема с Curl у хостера)

curl собран с версией openssl ниже чем у банка (постоянно обновляется так как в нем появляются новые и новые дыры)

посмотреть можно в phpinfo в разделе curl (обязательно в разделе curl а не просто openssll искать, так как может на самом хостинге openssl новой версии а сам curl собран со старой или вообще без поддержки)

curl тестируется по следующему методу 

версия openssl на хостинге не ниже чем у банка, запросить актуальную версию вы можете в поддержке банка - иначе не работает CURL запрос к банку. Проверить версию можно с помощью phpinfo();, раздел CURL.

Проверка курл:

if ( $curl = curl_init() ) {

    echo "Curl init ok<br>";

    curl_setopt($curl, CURLOPT_URL, 'https://web.rbsuat.com/ab/rest/register.do');

    $result = curl_exec($curl);


    echo $result;
}
else { 
    echo 'No Curl'; 
}

Должен вывести в качестве result

{"errorCode":"5","errorMessage":"Доступ запрещён"}

Если такого нет, ничего не заработает. К хостеру, или сменить в настройках метод запросов к банку

 

и никакого отношения такой тест не к модулю не к опенкарту не имеет, все голый php

если он не проходит это означает что ваш curl собран с openssl ниже чем в данный момент у банка или он вообще собран без поддержки openssl

Варианты решения:

 

4. Ошибка PHP Warning: file_get_contents(): SSL: Connection reset by peer
 

Необходимо обновление openssl на хостинге до актуальной версии банка

Какая версия требуется банку вы можете узнать у них в поддержке

5. Кнопка для повторной оплаты не появляется в личном кабинете

     Если шаблон личного кабинет далек от стандартного то кнопка в личном кабинете может не появиться о чем вы увидите оповещение в логе vqmod или ocmod

     для вывода кнопки необходимо в файле vqmod/xml/abacuiring.xml

     <?php echo $order['status']; ?></div>

     заменить на строчку которая у вас в шаблоне похожая

     или то место куда вы хотите вставить кнопку

     из этого файла catalog/view/theme/вашатема/template/account/order_list.tpl

 

для опенкарт 2 изменения в install.xml

переименовать в install.ocmod.xml и установить через установщик (перед этим удалив старый модификатор)

не забыть обновить кэш

6. На тестовых платежах при вводе данных реальной карты не проходит оплата

На тестовых платежах работают только тестовые карты.
Данные тестовых карт вы можете запросить в поддержки банка. (или найти в документации от банка которую вам возможно вкладывали в письмо, раздел тестовые карты)
Модуль не обратывает сами карты, обработка происходит только на стороне банка
 
7. На реальных платежах при вводе данных реальной карты не проходит оплата
 
Модуль не обратывает сами карты, обработка происходит только на стороне банка
Вам необходимо обратиться в поддержку банка