Открыть главное меню

Изменения

Агентский API Оплата

28 608 байт добавлено, 15:52, 5 декабря 2018
м
Возможные ошибки в результате выполнения запроса.
[[Категория:Интеграция]]
[[Категория:Агентский API]]
== Подключение ==
Это сервис внутри Nemo, который предназначен для выполнения различных операций, относящихся к оплате заказов.
Для подключения к данной веб-службе необходимо открыть доступ нужному пользователю. Это можно сделать в разделе '''«Администрирование»''' ⇨ '''«Веб-служба. Авторизация»'''.
После добавления пользователя, ему будут присвоены Номер (ClientId) и API ключ клиента, которые нужно использовать для подключения.
Для подключения к данной веб-службе необходимо открыть доступ нужному пользователю. Это можно сделать в разделе «Настройки системы» → «Интеграция» → «Nemo 1.0 (SOAP API)»<!--{{Menu|Настройки системы|Интеграция|Nemo 1.0 (SOAP API)}}-->.
== Фиксация оплаты внешним запросом == Сервис предназначен для приема информации о получении оплаты и простановки статуса '''«Оплачено»''' для определенного заказа. Сервис вызывается следующим образом: http://CLIENT_DOMAIN/index.php?go=payment/bill  '''Подпись запроса''' Подпись sig сверяется c md5После добавления пользователя ему будут присвоены Номер ($booking_id.$secretClientId$booking_id - Id заказа в системе Nemoи API ключ клиента$secret - значение настройки в разделе '''«Администрирование»''' ⇨ '''«Настройки агентства»''' ⇨ '''''«Ключ безопасности которые нужно использовать для сервиса выставления оплаты и получения XML выгрузки»''''' '''Пример:''' <pre>Если booking_id: 263330ключ безопасности: 12345 То sig=md5(26333012345) = a439a4492131f4b866ed1a17d018d3a6</pre> Для фиксации оплаты получается такая ссылка:http://CLIENT_DOMAIN/indexподключения.php?go=payment/bill&booking_id=263330&sig=a439a4492131f4b866ed1a17d018d3a6 Дополнительная информация в статье [[Интеграция]]  == Перенаправление на платежный шлюз ==
== Получение списка доступных способов оплаты ==
WSDL находится по адресу: http://CLIENT_DOMAIN/wsdev/wsdl.php?version=1.0&for=PaymentInitialization
На данный момент метод доступен для платежных шлюзов Юнителлер и Рапида.
Для получения результата необходим параметр «OrderId» — Id ID забронированного заказа, который необходимо оплатить.
Данный запрос позволяет получить список платежных платёжных шлюзов, через которые есть возможность оплатить выбранный забронированный указанный заказ.В качестве параметров передаютсяПо каждому платёжному шлюзу возвращается следующая информация:* id способа оплаты
* имя платежного шлюза
* дополнительную наценку, которая добавляется к заказу при проведении оплаты через данный шлюз
* URL, перенаправляющий пользователя непосредственно на страницу оплаты через данный платежный платёжный шлюз* в случае отправки запроса с мобильной платформы может дополнительно возвращается возвращаться URL, ведущий на страницу заказа, предназначенный который происходит перенаправление пользователя для перехвата и дальнейшей обработкиоплаты
=== Общий формат запроса / ответа поиска ===
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
<!--Optional:-->
<ReturnUrlToCatch>?</ReturnUrlToCatch> <!--необязательный-->
<!--ReturnUrlToCatch - параметрПризнак возвращать ли адрес, указывающий, что запрос идёт с мобильной платформы, значенияна который будет перенаправлен пользователь после оплаты: true (возвращать)/ false(не возвращать)-->
<!--Optional:-->
</Request>
<Source>
<ClientId>?</ClientId>
<!--ClientId — ID клиента в системе Nemo. Можно посмотреть/добавить в разделе "Администрирование" ? "Веб-служба«Настройки системы» → «Интеграция» → «Nemo 1. Авторизация"0 (SOAP API)».-->
<APIKey>?</APIKey>
<!--APIKey — секретный ключ доступа к API Nemo. Можно посмотреть/добавить в разделе "Администрирование" ? "Веб-служба«Настройки системы» → «Интеграция» → «Nemo 1. Авторизация"0 (SOAP API)».-->
<Language>?</Language>
<!--Language — язык, например: RU-->
<Gateways>
<Gateway>
<PaymentMethodId>?</PaymentMethodId>
<!--PaymentMethodId - ID способа оплаты. Необходим при использовании запроса SelectPayment (см. ниже)-->
<GatewayName>?</GatewayName>
<!--GatewayName — имя платежного шлюза. Например: Uniteller -->
<!--PaymentCharge — наценка, которая добавляется к заказу при оплате через данный шлюз, Currency — код валюты (из запроса)-->
<RedirectUrl>?</RedirectUrl>
<!--RedirectUrl — URL, перенаправляющий по которому происходит перенаправление пользователя непосредственно на страницу оплаты через данный платежный шлюз-->
<UrlToCatch>?</UrlToCatch>
<!--UrlToCatch — URL для перехвата и дальнейшей обработки в случае отправки запроса с мобильной платформы, ведущий на страницу заказа-->
</Gateway>
</Gateways>
<Error>
<NewPrice/>
<Message>Сообщение об ошибке</Message>
</Error>
</Response>
</ResponseBin>
</div>
 === Примеры использования ===
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
<Gateways>
<Gateway>
<PaymentMethodId>1075</PaymentMethodId>
<GatewayName>Uniteller</GatewayName>
<PaymentCharge Currency="RUB">81.54</PaymentCharge>
<RedirectUrl>http://CLIENT_DOMAIN/payment__select_outside?booking_id=276965&amp;one_time_booking_code=PZ7981&amp;method=27</RedirectUrl>
<!--Пример ссылки-->
<UrlToCatch>http://CLIENT_DOMAIN/poffice__bookinfo?&amp;booking_id=276965</UrlToCatch>
<!--Пример ссылки-->
</Gateway>
<Gateway>
<PaymentMethodId>1079</PaymentMethodId>
<GatewayName>Rapida</GatewayName>
<PaymentCharge Currency="RUB">123</PaymentCharge>
<RedirectUrl/>
<UrlToCatch xsi:nil="true"/>
</Gateway>
</Gateways>
</div>
</div>
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
==== Ответ с ошибкой====
<div class="mw-collapsible-content">
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://release.mlsd.ru/wsdev/?version%3D1.0%26for%3DPaymentInitialization">
<SOAP-ENV:Body>
<ns1:InitPaymentResponse>
<ResponseBin>
<Error>
<NewPrice/>
<Message>Unknown order status: Problematic</Message>
</Error>
</ResponseBin>
</ns1:InitPaymentResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
</syntaxhighlight>
</div>
</div>
 
