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

Материал из Megatec
Перейти к: навигация, поиск
[досмотренная версия][непроверенная версия]
Строка 153: Строка 153:
 
| '''Ключ операции''' из таблицы '''[PaymentOperations]'''
 
| '''Ключ операции''' из таблицы '''[PaymentOperations]'''
 
| <syntaxhighlight lang="xml" enclose="div">
 
| <syntaxhighlight lang="xml" enclose="div">
<add key="kindOfPay" value="1"/>
+
<add key="paymentOperationId" value="1"/>
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Строка 169: Строка 169:
 
| '''Ключ партнера''' из таблицы '''[tbl_Partners]''', к которому привязывается оплата
 
| '''Ключ партнера''' из таблицы '''[tbl_Partners]''', к которому привязывается оплата
 
| <syntaxhighlight lang="xml" enclose="div">
 
| <syntaxhighlight lang="xml" enclose="div">
<add key="filialKey" value="1"/>
+
<add key="paymentFilialKey" value="1"/>
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Строка 203: Строка 203:
 
Если данная настройка прописана в файле <code>web.config</code> платежного сервиса, то она должна быть прописана и в основном приложении с тем же значением.
 
Если данная настройка прописана в файле <code>web.config</code> платежного сервиса, то она должна быть прописана и в основном приложении с тем же значением.
 
|  
 
|  
* '''false''' - хэширование пароля в файлах <code>cookie</code> ''выключено'';
+
* '''false''' или '''отсутствие настройки''' - хэширование пароля в файлах <code>cookie</code> ''выключено'';
* '''true''' или '''отсутствие настройки''' - хэширование пароля в файлах <code>cookie</code> ''включено''.
+
* '''true''' - хэширование пароля в файлах <code>cookie</code> ''включено''.
 
| <syntaxhighlight lang="xml" enclose="div">
 
| <syntaxhighlight lang="xml" enclose="div">
 
<add key="HashPasswordForCookie" value="true" />
 
<add key="HashPasswordForCookie" value="true" />
 +
</syntaxhighlight>
 +
 +
|- style="vertical-align:text-top"
 +
| 13
 +
| Логин для авторизации в веб сервисах
 +
| '''Логин для авторизации''', который предоставляет Assist 
 +
| <syntaxhighlight lang="xml" enclose="div">
 +
<add key="webServiceLogin" value="" />
 +
</syntaxhighlight>
 +
 +
|- style="vertical-align:text-top"
 +
 +
| 14
 +
| Настройка, позволяющая задавать '''размер комиссии''', которая будет '''включена в сумму оплаты''' ('''для агентств''').
 +
| '''Значение комиссии''', которую необходимо ''включить в сумму платежа'' (целая часть отделяется запятой).
 +
Комиссия указывается '''в процентах'''.<br />
 +
Сумма оплаты вычисляется следующим образом:<br />
 +
Если из ''конечной суммы'' платежа в системе «PayOnline» ''вычесть'' указанный процент - получится ''стоимость путевки''.<br />
 +
Пример:<br />
 +
Стоимость путевки - '''100 у.е.''' <br />
 +
В настройке указана комиссия - '''50%'''.<br />
 +
Итоговая сумма платежа в системе «PayOnline» - '''200 у.е.'''<br />
 +
<code>'''200 у.е.''' - '''50% * 200 у.е.''' = '''100 у.е.'''</code> (''стоимость путевки'').
 +
|<syntaxhighlight lang="xml" enclose="div">
 +
<add key="addAgencyComission" value="3,627" />
 +
</syntaxhighlight>
 +
 +
|- style="vertical-align:text-top"
 +
| 15
 +
| Настройка, позволяющая задавать '''размер комиссии''', которая будет '''включена в сумму оплаты''' ('''для частных лиц''').
 +
| '''Значение комиссии''', которую необходимо ''включить в сумму платежа'' (целая часть отделяется запятой).
 +
Комиссия указывается '''в процентах'''.<br />
 +
Сумма оплаты вычисляется следующим образом:<br />
 +
Если из ''конечной суммы'' платежа в системе «PayOnline» ''вычесть'' указанный процент - получится ''стоимость путевки''.<br />
 +
Пример:<br />
 +
Стоимость путевки - '''100 у.е.''' <br />
 +
В настройке указана комиссия - '''50%'''.<br />
 +
Итоговая сумма платежа в системе «PayOnline» - '''200 у.е.'''<br />
 +
<code>'''200 у.е.''' - '''50% * 200 у.е.''' = '''100 у.е.'''</code> (''стоимость путевки'').
 +
