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

Изменения

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

713 байт убрано, 15:52, 5 декабря 2018
м
Возможные ошибки в результате выполнения запроса.
[[Категория:Интеграция]]
[[Категория:Агентский API]]
== Подключение ==
Для подключения к данной веб-службе необходимо открыть доступ нужному пользователю. Это можно сделать в разделе «Настройки системы» → «Интеграция» → «Nemo 1.0 (SOAP API)»<!--{{Menu|Настройки системы|Интеграция|Nemo 1.0 (SOAP API)}}-->.
После добавления пользователя, ему будут присвоены Номер (ClientId) и API ключ клиента, которые нужно использовать для подключения. == Фиксация оплаты внешним запросом == Сервис предназначен для приема информации о получении оплаты и простановки статуса «Оплачено» для определенного заказа. Сервис вызывается следующим образом: http://CLIENT_DOMAIN/index.php?go=payment/bill  === Подпись запроса === Подпись <syntaxhighlight lang="text" enclose="none" style="font-size: 1.2em; padding: 0 3px; background: #F0F0F0; border: 1px dashed #2F6FAB;">sig</syntaxhighlight> сверяется c <syntaxhighlight lang="text" enclose="none" style="font-size: 1.2em; padding: 0 3px; background: #F0F0F0; border: 1px dashed #2F6FAB;">md5($booking_id.$secret)</syntaxhighlight> <syntaxhighlight lang="text" enclose="none" style="font-size: 1.2em; padding: 0 3px; background: #F0F0F0; border: 1px dashed #2F6FAB;">$booking_id</syntaxhighlight> — ID заказа в системе {{NameSystem}}, <syntaxhighlight lang="text" enclose="none" style="font-size: 1.2em; padding: 0 3px; background: #F0F0F0; border: 1px dashed #2F6FAB;">$secret</syntaxhighlight> — значение настройки в разделе «Управление сайтом» → «Домены и протоколы» в поле {{Setting|Ключ безопасности для сервиса выставления оплаты и получения XML выгрузки}}. Для отправки запроса используется метод GET. В ответ на запрос будет получена строка вида: ''«Заказ был оплачен по транзакции 117892581 на сумму 3600RUB».'' Возможные ошибки:*Введите корректные billing_id / booking_id*Доступ заблокирован*Не совпала контрольная сумма*Заказ не требует оплаты '''Пример:''' <pre>Если booking_id: 263330ключ безопасности: 12345 То sig=md5(26333012345) = a439a4492131f4b866ed1a17d018d3a6</pre> Для фиксации оплаты получается такая ссылка:http://CLIENT_DOMAIN/index.php?go=payment/bill&booking_id=263330&sig=a439a4492131f4b866ed1a17d018d3a6 Дополнительная информация в статье [[Интеграция]]
== Получение списка доступных способов оплаты ==
На данный момент метод доступен для платежных шлюзов Юнителлер и Рапида.
Для получения результата необходим параметр «OrderId» — ID забронированного заказа, который необходимо оплатить.
Данный запрос позволяет получить список платёжных шлюзов, через которые есть возможность оплатить указанный заказ.
* дополнительную наценку, которая добавляется к заказу при проведении оплаты через данный шлюз
* URL, перенаправляющий пользователя непосредственно на страницу оплаты через данный платёжный шлюз
* в случае отправки запроса с мобильной платформы может дополнительно возвращается возвращаться URL, на который происходит перенаправление пользователя для оплаты
=== Общий формат запроса / ответа ===
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
</div>
=== Примеры использования ===
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
Запрос позволяет выбрать конкретный способ оплаты и получить платежный код для оплаты заказа, таймлимит на оплату и описание, заданное в настройках ПШ Рапида (содержимое поля "Сообщение пользователю").
=== Общий формат запроса / ответа ===
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
</div>
=== Примеры использования ===
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
==Фиксации оплаты через Агентский АПИ==
Сервис предназначен для фиксации оплаты в заказе. Важно учесть, что фиксация Фиксация оплаты станет доступна только при условии, что если IP-адрес пользователя совпадает с IP-адресом, указанным в настройке '''Допустимые IP-адреса для выписки без оплаты или фиксации оплаты''' (раздел '''Настройки системы → Интеграция → Nemo 1.0 (SOAP API)'''). Если IP-адрес не указан или не совпадает, произойдет блокировка оплаты.
Сервис вызывается следующим образом: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=PayOrder
* название платежного шлюза - ''Deposit'' или номер ПШ в системе Nemo.
Доступ к оплате имеет только пользователь, у которого есть на это права, а именно:
* ClientId и APIKey должны быть менеджера или эксперта субагентстваПользователь должен иметь доступ к указанной в запросе платежной системе
* IP адрес пользователя должен соответствовать адресу, указанному в настройке Допустимые ip-адреса для выписки без оплаты или фиксации оплаты
API пользователи, относящиеся к компаниям или субагентствам, не могут выполять выписку до проведения оплаты
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
<!--BookID — Id забронированного заказа в системе Nemo-->
<PaymentGateway>?</PaymentGateway>
<!--PaymentGateway — Название Либо название платежного шлюза , например: Deposit, либо идентификатор ПШ в системе Nemo - Deposit/, например: 1880 -->
</PayOrder>
</Request>
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>
</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'' - стоимость к оплате выше чем указана в запросе.
==Запрет на выписку неоплаченных заказов по АПИ для субагента==
Выписка Субагентам выписка по АПИ субагенту доступна только в том случае, если заказ ''имеет статус оплаты''. В противном случае выписка блокируется. <br> Выписка заказов, ''не имеющих статуса оплаты'', доступна только менеджеру корневого агентства. Для успешной операции IP-адрес менеджера должен совпадать с IP-адресом параметра '''Допустимые IP-адреса для выписки без оплаты или фиксации оплаты''' в разделе '''Настройки системы → Интеграция → Nemo 1.0 (SOAP API)'''.
== См. также ==
* [[Агентский АПИAPI Авиабилеты]]
* [[Agency API. Payments]]
1382
правки
'