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

Материал из Megatec
Перейти к: навигация, поиск
[досмотренная версия][досмотренная версия]
Строка 46: Строка 46:
 
Дополнительные настройки, задаются в файле <code>web.config</code>, находящемся в папке '''Finance'''.
 
Дополнительные настройки, задаются в файле <code>web.config</code>, находящемся в папке '''Finance'''.
  
<table class="MsoNormalTable" border="0" cellspacing="0" cellpadding="0" width="645"
+
{| class="wikitable"
style='width:483.9pt;margin-left:-.75pt;border-collapse:collapse'>
+
! scope="col" width="50px" | №
  <tr>
+
! scope="col" width="400px" | Описание
    <td width='46' valign='top' style='width:34.25pt;border:solid black 1.0pt;
+
! scope="col" width="250px" | Значение
  border-right:none;padding:0cm 5.4pt 0cm 5.4pt'>
+
! scope="col" width="400px" | Настройка
      <p class='TitleTable' style='layout-grid-mode:char'>№</p>
+
|-
    </td>
+
| 1
    <td width='138' valign='top' style='width:103.65pt;border:solid black 1.0pt;
+
|| Определяет тип платежной операции.<br /><br />Тип платежной операции так же может задаваться в настройке '''SYSPaymentOperationId''' в таблице ''SystemSettings''. В таком случае в настройке '''PaymentOperationId''' задается название настройки из таблицы ''SystemSettings''.
  border-right:none;padding:0cm 5.4pt 0cm 5.4pt'>
+
|| '''Идентификатор (PO_Id) типа операции из таблицы PaymentOperations.'''<br /><br />'''Либо название настройки SYSPaymentOperationId из таблицы SystemSettings.'''
      <p class='TitleTable' style='layout-grid-mode:char'>Описание</p>
+
|| <add key="'''PaymentOperationId'''" value="<span style="color:blue">'''1'''</span>" />
    </td>
+
|-
    <td width='204' valign='top' style='width:153.0pt;border:solid black 1.0pt;
+
| 2
  border-right:none;padding:0cm 5.4pt 0cm 5.4pt'>
+
|| Определяет время действия ''идентификатора аутентифации'' ('''token''').
      <p class='TitleTable' style='layout-grid-mode:char'>Значение</p>
+
|| '''Время действия (в минутах).'''
    </td>
+
|| <add key="'''TokenExpireTime'''" value="<span style="color:blue">'''10'''</span>" />
    <td width='257' valign='top' style='width:193.0pt;border:solid black 1.0pt;
+
|-
  padding:0cm 5.4pt 0cm 5.4pt'>
+
| 3
      <p class='TitleTable' style='layout-grid-mode:char'>Настройка</p>
+
|| Включение режима ''записи нового платежа'' в систему '''«Мастер-Финанс»'''. При этом в ПК «Мастер-Тур» платежи ''не сохраняются''.
    </td>
+
|| '''true''' - включена запись платежей в «Мастер-Финанс»;
  </tr>
+
'''false''' или '''отсутствие настройки''' - выключает запись платежей в «Мастер-Финанс».
  <tr>
+
|| <add key="'''AddPaymentsToMasterFinance'''" value="<span style="color:blue">'''true'''</span>"/>
    <td width='46' valign='top' style='width:34.25pt;border-top:none;border-left:
+
|-
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
+
|| 4
  padding:0cm 5.4pt 0cm 5.4pt'>
+
|| Определяет ''тип платежной системы'' при сохранении платежей в систему '''«Мастер-Финанс»''' (столбец '''DP_PAYMENTSSYS''' таблицы '''FIN_DOGOVOR_PAID''').
      <p class='Tabletext' style='layout-grid-mode:char'>1</p>
+
|| '''Название платежной системы.'''
    </td>
+
|| <add key="'''PaymentSystem'''" value="<span style="color:blue">'''Лидер'''</span>"/>
    <td width='138' valign='top' style='width:103.65pt;border-top:none;border-left:
+
|-
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
+
|| 5
  padding:0cm 5.4pt 0cm 5.4pt'>
+
|| Настройка, определяющая ''дату'', на которую должен ''подбираться курс валют'' для пересчета ''суммы к оплате''.
      <p class='Tabletext' style='layout-grid-mode:char'>
+
|| '''orderdate''' — дата ''оформления заявки'';<br />
      Определяет тип платежной операции.<br /><br />Тип платежной операции так же может задаваться в настройке '''SYSPaymentOperationId''' в таблице ''SystemSettings''. В таком случае в настройке '''PaymentOperationId''' задается ''название настройки'' из таблицы ''SystemSettings''.
+
'''today''' — курс на ''текущую дату'';<br />
      </p>
+
'''confirmdate''' — курс на ''дату подтверждения заявки'' (если ''подтверждения'' путевки еще ''не было'', либо курс на ''дату подтверждения не заведен'', то будет ''отображаться'' курс на ''текущую дату'');<br />
    </td>
+
'''fixationdate''' — курс на ''дату фиксации''.
    <td width='204' valign='top' style='width:153.0pt;border-top:none;border-left:
+
|| <add key="'''courseExchangeDate'''" value="<span style="color:blue">'''orderdate'''</span>"/>
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
+
|-
  padding:0cm 5.4pt 0cm 5.4pt'>
+
|| 5
      <p class='Tabletext' style='layout-grid-mode:char'>
+
|| Настройка, позволяющая включить механизм [[#Логирование|логирования]].
        <b>
+
|| '''true''' — система логирования ''включена'';
          Идентификатор (PO_Id) типа операции из таблицы PaymentOperations.<br /><br />Либо  название настройки SYSPaymentOperationId из таблицы SystemSettings.
+
'''false''' или '''отсутствие настройки''' — логирование ''выключено''.
        </b>
+
|| <add key="'''UseLog'''" value="<span style="color:blue">'''true'''</span>"/>
      </p>
+
|}
    </td>
 
    <td width='257' valign='top' style='width:193.0pt;border:solid black 1.0pt;
 
  border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='MsoNormal' style='layout-grid-mode:char'>
 
        <span lang='EN-US'>
 
          &lt;add key=&quot;<b>PaymentOperationId</b>&quot; value=&quot;<b>
 
            <i>
 
              <span style='color:blue'>1</span>
 
            </i>
 
          </b>&quot;/&gt;
 
        </span>
 
      </p>
 
    </td>
 
  </tr>
 
 
 
  <tr>
 
    <td width='46' valign='top' style='width:34.25pt;border-top:none;border-left:
 
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
 
  padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='Tabletext' style='layout-grid-mode:char'>2</p>
 
    </td>
 
    <td width='138' valign='top' style='width:103.65pt;border-top:none;border-left:
 
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
 
  padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='Tabletext' style='layout-grid-mode:char'>Определяет время действия идентификатора аутентифации (token)</p>
 
    </td>
 
    <td width='204' valign='top' style='width:153.0pt;border-top:none;border-left:
 
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
 
  padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='Tabletext' style='layout-grid-mode:char'>
 
        <b>Время действия (в минутах)</b>
 
      </p>
 
    </td>
 
    <td width='257' valign='top' style='width:193.0pt;border:solid black 1.0pt;
 
  border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='MsoNormal' style='layout-grid-mode:char'>
 
        <span lang='EN-US'>
 
          &lt;add key=&quot;<b>TokenExpireTime</b>&quot; value=&quot;<b>
 
            <i>
 
              <span style='color:blue'>10</span>
 
            </i>
 
          </b>&quot;/&gt;
 
        </span>
 
      </p>
 
    </td>
 
  </tr>
 
 
 
  <tr>
 
    <td width='46' valign='top' style='width:34.25pt;border-top:none;border-left:
 
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
 
  padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='Tabletext' style='layout-grid-mode:char'>3</p>
 
    </td>
 
    <td width='138' valign='top' style='width:103.65pt;border-top:none;border-left:
 
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
 
  padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='Tabletext' style='layout-grid-mode:char'>Включает режим записи нового платежа в систему '''Мастер-Финанс'''. При этом в Мастер-Тур платежи не сохраняются.</p>
 
    </td>
 
    <td width='204' valign='top' style='width:153.0pt;border-top:none;border-left:
 
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
 
  padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='Tabletext' style='layout-grid-mode:char'>
 
        <b>true</b> - включает запись платежей в Мастер-Финанс;
 
      </p>
 
      <p class='Tabletext' style='layout-grid-mode:char'>
 
        <b>false</b> - выключает запись платежей в Мастер-Финанс.
 
      </p>
 
    </td>
 
    <td width='257' valign='top' style='width:193.0pt;border:solid black 1.0pt;
 
  border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='MsoNormal' style='layout-grid-mode:char'>
 
        <span lang='EN-US'>
 
          &lt;add key=&quot;<b>AddPaymentsToMasterFinance</b>&quot; value=&quot;<b>
 
            <i>
 
              <span style='color:blue'>true</span>
 
            </i>
 
          </b>&quot;/&gt;
 
        </span>
 
      </p>
 
    </td>
 
  </tr>
 
 
 
  <tr>
 
    <td width='46' valign='top' style='width:34.25pt;border-top:none;border-left:
 
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
 
  padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='Tabletext' style='layout-grid-mode:char'>4</p>
 
    </td>
 
    <td width='138' valign='top' style='width:103.65pt;border-top:none;border-left:
 
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
 
  padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='Tabletext' style='layout-grid-mode:char'>Определяет тип платежной системы при сохранении платежей в систему Мастер-Финанс (столбец DP_PAYMENTSSYS таблицы FIN_DOGOVOR_PAID).</p>
 
    </td>
 
    <td width='204' valign='top' style='width:153.0pt;border-top:none;border-left:
 
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
 
  padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='Tabletext' style='layout-grid-mode:char'>
 
        <b>Название платежной системы</b>
 
      </p>
 
    </td>
 
    <td width='257' valign='top' style='width:193.0pt;border:solid black 1.0pt;
 
  border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='MsoNormal' style='layout-grid-mode:char'>
 
        <span lang='EN-US'>
 
          &lt;add key=&quot;<b>PaymentSystem</b>&quot; value=&quot;<b>
 
            <i>
 
              <span style='color:blue'>Лидер</span>
 
            </i>
 
          </b>&quot;/&gt;
 
        </span>
 
      </p>
 
    </td>
 
  </tr>
 
  <tr>
 
  <td width='31' valign='top' style='width:23.4pt;border:solid windowtext 1.0pt;
 
  border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
 
    <p class='Tabletext'>5</p>
 
  </td>
 
  <td width='153' valign='top' style='width:114.5pt;border-top:none;border-left:
 
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
 
  padding:0cm 5.4pt 0cm 5.4pt'>
 
    <p class='Tabletext'>Настройка, определяющая курс валют на какую дату должен подбираться для пересчета суммы к оплате</p>
 
  </td>
 
  <td width='204' valign='top' style='width:153.0pt;border-top:none;border-left:
 
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
 
  padding:0cm 5.4pt 0cm 5.4pt'>
 
    <p class='MsoPlainText'>
 
      <b>
 
        <span style='font-family:"Arial","sans-serif"'> orderdate</span>
 
      </b>
 
      <span style='font-family:
 
  "Arial","sans-serif"'> &mdash; дата оформления заявки; </span>
 
    </p>
 
    <p class='MsoPlainText'>
 
      <b>
 
        <span style='font-family:"Arial","sans-serif"'> today</span>
 
      </b>
 
      <span style='font-family:
 
  "Arial","sans-serif"'> &mdash;  курс на текущую дату; </span>
 
    </p>
 
    <p class='MsoPlainText'>
 
      <b>
 
        <span style='font-family:"Arial","sans-serif"'> confirmdate</span>
 
      </b>
 
      <span style='font-family:
 
  "Arial","sans-serif"'> &mdash; курс на дату подтверждения заявки (если подтверждения путевки еще не было, либо курс на дату подтверждения не заведен, то будет отображаться курс на текущую дату); </span>
 
    </p>
 
    <p class='MsoPlainText'>
 
      <b>
 
        <span style='font-family:"Arial","sans-serif"'> fixationdate</span>
 
      </b>
 
      <span style='font-family:
 
  "Arial","sans-serif"'> &mdash; курс на дату фиксации.</span>
 
    </p>
 
  </td>
 
    <td width='257' valign='top' style='width:193.0pt;border:solid black 1.0pt;
 
  border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='MsoNormal' style='layout-grid-mode:char'>
 
        <span lang='EN-US'>
 
          &lt;add key=&quot;<b>courseExchangeDate</b>&quot; value=&quot;<b><i><span style='color:blue'>orderdate</span></i></b>&quot;/&gt;
 
        </span>
 
      </p>
 
    </td> 
 
  </tr>
 
 
 
  <tr>
 
  <td width='31' valign='top' style='width:23.4pt;border:solid windowtext 1.0pt;
 
  border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
 
    <p class='Tabletext'>6</p>
 
  </td>
 
  <td width='153' valign='top' style='width:114.5pt;border-top:none;border-left:
 
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
 
  padding:0cm 5.4pt 0cm 5.4pt'>
 
    <p class='Tabletext'>Настройка, позволяющая включить механизм [[#Логирование|логирования]]</p>
 
  </td>
 
  <td width='204' valign='top' style='width:153.0pt;border-top:none;border-left:
 
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
 
  padding:0cm 5.4pt 0cm 5.4pt'>
 
    <p class='MsoPlainText'>
 
      <b>
 
        <span style='font-family:"Arial","sans-serif"'> true</span>
 
      </b>
 
      <span style='font-family:
 
  "Arial","sans-serif"'> &mdash; система логирования включена; </span>
 
    </p>
 
    <p class='MsoPlainText'>
 
      <b>
 
        <span style='font-family:"Arial","sans-serif"'> false или отсутствие настройки</span>
 
      </b>
 
      <span style='font-family:
 
  "Arial","sans-serif"'> &mdash; логирование выключено.</span>
 
    </p>
 
  </td>
 
    <td width='257' valign='top' style='width:193.0pt;border:solid black 1.0pt;
 
  border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
 
      <p class='MsoNormal' style='layout-grid-mode:char'>
 
        <span lang='EN-US'>
 
          &lt;add key=&quot;<b>UseLog</b>&quot; value=&quot;<b><i><span style='color:blue'>true</span></i></b>&quot;/&gt;
 
        </span>
 
      </p>
 
    </td> 
 
  </tr>
 
 
 
</table>
 
  
 
==Подготовка данных==
 
==Подготовка данных==
Строка 393: Строка 189:
 
* '''BeginTourDate''' - дата начала тура;
 
* '''BeginTourDate''' - дата начала тура;
 
* '''EndTourDate''' - дата окончания тура.
 
* '''EndTourDate''' - дата окончания тура.
 +
* '''MainTouristFIO''' - фамилия и инициалы главного туриста.
 +
 +
 
===Проведение платежа по заявке (метод CreatePayment)===
 
===Проведение платежа по заявке (метод CreatePayment)===
 
 
====Описание метода====
 
====Описание метода====
  
Строка 402: Строка 200:
  
 
<code>public int CreatePayment(string userToken, DateTime date, Decimal sum, string currencyIsoCode, string reservationCode, string paymentId)</code>
 
<code>public int CreatePayment(string userToken, DateTime date, Decimal sum, string currencyIsoCode, string reservationCode, string paymentId)</code>
 +
 
====Описание принимаемых методом параметров====
 
====Описание принимаемых методом параметров====
  
Строка 420: Строка 219:
 
* '''4''' - путевка уже оплачена;
 
* '''4''' - путевка уже оплачена;
 
* '''6''' - некорректный или устаревший идентификатор аутентификации(token).
 
* '''6''' - некорректный или устаревший идентификатор аутентификации(token).
 +
* '''7''' - платеж с таким идентификатором уже существует.
  
 
При этом в БД создается платеж по выбранной путевке.
 
При этом в БД создается платеж по выбранной путевке.

Версия 10:19, 15 июля 2013

Версия статьи от 15-07-2013. Для перехода на версию статьи, соответствующую используемой Вами версии программы, нажмите ссылку в таблице ниже:

Более ранние версии:
До 2009.2.12 включительно
До 2009.2.15 включительно
До 2009.2.19 включительно


Введение

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

  • TourPay
  • Лидер
  • PayTravel

Установка

Для установки Сервиса для интеграции с платежной системой нужно создать директорию Finance в каталоге c:/inetpub/wwwroot/ (корневом каталоге IIS) и выложить туда распакованные файлы из архива mw-finance-2007.2.XX.XXXX.zip В управлении IIS необходимо создать виртуальный каталог для папки Finance.

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

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

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

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

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

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

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

Настройка

После установки сервис для интеграции (например «Сервис для интеграции с платежной системой Название_Системы») доступен по адресу
http://ip-адрес сервера Мастер-Веб/Finance/FinanceService.asmx.

Настройки в файле WEB.CONFIG

Дополнительные настройки, задаются в файле web.config, находящемся в папке Finance.

Описание Значение Настройка
1 Определяет тип платежной операции.

Тип платежной операции так же может задаваться в настройке SYSPaymentOperationId в таблице SystemSettings. В таком случае в настройке PaymentOperationId задается название настройки из таблицы SystemSettings.
Идентификатор (PO_Id) типа операции из таблицы PaymentOperations.

Либо название настройки SYSPaymentOperationId из таблицы SystemSettings.
<add key="PaymentOperationId" value="1" />
2 Определяет время действия идентификатора аутентифации (token). Время действия (в минутах). <add key="TokenExpireTime" value="10" />
3 Включение режима записи нового платежа в систему «Мастер-Финанс». При этом в ПК «Мастер-Тур» платежи не сохраняются. true - включена запись платежей в «Мастер-Финанс»;

false или отсутствие настройки - выключает запись платежей в «Мастер-Финанс».

<add key="AddPaymentsToMasterFinance" value="true"/>
4 Определяет тип платежной системы при сохранении платежей в систему «Мастер-Финанс» (столбец DP_PAYMENTSSYS таблицы FIN_DOGOVOR_PAID). Название платежной системы. <add key="PaymentSystem" value="Лидер"/>
5 Настройка, определяющая дату, на которую должен подбираться курс валют для пересчета суммы к оплате. orderdate — дата оформления заявки;

today — курс на текущую дату;
confirmdate — курс на дату подтверждения заявки (если подтверждения путевки еще не было, либо курс на дату подтверждения не заведен, то будет отображаться курс на текущую дату);
fixationdate — курс на дату фиксации.

<add key="courseExchangeDate" value="orderdate"/>
5 Настройка, позволяющая включить механизм логирования. true — система логирования включена;

false или отсутствие настройки — логирование выключено.

<add key="UseLog" value="true"/>

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

Проверка заявок и проведение платежа через платежную систему в базу туроператора осуществляется по оформленным путевкам. У путевки должен быть зафиксирован курс валюты, т.е. в истории путевки должно присутствовать сообщение "Фиксация курса".

Логирование

Для детализации ошибок, которые могут возникнуть при работе web-сервиса (например, когда методы web-сервиса возвращают значение ErrorCode 2) можно включить логирование.

В секции <configSections> надо добавить строку:

<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />

Далее прописывается секция <log4net>:

<log4net>
   <appender name="ExceptionLogger" type="log4net.Appender.FileAppender">
     <param name="File" value="C:\\MasterTourLogs\\ExceptionLogger.txt" />
     <param name="AppendToFile" value="true" />
     <layout type="log4net.Layout.PatternLayout">
       <param name="ConversionPattern" value="%date [%thread] %-5level [%ndc] - %message %newline %exception" />
     </layout>
   </appender>
   <logger name="ExceptionLogger">
     <param name="Threshold" value="ALL" />
     <appender-ref ref="ExceptionLogger" />
   </logger>
 </log4net>

Красным цветом выделен путь к файлу лога. Здесь может быть указан произвольный путь.


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

Аутентификация (метод GetUserToken)

Метод возвращает строку - идентификатор аутентификации, который используется для подтверждения авторизации при вызове методов web-сервисов.

Сигнатура метода

public TokenResult GetUserToken(string userLogin, string userPassword)

Описание принимаемых методом параметров

  • userLogin - имя пользователя;
  • userPassword - пароль.

Возвращаемые значения

Метод возвращает результат своей работы в виде класса TokenResult. Корректность результата проверяется значением поля ErrorCode данного класса:

  • 0 - результат корректный;
  • 2 – внутренняя ошибка;
  • 5 - неправильный логин или пароль.

Описание класса приведено ниже:

public class TokenResult
 {
     public int ErrorCode;
     public string Token;
 }
 

где

  • ErrorCode - код результата;
  • Token - идентификатор аутентификации.

Проверка заявки (метод CheckReservation)

Описание метода

Данный метод предназначен для проверки наличия заявки в БД и определения ее стоимости.

Сигнатура метода

public AmountSum CheckReservation(string userToken, string dgCode)

Описание принимаемых методом параметров

  • userToken - идентификатор аутентификации, полученный при вызове метода GetUserToken;
  • dgCode - строковая переменная, представляющая собой код проверяемой путевки.

Возвращаемые значения

Метод возвращает результат своей работы в виде класса AmountSum. Корректность результата проверяется значением поля ErrorCode данного класса:

  • 0 – результат корректный, в полях возвращены корректные значения;
  • 1 – заявка не найдена в БД;
  • 2 – внутренняя ошибка;
  • 3 - заявка была аннулирована;
  • 4 - путевка уже оплачена;
  • 6 - некорректный или устаревший идентификатор аутентификации(token).

Ниже приводится описание класса.

public class AmountSum
    {
        public double Amount
        public string RateCode
        public double NationalCurrencyPrice
        public string NationalRateCode
        public int ErrorCode
        public int FilialKey
        public DateTime BeginTourDate
        public DateTime EndTourDate
    }
  • Amount - сумма к оплате в валюте тура;
  • RateCode - iso-код валюты тура;
  • NationalCurrencyPrice - сумма к оплате в национальной валюте;
  • NationalRateCode - iso-код национальной валюты;
  • ErrorCode - код результата;
  • FilialKey - ключ филиала, который создал заявку;
  • BeginTourDate - дата начала тура;
  • EndTourDate - дата окончания тура.
  • MainTouristFIO - фамилия и инициалы главного туриста.


Проведение платежа по заявке (метод CreatePayment)

Описание метода

Данный метод предназначен для создания платежа по путевке в финансовом блоке ПК «Мастер-Тур».

Сигнатура метода

public int CreatePayment(string userToken, DateTime date, Decimal sum, string currencyIsoCode, string reservationCode, string paymentId)

Описание принимаемых методом параметров

  • userToken - идентификатор аутентифкации;
  • date – дата проведения платежа;
  • sum – сумма платежа;
  • currencyIsoCode – ISO-код валюты, в которой осуществляется платеж;
  • reservationCode – номер путевки;
  • paymentId – идентификатор платежа во внешней системе.

Возвращаемые значения

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

  • 0 – операция выполнена успешно, платеж проведен;
  • 1 – заявка не найдена в БД;
  • 2 – внутренняя ошибка при создании платежа;
  • 3 - заявка была аннулирована;
  • 4 - путевка уже оплачена;
  • 6 - некорректный или устаревший идентификатор аутентификации(token).
  • 7 - платеж с таким идентификатором уже существует.

При этом в БД создается платеж по выбранной путевке.