Платежные web-сервисы: Сервис интеграции с платежной системой (оплата через терминалы) — различия между версиями
[непроверенная версия] | [непроверенная версия] |
Tarasov (обсуждение | вклад) (→Возвращаемые значения) |
Tarasov (обсуждение | вклад) (→Работа в системе) |
||
Строка 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 – результат корректный, в полях возвращены корректные значения; | |
− | + | * 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, | + | 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 - путевка уже оплачена; | ||
− | + | * 6 - некорректный или устаревший идентификатор аутентификации(token). | |
− | * 6 - некорректный или устаревший идентификатор | ||
При этом в БД создается платеж по выбранной путевке. | При этом в БД создается платеж по выбранной путевке. |
Версия 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)
- 2. Диспетчер служб 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 |
Определение названия настройки, определяющей тип платежной операции, в реестре настроек туроператора |
Название настройки в реестре настроек туроператора |
<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).
При этом в БД создается платеж по выбранной путевке.