35дд. Руководство оператора Документ предназначен для внутреннего использования Введение 4 Вход в систему 5
![]()
|
ОтчетыОперации.В этом отчете выводятся список всех операций организации коммерсанта. Список можно фильтровать по статусам транзакций, по терминалам, а также задавать период выборки (по умолчанию – один месяц). Статистика.Здесь выводится статистика по операциям организации за указанный период времени. Также можно задать фильтрацию по определенному терминалу. ![]() Журнал АРМВ журнале операций АРМ выводится лог действий пользователей АРМ организации за указанный период времени. Также можно задать фильтрацию по определенному пользователю и по типу операции. Схема работыДиаграмма![]() Описание схемы работыНа странице выбора товара или услуги у коммерсанта при подтверждении формы заказа запрос отправляется на веб-сервер коммерсанта На стороне веб-сервера коммерсанта при необходимости делаются предварительные проверки заказа, формируется подпись данных, и запрос и запрос редиректом 302 направляется методом GET или POST на сервер ecom. В примере на странице http://host/eCom/static/e/test.html заказ отправляется на сервер ecom напрямую, без редиректа с сайта коммерсанта. Этот пример – только для тестирования, подпись данных должна производиться не на веб-странице, а на сайте коммерсанта! Система ecom делает предварительные проверки заказа. Если какая-нибудь из проверок не пройдена, то клиенту формируется страница с описанием ошибки (шаг 7) и на сайт коммерсанта отправляется результат обработки заказа (шаг 8). Если все проверки пройдены успешно, то ecom формирует для клиента страницу оплаты (шаг 3). Если в запросе на шаге 2 был предоставлен идентификатор аутентифицированного на сайте коммерсанта клиента CLIENT_ID, то на странице клиенту предоставляются для выбора список карт, по которым этот клиент уже ранее проводил успешные оплаты. Примечание: возможность выбора карты доступна только если банк принял решение о хранении данных карт клиентов, подробности можно узнать у представителя банка. Клиент вводит реквизиты своей платежной карты или выбирает одну из своих карт, которой он собирается оплатить заказ, и подтверждает оплату заказа ECom производит проверки заказа. Если какая-нибудь из проверок не пройдена, то клиенту формируется страница с описанием ошибки (шаг 7) и на сайт коммерсанта отправляется результат обработки заказа (шаг 8). Если все проверки пройдены успешно, то ecom отправляет запрос в MPI на оплату заказа по введенной или выбранной карте клиента (шаг 5). MPI при необходимости запрашивает у клиента пароль 3DSecure, затем производит операцию оплаты. После этого MPI возвращает результат операции в ecom (шаг 7) Система ecom формирует для клиента старницу с описанием результата операции Если указан адрес в параметре BACKREF запроса или адрес URL фоновой отправки результата в АРМ для данного коммерсанта, то система ecom после обработки платежа в фоновом режиме формирует POST-запрос с результатом операции на этот адрес с параметрами:
Например, в BACKREF или в поле АРМ «URL страницы результата» указан адрес страницы на сайте коммерсанта, то браузер будет перенаправлен на этот адрес с параметрами заказа, например: order=529619375&mpi_order=1012121121529619375&amount=0.9¤cy=EUR&res_code=0&rc=00&rrn=12345678901&sign=124542232343 Алгоритм проверки подписи из поле sign следующий: нужно собрать в одну строку значения всех параметров в указанном в таблице порядке через разделитель «;», затем добавить эту строку к значению секретного ключа SHARED_SECRET (этот ключ индивидуальный для каждого коммерсанта), и вычислить из полученной строки значение хэш SHA512. Например, на PHP это будет выглядеть примерно так: vSign=hash("sha512", C_SHARED_KEY. .$_POST["order"].";" .$_POST["mpi_order"].";" .$_POST["amount"].";" .$_POST["сurrency"].";" .$_POST["res_code"].";" .$_POST["rc"].";" .$_POST["rrn"].";" ); Если на шаге 2 был указан email клиента, то клиенту на этот адрес отправляется письмо с результатом операции. Перенаправление результата на страницу коммерсантаДля того, чтобы на шаге 3 или 8 вместо стандартной страницы результата eCom коммерсант мог отобразить клиенту свою страницу результата на своем сайте, нужно передать адрес этой страницы в параметре BACKREF и добавить в адрес параметр redirect=true, или внести этот адрес в поле АРМ «URL страницы результата, то к указанному адресу будут добавлены параметры результата операции, и браузер клиента будет перенаправлен на этот адрес методом GET. Добавляются параметры:
Например, если указать в BACKREF адрес https://www.google.kz?redirect=true, то браузер будет перенаправлен методом GET на адрес: https://www.google.kz?redirect=true&order=529619375&mpi_order=529619375& res_code=0&amount=0.9¤cy=EUR&res_desc=12123&desc=111&sign=12345678 Алгоритм проверки подписи sign следующий: нужно собрать в одну строку значения всех полей заказа в указанном в таблице порядке через разделитель «;», затем добавить эту строку к значению секретного ключа SHARED_SECRET (этот ключ индивидуальный для каждого коммерсанта), и вычислить из полученной строки значение хэш SHA512. В строках desc, res_desc перед обработкой нужно убрать все переносы строк. Например, на PHP это будет выглядеть примерно так: vSign=hash("sha512", C_SHARED_KEY .$_POST["order"].";" .$_POST["mpi_order"].";" .$_POST["rrn"].";" .$_POST["res_code"].";" .$_POST["amount"].";" .$_POST["сurrency"].";" .preg_replace("/\n|\r/g","",$_POST["res_desc"]).";" ); Обратите внимание! В продуктовой системе на сервере коммерсанта обязательно должна быть проверка значения sign для исключения подделки результата заказа! Секретный ключ SHARED_SECRET ни в коем случае не должен быть доступен кому-либо вне Вашего сервера! |