'''Примечание:''' если параметр RedirectUrl в ответе отсутствует, для инициализации оплаты необходимо использовать метод SelectPayment.
 
== Выбор конкретного способа оплаты ==
WSDL находится по адресу: http://CLIENT_DOMAIN/wsdev/wsdl.php?version=1.0&for=SelectPayment
 
На данный момент этот веб-метод доступен только для платежного шлюза Рапида.
 
Запрос позволяет выбрать конкретный способ оплаты и получить платежный код для оплаты заказа, таймлимит на оплату и описание, заданное в настройках ПШ Рапида (содержимое поля "Сообщение пользователю").
 
=== Общий формат запроса / ответа ===
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
==== Запрос ====
<div class="mw-collapsible-content">
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/wsdev/?version%3D1.0%26for%3DSelectPayment">
<soapenv:Header/>
<soapenv:Body>
<ver:SelectPayment>
<RequestBin>
<Request>
<OrderId>?</OrderId>
<!--OrderId — ID забронированного заказа в системе {{NameSystem}}. Обязательный параметр-->
<PaymentMethodId>?</PaymentMethodId>
<!--PaymentMethodId - ID данного способа оплаты, приходит в ответе на запрос PaymentInitialization response. Обязательный параметр-->
</Request>
<Source>
<ClientId>?</ClientId>
<!--ClientId — ID клиента в системе Nemo. Можно посмотреть/добавить в разделе "Администрирование" - "Веб-служба. Авторизация". Обязательный параметр.-->
<APIKey>?</APIKey>
<!--APIKey — секретный ключ доступа к API Nemo. Можно посмотреть/добавить в разделе "Администрирование" - "Веб-служба. Авторизация". Обязательный параметр.-->
<Language>?</Language>
<!--Язык — пример: RU-->
<Currency>?</Currency>
<!-- Валюта — примеры: RUB, EUR-->
</Source>
</RequestBin>
</ver:SelectPayment>
</soapenv:Body>
</soapenv:Envelope>
</syntaxhighlight>
</div>
</div>
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
==== Ответ ====
<div class="mw-collapsible-content">
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/wsdev/?version%3D1.0%26for%3DSelectPayment">
<SOAP-ENV:Body>
<ns1:SelectPaymentResponse>
<ResponseBin>
<Response>
<TransactionId>?</TransactionId>
<!--TransactionId - ID платежной транзакции в системе Немо-->
<PaymentParameters>
<PaymentParameter>
<Key>Code</Key>
<Value>?</Value>
<!--Value - платежный код, приходит от платежного шлюза Рапида-->
</PaymentParameter>
<PaymentParameter>
<Key>Timelimit</Key>
<Value>?</Value>
<!--Value - таймлимит на оплату заказа-->
</PaymentParameter>
<PaymentParameter>
<Key>Description</Key>
<Value>?</Value>
<!--Value - краткое сообщение пользователю. Может содержать упомянутые выше платежный код, таймлимит и др. информацию. Настраивается в настройках реквизитов ПШ Рапида в соответствующем поле.-->
</PaymentParameter>
</PaymentParameters>
<Error>
<NewPrice/>
<Message>Сообщение об ошибке</Message>
</Error>
</Response>
</ResponseBin>
</ns1:SelectPaymentResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
</syntaxhighlight>
</div>
</div>
 