|<syntaxhighlight lang="xml" enclose="div">
 +
<add key="addPersonalComission" value="5" />
 +
</syntaxhighlight>
 +
 +
|- style="vertical-align:text-top"
 +
| 16
 +
| Секретное слово из личного кабинета
 +
| '''Секретное слово''', которое указывается в личном кабинете в Assist 
 +
| <syntaxhighlight lang="xml" enclose="div">
 +
<add key="salt" value="" />
 +
</syntaxhighlight>
 +
 +
|- style="vertical-align:text-top"
 +
| 17
 +
| Боевой адрес. Откуда получать ответ.
 +
| '''Боевой адрес''', который предоставляет Assist 
 +
| <syntaxhighlight lang="xml" enclose="div">
 +
<add key="assistGetTransaction" value="" />
 
</syntaxhighlight>
 
</syntaxhighlight>
 
|- style="vertical-align:text-top"
 
|- style="vertical-align:text-top"
Строка 213: Строка 270:
 
==Подготовка данных==
 
==Подготовка данных==
 
Оплату можно произвести по путевкам, '''статус''' которых указан в настройке '''paymentsStatuses'''.<br />
 
Оплату можно произвести по путевкам, '''статус''' которых указан в настройке '''paymentsStatuses'''.<br />
Для возможности оплаты через платёжную систему Assist '''тип платёжной операции''' (PaymentOperation), ключ которой указан в настройке '''kindOfPay''', должен иметь бланки и иметь признак '''«Приходный»''' (PO_Type is null or PO_Type = 0).
+
Для возможности оплаты через платёжную систему Assist '''тип платёжной операции''' (PaymentOperation), ключ которой указан в настройке '''paymentOperationId''', должен иметь бланки и иметь признак '''«Приходный»''' (PO_Type is null or PO_Type = 0).
  
 
==Работа в системе==
 
==Работа в системе==
Строка 256: Строка 313:
 
<br />
 
<br />
  
Для оплаты путевки через '''Assist''' необходимо нажать ссылку '''Оплатить''' для нужной путевки (или кнопку '''Оплатить on-line''' в экране '''Информация о заказе'''), после чего пользователь попадает в экран выбора платежного средства.
+
Для оплаты путевки через '''Assist''' необходимо нажать ссылку '''Оплатить''' для нужной путевки (или кнопку '''Оплатить on-line''' в экране '''Информация о заказе'''), после чего пользователь попадает в экран для ввода персональных данных.
<br />
 
[[Файл:755.PNG]]<br />
 
<br />
 
После выбора платежного средства необходимо нажать кнопку '''Продолжить'''. Откроется экран для ввода персональных данных.
 
 
<br />
 
<br />
[[Файл:756.PNG]]<br />
+
[[Файл: ep_238.png|x500px]]<br />
В данном экране необходимо заполнить информацию, необходимую для проведения оплаты путевки. Поля, отмеченные звездочками (<span style="color:red">'''*'''</span>), являются обязательными к заполнению.<BR>
+
После ввода данных необходимо нажать кнопку Подтвердить. Откроется экран для ввода данных банковской карты.
 +
[[Файл: ep_239.png|x500px]]<br />  
 +
В данном экране необходимо заполнить информацию, необходимую для проведения оплаты путевки. Все поля являются обязательными к заполнению.<BR>
 
После того, как все поля заполнены, нужно нажать на кнопку '''Оплатить''', по нажатию которой загрузится экран '''Информация о платеже'''.
 
После того, как все поля заполнены, нужно нажать на кнопку '''Оплатить''', по нажатию которой загрузится экран '''Информация о платеже'''.
 
<BR>
 
<BR>
[[Файл:757.PNG]]<BR>
+
[[Файл: ep_240.png|x500px]]<br />
 
Для того чтобы вернуться к списку заявок нужно нажать на кнопку '''Вернуться в магазин'''.<br />
 
Для того чтобы вернуться к списку заявок нужно нажать на кнопку '''Вернуться в магазин'''.<br />
 
При успешном проведении платежа в базе автоматически создается проводка и у путевки прописывается сумма оплаты. Также в истории путевки добавляется запись об оплате через платежную систему '''Assist'''.
 
При успешном проведении платежа в базе автоматически создается проводка и у путевки прописывается сумма оплаты. Также в истории путевки добавляется запись об оплате через платежную систему '''Assist'''.
  
 
[[Category:Платежные web-сервисы]]
 
[[Category:Платежные web-сервисы]]

Версия 12:53, 13 ноября 2018

Версия статьи от 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.