Платежные web-сервисы: Сервис интеграции с платежной системой Assist (оплата картой в личном кабинете)

Материал из Megatec
Перейти к: навигация, поиск

Версия статьи от 13-11-2018.

Введение

Данный модуль реализует возможность оплаты путевок через систему электронных платежей Assist.
ASSIST - это мультибанковская система платежей по пластиковым и виртуальным картам через интернет, позволяющая в реальном времени производить авторизацию и обработку транзакций.

Установка

Для установки дополнительного модуля Интеграция с платежной системой Assist нужно создать директорию Payments в каталоге C:/inetpub/wwwroot (корневом каталоге IIS) и выложить туда распакованные файлы из архива payments-assist-9.2.20.XXХXX.zip. Устанавливать дополнительный модуль необходимо в том же домене, где расположено основное приложение ПК «Мастер-Web».
Начиная с релиза 9222SP0, если используется дополнительный модуль Выбор платежной системы (оплата картой в личном кабинете), то необходимо скопировать файл Megatec.MasterWeb.PaymentSystem.Assist.dll из /Payments/bin/ и разместить в папке /EntryPoint/bin/.
В управлении IIS необходимо создать виртуальный каталог для папки Payments.

Создание виртуального каталога

По умолчанию корневым каталогом IIS является C:/Inetpub/wwwroot. Для создания виртуального каталога для приложения находящегося в этом каталоге нужно выполнить следующие действия:
1 Зайти в Пуск (Start) → Настройки (Settings) → Панель управления (Control Panel) → Администрирование (Administrative Tools)
Панель управления

2 Диспетчер служб IIS
Администрирование - Диспетчер служб IIS

3 В открывшемся дереве каталогов выбрать Web Sites – Default Web Site. В открывшемся списке найти папку, для которой нужно создать виртуальный каталог, кликнуть по ней правой кнопкой мыши и выбрать Преобразовать в приложение
Преобразовать в приложение

4 В открывшемся окне нужно нажать кнопку ОК
Добавить приложение

Подключение к базе данных ПК «Мастер-Тур»

В файле web.config, расположенном в папке Payments пропишите необходимые параметры подключения (красным цветом выделены значения, которые необходимо ввести). Строка подключения к базе данных ПК «Мастер-Тур»:
<add key = "connectionString" value = "Data Source=ip-адрес сервера базы данных ПК «Мастер-Тур»;Initial Catalog=название базы данных ПК «Мастер-Тур»;User ID=логин пользователя ПК «Мастер-Тур»;Password=пароль пользователя ПК «Мастер-Тур»"/>

Настройка

После установки надстройка Интеграция с платежной системой Assist доступна в экранах «Список заявок» и «Информация о заказе».

Настройки ПК Мастер-Web

Настройки задаются в секции <appSettings> файла web.config основного приложения ПК «Мастер-Web».

Описание Значение Настройка
1 Включение дополнительного модуля Система онлайн платежей.

Обязательная настройка.

Путь к приложению «Система онлайн платежей».
<add key="paymentsLink" value="http://somesite/Payments" />
2 Настройка, определяющая статусы путевок, при которых доступна возможность оплаты через Assist.

Обязательная настройка.

Ключи статусов из таблицы [Order_Status], при которых доступна оплата через Assist.
<add key="paymentsStatuses" value="7,37" />
3 Настройка, включающая механизм хэширования пароля пользователя, сохраняемого в файлах cookie, что позволяет усилить безопасность ПК «Мастер-Web».

По умолчанию хэширование включено.
Важно!
Если данная настройка прописана в файле web.config основного приложения, то она должна быть прописана и в платежном сервисе с тем же значением.

  • false - хэширование пароля в файлах cookie выключено;
  • true или отсутствие настройки - хэширование пароля в файлах cookie включено.
<add key="HashPasswordForCookie" value="true" />
4 Настройка, определяющая партнеров в базе ПК «Мастер-Тур», которым разрешено осуществлять оплату путёвок онлайн.

