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

Материал из Megatec
Перейти к: навигация, поиск
[непроверенная версия][непроверенная версия]
(Возвращаемые значения)
(Работа в системе)
Строка 82: Строка 82:
  
 
==Работа в системе==
 
==Работа в системе==
 +
===Аутентификация (метод GetUserToken)===
 +
Метод возвращает строку - идентификатор аутентификации, который используется для подтверждения авторизации при вызове методов web-сервисов.
 +
====Сигнатура метода====
 +
public TokenResult GetUserToken(string userLogin, string userPassword)
 +
====Описание принимаемых методом параметров====
 +
* userLogin - имя пользователя;
 +
* userPassword - пароль.
 +
====Возвращаемые значения====
 +
Метод возвращает результат своей работы в виде класса TokenResult. Корректность результата проверяется значением поля ErrorCode данного класса:
 +
* 0 - результат корректный;
 +
* 2 – внутренняя ошибка;
 +
* 5 - неправильный логин или пароль.
 +
Описание класса приведено ниже:
 +
<nowiki>public class TokenResult
 +
{
 +
    public int ErrorCode;
 +
    public string Token;
 +
}
 +
</nowiki>
 +
где
 +
* ErrorCode - код результата;
 +
* Token - идентификатор аутентификации.
 +
 
===Проверка заявки (метод CheckReservation)===
 
===Проверка заявки (метод CheckReservation)===
  
Строка 90: Строка 113:
 
====Сигнатура метода====  
 
====Сигнатура метода====  
  
public AmountSum CheckReservation(string dgCode)
+
public AmountSum CheckReservation(string userToken, string dgCode)
  
 
====Описание принимаемых методом параметров====
 
====Описание принимаемых методом параметров====
  
*dgCode - строковая переменная, представляющая собой код проверяемой путевки.
+
* userToken - идентификатор аутентификации, полученный при вызове метода GetUserToken;
 +
* dgCode - строковая переменная, представляющая собой код проверяемой путевки.
  
 
====Возвращаемые значения====
 
====Возвращаемые значения====
Строка 100: Строка 124:
 
Метод возвращает результат своей работы в виде класса AmountSum. Корректность результата проверяется значением поля ErrorCode данного класса:
 
Метод возвращает результат своей работы в виде класса AmountSum. Корректность результата проверяется значением поля ErrorCode данного класса:
  
** 0 – результат корректный, в полях возвращены корректные значения;  
+
* 0 – результат корректный, в полях возвращены корректные значения;  
** 1 – заявка не найдена в БД.
+
* 1 – заявка не найдена в БД;
 +
* 2 – внутренняя ошибка;
 +
* 3 - заявка была аннулирована;
 +
* 4 - путевка уже оплачена;
 +
* 6 - некорректный или устаревший идентификатор аутентификации(token).
  
 
Ниже приводится описание класса.
 
Ниже приводится описание класса.
Строка 111: Строка 139:
 
         public string NationalRateCode
 
         public string NationalRateCode
 
         public int ErrorCode
 
         public int ErrorCode
 +
        public int FilialKey
 +
        public DateTime BeginTourDate
 +
        public DateTime EndTourDate
 
     }</nowiki>
 
     }</nowiki>
  
* Amount - сумма к оплате в валюте тура  
+
* Amount - сумма к оплате в валюте тура;
* RateCode - iso-код валюты тура  
+
* RateCode - iso-код валюты тура;
* NationalCurrencyPrice - сумма к оплате в национальной валюте
+
* NationalCurrencyPrice - сумма к оплате в национальной валюте;
* NationalRateCode - iso-код национальной валюты
+
* NationalRateCode - iso-код национальной валюты;
* ErrorCode - код результата.
+
* ErrorCode - код результата;
 +
* FilialKey - ключ филиала, который создал заявку;
 +
* BeginTourDate - дата начала тура;
 +
* EndTourDate - дата окончания тура.
 
===Проведение платежа по заявке (метод CreatePayment)===
 
===Проведение платежа по заявке (метод CreatePayment)===
  
Строка 126: Строка 160:
 
====Сигнатура метода====  
 
====Сигнатура метода====  
  
public int CreatePayment(DateTime date, double sum, string currencyIsoCode, string reservationCode, string paymentId)
+
public int CreatePayment(string userToken, DateTime date, Decimal sum, string currencyIsoCode, string reservationCode, string paymentId)
 
====Описание принимаемых методом параметров====
 
====Описание принимаемых методом параметров====
  
* date – дата проведения платежа
+
* userToken - идентификатор аутентифкации;
* sum – сумма платежа
+
* date – дата проведения платежа;
* currencyIsoCode – ISO-код валюты, в которой осуществляется платеж
+
* sum – сумма платежа;
* reservationCode – номер путевки
+
* currencyIsoCode – ISO-код валюты, в которой осуществляется платеж;
* paymentId – идентификатор платежа во внешней системе
+
* reservationCode – номер путевки;
 +
* paymentId – идентификатор платежа во внешней системе.
  
 
====Возвращаемые значения====
 
====Возвращаемые значения====
Строка 143: Строка 178:
 
* 3 - заявка была аннулирована;
 
* 3 - заявка была аннулирована;
 
* 4 - путевка уже оплачена;
 
* 4 - путевка уже оплачена;
* 5 - неправильный логин или пароль;
+
* 6 - некорректный или устаревший идентификатор аутентификации(token).
* 6 - некорректный или устаревший идентификатор авторизации (token).
 
  
 
При этом в БД создается платеж по выбранной путевке.
 
При этом в БД создается платеж по выбранной путевке.

Версия 10:41, 4 июня 2012

Введение

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

  • TourPay
  • Контакт
  • Лидер

Установка

Для установки Сервиса для интеграции с платежной системой нужно создать директорию 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)


848.PNG

  • 2. Диспетчер служб IIS


849.PNG

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


850.PNG

  • 4. В открывшемся окне нужно нажать кнопку «ОК»


851.PNG

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

В файле 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

Определение названия настройки, определяющей тип платежной операции, в реестре настроек туроператора

Название настройки в реестре настроек туроператора

<add key="PaymentOperationId " value="SYSPaymentOperationId"/>

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

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

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

Аутентификация (метод 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 - дата окончания тура.

Проведение платежа по заявке (метод 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).

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