=== Примеры использования ===
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
==== Запрос ====
<div class="mw-collapsible-content">
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/wsdev/?version%3D1.0%26for%3DSelectPayment">
<soapenv:Header/>
<soapenv:Body>
<ver:SelectPayment>
<RequestBin>
<Request>
<OrderId>279712</OrderId>
<PaymentMethodId>1079</PaymentMethodId>
</Request>
<Source>
<ClientId>--</ClientId>
<APIKey>--</APIKey>
<Language>RU</Language>
<Currency>RUB</Currency>
</Source>
</RequestBin>
</ver:SelectPayment>
</soapenv:Body>
</soapenv:Envelope>
 
</syntaxhighlight>
</div>
</div>
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
==== Ответ ====
<div class="mw-collapsible-content">
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/wsdev/?version%3D1.0%26for%3DSelectPayment">
<SOAP-ENV:Body>
<ns1:SelectPaymentResponse>
<ResponseBin>
<Response>
<TransactionId>117608085</TransactionId>
<PaymentParameters>
<PaymentParameter>
<Key>Code</Key>
<Value>a117608085a0CGN73</Value>
</PaymentParameter>
<PaymentParameter>
<Key>Timelimit</Key>
<Value>23:59 20.01.2015</Value>
</PaymentParameter>
<PaymentParameter>
<Key>Description</Key>
<Value>Ваш платежный код - a117608085a0CGN73. Оплатить заказ необходимо до 23:59 20.01.2015</Value>
</PaymentParameter>
</PaymentParameters>
</Response>
</ResponseBin>
</ns1:SelectPaymentResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
</syntaxhighlight>
</div>
</div>
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
==== Ответ с ошибкой====
<div class="mw-collapsible-content">
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://release.mlsd.ru/wsdev/?version%3D1.0%26for%3DSelectPayment">
<SOAP-ENV:Body>
<ns1:SelectPaymentResponse>
<ResponseBin>
<Error>
<NewPrice/>
<Message>Unknown order status: Problematic</Message>
</Error>
</ResponseBin>
</ns1:SelectPaymentResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
</syntaxhighlight>
</div>
</div>
 
==Фиксации оплаты через Агентский АПИ==
 
Сервис предназначен для фиксации оплаты в заказе. Фиксация оплаты доступна, если IP-адрес пользователя совпадает с IP-адресом, указанным в настройке '''Допустимые IP-адреса для выписки без оплаты или фиксации оплаты''' (раздел '''Настройки системы → Интеграция → Nemo 1.0 (SOAP API)'''). Если IP-адрес не указан или не совпадает, произойдет блокировка оплаты.
Сервис вызывается следующим образом: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=PayOrder
 
===Общий формат запроса / ответа===
 