Внимание! Настройка обрабатывается, начиная с релиза 9222SP1

  • Ключи партнеров таблицы [tbl_Partners], которым разрешена онлайн-оплата путёвок;
  • пустое значение или отсутствие настройки – онлайн-оплата путёвок доступна всем партнёрам.
<add key="allowedPaymentPartnerKeys" value="10764"/>
5 Настройка, позволяющая выводить предупреждающее сообщение о снятии комиссии при оплате.
  • true — сообщение отображается;
  • false или отсутствие настройки — сообщение не отображается.
<add key="askUserBeforePayment" value="true" />

Настройки приложения «Система онлайн платежей»

Настройки задаются в секции <basic> файла web.config приложения Система онлайн платежей.

Описание Значение Настройка
1 Ключ интернет-магазина Ключ магазина, который предоставляет Assist
<add key="shopID" value="326055"/>
2 Логин для авторизации в системе Assist Логин для авторизации, который предоставляет Assist
<add key="shopLogin" value="login"/>
3 Пароль для авторизации в системе Assist Пароль, который предоставляет Assist
<add key="shopPassword" value="password"/>
4 Максимальное время ожидания ответа от сервера Assist Время в миллисекундах
<add key="requestTimeout" value="1000"/>
5 Количество попыток соединения с сервером Assist Количество попыток подключения
<add key="requestAttempts" value="10"/>
6 Настройка, определяющая тип операции при проведении платежа Ключ операции из таблицы [PaymentOperations]
<add key="paymentOperationId" value="1"/>
7 Настройка, определяющая пользователя, к которому будет привязываться оплата Ключ пользователя из таблицы [UserList], к которому привязывается оплата
<add key="masterTourUser" value="100006"/>
8 Настройка, определяющая партнера, к которому будет привязываться оплата Ключ партнера из таблицы [tbl_Partners], к которому привязывается оплата
<add key="paymentFilialKey" value="1"/>
9 Настройка, определяющая отдел, к которому будет привязываться оплата Ключ отдела (кассы) из таблицы [PrtDeps], к которому привязывается оплата
<add key="departmentKey" value="2"/>
10 Настройка, определяющая статусы путевок, при которых доступна возможность оплаты через систему электронных платежей Assist Ключи статусов из таблицы [Order_Status], при которых доступна оплата через Assist
<add key="paymentsStatuses" value="7,37" />
11 Настройка, определяющая код валюты, в которой будет совершаться платеж через платежную систему Assist Код валюты из таблицы [Rates], в которой будет совершаться платеж
<add key="assistPaymentsRate" value="рб" />
12 Настройка, включающая механизм хэширования пароля пользователя, сохраняемого в файлах cookie, что позволяет усилить безопасность ПК «Мастер-Web».

По умолчанию хэширование включено.
Важно!
Если данная настройка прописана в файле web.config платежного сервиса, то она должна быть прописана и в основном приложении с тем же значением.

  • false или отсутствие настройки - хэширование пароля в файлах cookie выключено;
  • true - хэширование пароля в файлах cookie включено.
<add key="HashPasswordForCookie" value="true" />
13 Логин для авторизации в веб сервисах Логин для авторизации, который предоставляет Assist
<add key="webServiceLogin" value="" />
14 Настройка, позволяющая задавать размер комиссии, которая будет включена в сумму оплаты (для агентств). Значение комиссии, которую необходимо включить в сумму платежа (целая часть отделяется запятой).

Комиссия указывается в процентах.
Сумма оплаты вычисляется следующим образом:
Если из конечной суммы платежа в системе «PayOnline» вычесть указанный процент - получится стоимость путевки.
Пример:
Стоимость путевки - 100 у.е.
В настройке указана комиссия - 50%.
Итоговая сумма платежа в системе «PayOnline» - 200 у.е.
200 у.е. - 50% * 200 у.е. = 100 у.е. (стоимость путевки).

