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

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

Версия статьи от 6-09-2021

Введение

Данный модуль реализует возможность оплаты путевок через систему электронных платежей «Tinkoff».
Широкое распространение «Tinkoff» позволяет предоставить возможность онлайн оплаты большому количеству пользователей. Особенно полезным данный модуль может быть туристическим компаниям, ориентированным на работу с частными клиентами.

Установка

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

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

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

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

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

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

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

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

Настройка

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

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

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

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

Обязательная настройка.
Внимание! Путь к приложению обязательно должен содержать ссылку на приложение из внешней сети. В противном случае, она не будет работать.

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

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

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

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

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

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

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

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

Описание Значение Настройка
1 Адрес платежной службы

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

Адрес сервиса оплаты через карту банка «Tinkoff».
<add key="LoginUrl" value="https://securepay.tinkoff.ru/v2/Init"/>
2 Идентификатор терминала

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

Параметр Терминал из раздела Терминалы в л/к сервиса «Tinkoff».
<add key="TerminalKey" value="1587990738"/>
3 Пароль терминала

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

Параметр Пароль из раздела Терминалы в л/к сервиса «Tinkoff».
<add key="TerminalPassword" value="cn5du3jxcfbmwtyuii"/>
4 Настройка, определяющая язык окна платежной формы «Tinkoff».

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

  • ru - русский язык
  • en - английский язык
<add key="LanguageFormCode" value="ru"/>
5 Код системы налогообложения, его значение должно соответствовать режимам налогообложения, сконфигурированным в ККМ при регистрации. Данная настройка необходима для работы фискализации платежей.
  • osn – общая система налогообложения
  • usn_income – упрощенная система налогообложения (Доход)
  • usn_income_outcome – упрощенная СН (Доход минус Расход)
  • patent – патентная система налогообложения
  • envd – единый налог на вмененный доход
  • esn – единый сельскохозяйственный налог
<add key="TaxationCode" value="osn"/>
6 Код ставки налогообложения. Данная настройка необходима для работы фискализации платежей.
  • none – не облагается НДС
  • vat0 – облагается НДС по ставке 0%
  • vat10 – облагается НДС по ставке 10%
  • vat20 – облагается НДС по ставке 20%
  • vat110 – облагается НДС по ставке 10/110
  • vat120 – облагается НДС по ставке 18/120
<add key="Tax" value="none"/>
7 Настройка, определяющая тип операции при проведении платежа.

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

Ключ операции (Поле PO_ID из таблицы [PaymentOperations]).
<add key="PaymentOperationId" value="6" />
8 Настройка, определяющая пользователя ПК «Мастер-Тур», к которому будет привязываться оплата.

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

Ключ пользователя, к которому привязывается оплата (Поле US_KEY из таблицы [UserList]).
<add key="masterTourUser" value="80" />
9 Настройка, определяющая партнера, к которому будет привязываться оплата.

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

Ключ филиала, к которому привязывается оплата (Поле PR_KEY из таблицы [Partners]).
<add key="paymentFilialKey" value="1" />
10 Настройка, определяющая отдел, к которому будет привязываться оплата.

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

Ключ отдела (кассы), к которому привязывается оплата (Поле PDP_KEY из таблицы [PrtDeps]).
<add key="departmentKey" value="2" />
11 Настройка, позволяющая задавать размер комиссии, которая будет включена в сумму оплаты (для агентств)
  • false или отсутствие настройки - комиссия не взимается;
  • true - процент комиссии по договору с платежной системой добавляется к стоимости путёвки. Для проведения платежей "комиссия сверху" необходим дополнительный терминал с настройками для данной схемы подключения, необходимо обращаться в службу поддержки Tinkoff.
<add key="addAgencyComission" value="false" />
12 Настройка, позволяющая задавать размер комиссии, которая будет включена в сумму оплаты (для частных лиц)
  • false или отсутствие настройки - комиссия не взимается;
  • true - процент комиссии по договору с платежной системой добавляется к стоимости путёвки. Для проведения платежей "комиссия сверху" необходим дополнительный терминал с настройками для данной схемы подключения, необходимо обращаться в службу поддержки Tinkoff.
<add key="addPersonalComission" value="false" />


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

Описание Значение Настройка
1 Имя текущей установленной службы. Наименование службы, к которой может обращаться текущий клиент (по значению настройки acceptableServices в MasterTourService). По умолчанию настройка не заполнена. Значение настройки должно быть явно задано.
<add key="acceptableServices" value=""/>
2 Включение режима записи нового платежа в систему «Мастер-Финанс». При этом в ПК «Мастер-Тур» платежи не сохраняются.
  • true - включена запись платежей в «Мастер-Финанс»;
  • false или отсутствие настройки - выключает запись платежей в «Мастер-Финанс».
<add key="AddPaymentsToMasterFinance" value="true" />
3 Настройка, определяющая дату, на которую будет подбираться курс валют для пересчета суммы к оплате.
  • FixationDate или отсутствие настройки - курс на дату последней фиксации путевки на момент совершения платежа, а если путевка не зафиксирована, то на дату совершения платежа;
  • ConfirmDate — курс на дату последнего подтверждения заявки (если подтверждения путевки еще не было, либо курс на дату подтверждения не заведен, то будет отображаться курс на момент совершения платежа);
  • OrderDate — дата оформления заявки;
  • PaymentDate - курс на дату совершения платежа.
<add key="courseExchangeDate" value="FixationDate" />

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

Оплату можно произвести по путевкам, статус которых указан в настройке paymentsStatuses.
В разделе Терминалы л/к «Tinkoff» в настройке Ссылка для уведомлений необходимо указать URL-адрес уведомления магазина в формате: somesite/Tinkoff/Payment.aspx?action=reply.

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

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

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

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


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


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

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

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

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

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

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


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


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

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

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

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

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

Для оплаты путевки через систему электронных платежей «Tinkoff» необходимо нажать ссылку Оплатить для нужной путевки или кнопку Оплатить on-line в экране Информация о заказе.

Для оплаты путевки необходимо ввести данные банковской карты, с помощью которой производится оплата:

Ввод данных банковской карты

После того, как все поля заполнены, нужно нажать на кнопку Оплатить.

При успешном проведении платежа в базе автоматически создается проводка и у путевки прописывается сумма оплаты. На указанную электронную почту приходят квитанции об оплате, в л/к «Tinkoff» в разделе Операции со статусом Подтвержден появляются данные о проведенном платеже, включая номер путевки. Также в истории путевки добавляется запись об оплате через платежную систему «Tinkoff».