В запросе необходимо указать:
* номер заказа в системе Nemo, по которому производится оплата,
* название платежного шлюза - ''Deposit'' или номер ПШ в системе Nemo.
Доступ к оплате имеет только пользователь, у которого есть на это права, а именно:
* Пользователь должен иметь доступ к указанной в запросе платежной системе
* IP адрес пользователя должен соответствовать адресу, указанному в настройке Допустимые ip-адреса для выписки без оплаты или фиксации оплаты
API пользователи, относящиеся к компаниям или субагентствам, не могут выполять выписку до проведения оплаты
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
==== Запрос ====
<div class="mw-collapsible-content">
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
 
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://nemojulia/nemoflights/?version%3D1.0%26for%3DPayOrder">
<soapenv:Header/>
<soapenv:Body>
<ver:PayOrder>
<RequestBin>
<Request>
<PayOrder>
<BookID>?</BookID>
<!--BookID — Id забронированного заказа в системе Nemo-->
<PaymentGateway>?</PaymentGateway>
<!--PaymentGateway — Либо название платежного шлюза, например: Deposit, либо идентификатор ПШ в системе Nemo, например: 1880 -->
</PayOrder>
</Request>
<Source>
<ClientId>?</ClientId>
<!--ClientId — ID клиента в системе Nemo. Можно посмотреть/добавить в разделе «Настройки системы» → «Интеграция» → «Nemo 1.0 (SOAP API)».-->
<APIKey>?</APIKey>
<!--APIKey — секретный ключ доступа к API Nemo. Можно посмотреть/добавить в разделе «Настройки системы» → «Интеграция» → «Nemo 1.0 (SOAP API)».-->
<Language>?</Language>
<!--Language — язык, например: RU-->
<Currency>?</Currency>
<!-- Currency — валюта, например: RUB, EUR-->
<ShowNames>?</ShowNames>
<!-- ShowNames — отображение названий аэропортов, авиакомпаний и воздушных судов: true - отображать, false - не отображать. Возвращает значение на том языке, который был указан в запросе. Для RU - русский вариант, для UKR, EN, ES - латинский вариант. Опциональный элемент. -->
<EndUserData>
<!--Блок с данными о конечном пользователе, необязательный, но необходим при при использовании запросов поиска и бронирования для поставщика TravelFusion-->
<EndUserIP>?</EndUserIP>
<!--IP адрес пользователя-->
<EndUserBrowserAgent>?</EndUserBrowserAgent>
<!--Браузер пользователя-->
<RequestOrigin>?</RequestOrigin>
<!--Страна и домен, с которого пользователь совершает поиск/бронирование-->
</EndUserData>
</Source>
</RequestBin>
</ver:PayOrder>
</soapenv:Body>
</soapenv:Envelope>
</syntaxhighlight>
</div>
</div>
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
==== Ответ ====
<div class="mw-collapsible-content">
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
 
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/nemoflights/?version=1.0&for=PayOrder" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<ns1:PayOrderResponse>
<ResponseBin>
<Response>
<PayOrder ID="" Status="?" Code="?">
<!--ID — Id брони в системе nemo.travel, целое число, обязательный-->
<!--Status — индикатор состояния брони, возможные значения:
booked — забронировано,
canceled — бронь отменена,
ticket — выписана
UNDEFINED — статус не определён-->
<!--Code — код брони в системе поставщика-->
<QueryPlace xsi:nil="true"/>
<!--QueryPlace — положение брони в очереди, Number — номер брони в очереди-->
<Flight FlightId="?">
<!--FlightId — Id перелёта в системе nemo.travel-->
<WebService>?</WebService>
<!--WebService — поставщик перелёта-->
<ValCompany>?</ValCompany>
<!--ValCompany — код авиакомпании, являющейся валидирующим перевозчиком, IATA-->
<URL>?</URL>
<!--URL — ссылка на бронирование конкретного перелета-->
<Segments>
<Segment SegNum="?" SegGroupNum="?">
<!--SegNum — номер сегмента в перелёте-->
<!--SegGroupNum – номер плеча перелёта-->
<SupplierCode>?</SupplierCode>
<!--SupplierCode – номер заказа в системе АК-->
<DepAirp CodeType="?" Name="?">?</DepAirp>
<!--DepAirp — аэропорт отправления, например: MOW — любой аэропорт в г.Москва
или SVO — Шереметьево-->
<DepTerminal>?</DepTerminal>
<!--DepTerminal — терминал пункта отправления, если пустое значение,
то в аэропорту всего 1 терминал-->
<ArrAirp CodeType="?" Name="?">?</ArrAirp>
<!--ArrAirp — аэропорт прибытия-->
<ArrTerminal xsi:nil="true"/>
<!--ArrTerminal — терминал пункта прибытия, если пустое значение,
то в аэропорту всего 1 терминал-->
<OpAirline>?</OpAirline>
<!--OpAirline — авиакомпания перевозчик, например: SU — Аэрофлот-->
<OpAirlineName>?</OpAirlineName>
<!--OpAirlineName - авиакомпания перевозчик, например: SU — Аэрофлот-->
<OpAirlineLogo>?</OpAirlineLogo>
<!--OpAirlineLogo - полное наименование АК на кириллице-->
<MarkAirline>?</MarkAirline>
<!--MarkAirline — авиакомпания, продающая перелёт-->
<MarkAirlineName>?</MarkAirlineName>
<!--MarkAirline — авиакомпания, продающая перелёт-->
<MarkAirlineLogo>?</MarkAirlineLogo>
<!--MarkAirlineName - полное наименование АК на кириллице-->
<FlightNumber>?</FlightNumber>
<!--FlightNumber — номер рейса-->
<AircraftName>?</AircraftName>
<!--AircraftName — наименование воздушного судна-->
<AircraftType>?</AircraftType>
<!--AircraftType — тип воздушного судна, код-->
<DepDateTime>?</DepDateTime>
<!--DepDateTime — дата и время отправления, формат ГГГГ-MM-ДДTЧЧ:ММ:СС-->
<ArrDateTime>?</ArrDateTime>
<!--ArrDateTime — дата и время прибытия, формат ГГГГ-MM-ДДTЧЧ:ММ:СС-->
<StopNum>?</StopNum>
<!--StopNum — количество остановок-->
<StopPoints/>
<BookingCodes>
<BookingCode ClassType="?">
<!--ClassType — класс перелета, например: economy-->
<BookingCode>?</BookingCode>
<!--BookingCode — код класса бронирования, у разных авиакомпаний один и тот же класс
может записываться разными литерами, например: L-->
</BookingCode>
</BookingCodes>
<FlightTime>?</FlightTime>
<!--FlightTime — время перелёта в минутах-->
<RemainingSeats xsi:nil="true"/>
<TimeZone Departure="?" Arrival="?"/>
<!--Departure временная зона аэропорта отправления-->
<!--Arrival — временная зона аэропорта прибытия-->
<ETicket>?</ETicket>
<!--ETicket — признак электронного билета, значения: true / false-->
<isCharter>?</isCharter>
<!--isCharter — признак чартерного перелета, значения: true / false-->
<BaggageAllowances>
<!--BaggageAllowances — информация о багаже-->
<BaggageAllowance>
<PassengerType>?</PassengerType>
<!--PassengerType — тип пассажира, соответстует типу тарифа в PricingInfo -->
<Value>?</Value>
<!--Value — количество-->
<Measurement>?</Measurement>
<!--Measurement — мера измерения, может принимать значения: kg — килограмм, pc — багажное место, lb — фунт-->
</BaggageAllowance>
</BaggageAllowances>
</Segment>
</Segments>
<PricingInfo Refundable="?">
<!--Refundable — возвратный/невозвратный, true/false. Если пустое, то не известно-->
<PassengerFare Type="?" Quantity="?">
<!--Type — тип тарифа-->
<!--Quantity — количество пассажиров данного типа-->
<TravellerRef>
<Ref>?</Ref>
<!--Ref — Номер пассажира-->
</TravellerRef>
<BaseFare Currency="?" Amount="?"/>
<!--BaseFare — базовая стоимость, в базовой валюте. Currency — код валюты, Amount — значение цены-->
<EquiveFare Currency="?" Amount="?"/>
<!--EquiveFare — базовая стоимость, в эквивалентной валюте(валюте продажи).
Currency — код валюты, Amount — значение цены-->
<TotalFare Currency="?" Amount="?"/>
<!--TotalFare — суммарная стоимость, в эквивалентной валюте.
Currency — код валюты, Amount — значение цены-->
<Taxes>
<Tax CurCode="?" TaxCode="?" Amount="?"/>
<!--CurCode — код валюты, TaxCode — код таксы, Amount — сумма таксы-->
</Taxes>
<Tariffs>
<Tariff Code="?" SegNum="?">
<!--Code — код тарифа, SegNum — номер сегмента, к которому применён тариф-->
<FareFamilies xsi:nil="true"/>
</Tariff>
</Tariffs>
<FareCalc>?</FareCalc>
<!--FareCalc — строка расчёта цены-->
<LastTicketDateTime>?</LastTicketDateTime>
<!--LastTicketDateTime — дата и время таймлимита по выписке в формате ГГГГ-MM-ДДTЧЧ:ММ:СС-->
</PassengerFare>
</PricingInfo>
<Commission/>
<Charges Currency="?">?</Charges>
<!--Charges — сборы, Currency — код валюты-->
<TotalPrice Currency="?">?</TotalPrice>
<!--TotalPrice — итоговая цена, Currency — код валюты-->
</Flight>
<Agency/>
<ItinReceipts Encoding="?" Format="?">
<!--ItinReceipts — маршрут квитанция, Encoding — кодировка, Format — формат-->
<FareStored xsi:nil="true"/>
<PaymentTransactions>
<Transaction>
<Id>?</Id>
<!--Id — номер транзакции в Немо-->
<Status>?</Status>
<!--Status — статус транзакции-->
<GatewayName>?</GatewayName>
<!--GatewayName — название платежного шлюза-->
<MoneyPaid Currency="?">?</MoneyPaid>
<!--MoneyPaid — сумма оплаты-->
<!--Currency — валюта-->
<PaymentDateTime>?</PaymentDateTime>
<!--PaymentDateTime — дата и время оплаты-->
<CreateDateTime>?</CreateDateTime>
<!--CreateDateTime — дата и время создания платежной транзакции-->
<Description/>
</Transaction>
</PaymentTransactions>
<PaymentStatus>?</PaymentStatus>
<!--PaymentStatus — статус оплаты:
not_paid — не оплачено
partly_paid — оплачено, частично
fully_paid — оплачено, полностью-->
<Travellers/>
<AutoCancelDate>?</AutoCancelDate>
<!--AutoCancelDate — дата и время таймлимита автоаннуляции в формате ГГГГ-MM-ДДTЧЧ:ММ:СС определяемые по настройкам агентства-->
<TimeLimits>
<TicketingTimeLimit>?</TicketingTimeLimit>
<!--TicketingTimeLimit — Таймлимит на выписку в формате ГГГГ-MM-ДДTЧЧ:ММ:СС-->
<PriceTimeLimit>?</PriceTimeLimit>
<!--PriceTimeLimit — Таймлимит цены из ГРС в формате ГГГГ-MM-ДДTЧЧ:ММ:СС-->
<AdvancedPurchaseTimeLimit>?</AdvancedPurchaseTimeLimit>
<!--AdvancedPurchaseTimeLimit — Таймлимит цены из тарифных правил в формате ГГГГ-MM-ДДTЧЧ:ММ:СС-->
<AgencyTimeLimit>?</AgencyTimeLimit>
<!--AgencyTimeLimit - Таймлимит по настройкам в формате ГГГГ-MM-ДДTЧЧ:ММ:СС-->
</TimeLimits>
</PayOrder>
</Response>
</ResponseBin>
</ns1:PayOrderResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
</syntaxhighlight>
</div>
</div>
 