<add key="addAgencyComission" value="3,627" />
15 Настройка, позволяющая задавать размер комиссии, которая будет включена в сумму оплаты (для частных лиц). Значение комиссии, которую необходимо включить в сумму платежа (целая часть отделяется запятой).

Комиссия указывается в процентах.
Сумма оплаты вычисляется следующим образом:
Если из конечной суммы платежа в системе «PayOnline» вычесть указанный процент - получится стоимость путевки.
Пример:
Стоимость путевки - 100 у.е.
В настройке указана комиссия - 50%.
Итоговая сумма платежа в системе «PayOnline» - 200 у.е.
200 у.е. - 50% * 200 у.е. = 100 у.е. (стоимость путевки).

<add key="addPersonalComission" value="5" />
16 Секретное слово из личного кабинета Секретное слово, которое указывается в личном кабинете в Assist
<add key="salt" value="" />
17 Боевой адрес. Откуда получать ответ. Боевой адрес, который предоставляет Assist
<add key="assistGetTransaction" value="" />

Подготовка данных

Оплату можно произвести по путевкам, статус которых указан в настройке paymentsStatuses.
Для возможности оплаты через платёжную систему Assist тип платёжной операции (PaymentOperation), ключ которой указан в настройке paymentOperationId, должен иметь бланки и иметь признак «Приходный» (PO_Type is null or PO_Type = 0).

Работа в системе

Поиск путевки

Список заявок, забронированных в базе данных туроператора, доступен в экране «Список заказов» по адресу: http://ip-адрес сервера Мастер-Веб/MasterWebStandard/OrderList.aspx.

Предупреждение


Экран «Список заказов» доступен только для зарегистрированных и авторизованных в системе пользователей.


После ввода имени пользователя и пароля загрузится список заявок, оформленных на покупателя/агентство, указанного в поле «Партнер в БД МТ» при регистрации пользователя в Системе администрирования ПК «Мастер-Web», который сопоставлен имени текущего пользователя.

Экран «Список заказов»

Для отбора путевок можно использовать фильтры:

  • Поиск по номеру заявки;
  • Поиск по фамилии туриста;
  • Поиск по статусу документов на визу;
  • Поиск по стране;
  • Поиск по дате заявки;
  • Дата тура с... и Дата тура по...;
  • Путевки с наличием услуги «Виза»;
  • Путевки с задолженностями.

Оплата путевки

Предупреждение


Оплата доступна только для путевок имеющих статус, ключ которого указан в настройке paymentsStatuses.


Оплата путевок доступна в экранах «Список заявок» и «Информация о заказе».

Экран Список заказов доступен по адресу: http://ip-адрес сервера Мастер-Веб/MasterWebStandard/OrderList.aspx.

Оплата путевок в экране «Список заказов»

Экран Информация о заказе доступен по адресу: http://ip-адрес сервера Мастер-Веб/MasterWebStandard/OrderInfo.aspx.

Оплата путевок в экране «Информация о заказе»

Для оплаты путевки через Assist необходимо нажать ссылку Оплатить для нужной путевки (или кнопку Оплатить on-line в экране Информация о заказе), после чего пользователь попадает в экран для ввода персональных данных.
Ep 238.png
После ввода данных необходимо нажать кнопку Подтвердить. Откроется экран для ввода данных банковской карты. Ep 239.png
В данном экране необходимо заполнить информацию, необходимую для проведения оплаты путевки. Все поля являются обязательными к заполнению.
После того, как все поля заполнены, нужно нажать на кнопку Оплатить, по нажатию которой загрузится экран Информация о платеже.
Ep 240.png
Для того чтобы вернуться к списку заявок нужно нажать на кнопку Вернуться в магазин.
При успешном проведении платежа в базе автоматически создается проводка и у путевки прописывается сумма оплаты. Также в истории путевки добавляется запись об оплате через платежную систему Assist.