===Возможные ошибки в результате выполнения запроса.===
 
При выполнения запроса возможны следующие ошибки:
 
* ''Deposit gateway is not available for this order'' - оплата проводится под пользователем, не имеющим на это прав.
* ''You have not enough money to pay'' - недостаточно средств на депозитном счету для оплаты. При получении такой ошибки отправляется уведомление на почтовый адрес в профиле компании, указанный в настройке ''Адрес электронной почты''.
* ''Price to pay(X) is greater than in request'' - стоимость к оплате выше чем указана в запросе.
* ''Internal Error: Invalid BookID'' - не указан id заказа.
* ''Internal Error: Object not found'' - не найден заказ с указанным id.
* ''Internal Error: Invalid gateway name'' - не указан id платежного шлюза или его название.
* ''Gateway XXX is not available for this order'' - платежный шлюз недоступен для оплаты.
 
==Запрет на выписку неоплаченных заказов по АПИ для субагента==
 
Субагентам выписка по АПИ доступна только в том случае, если заказ ''имеет статус оплаты''. В противном случае выписка блокируется.
 
Выписка заказов, ''не имеющих статуса оплаты'', доступна только менеджеру корневого агентства. Для успешной операции IP-адрес менеджера должен совпадать с IP-адресом параметра '''Допустимые IP-адреса для выписки без оплаты или фиксации оплаты''' в разделе '''Настройки системы → Интеграция → Nemo 1.0 (SOAP API)'''.
== См. также ==
* [[Агентский API Авиабилеты]]*[[Агентский АПИAgency API. Payments]]
1382
правки
'