Агентский API Оплата: различия между версиями
(Новая страница: «Раздел на стадии заполнения») |
|||
Строка 1: | Строка 1: | ||
− | + | == Подключение == | |
+ | |||
+ | Это сервис внутри Nemo, который предназначен для выполнения различных операций, относящихся к оплате заказов. | ||
+ | Для подключения к данной веб-службе необходимо открыть доступ нужному пользователю. Это можно сделать в разделе '''«Администрирование»''' ⇨ '''«Веб-служба. Авторизация»'''. | ||
+ | После добавления пользователя, ему будут присвоены Номер (ClientId) и API ключ клиента, которые нужно использовать для подключения. | ||
+ | |||
+ | |||
+ | == Фиксация оплаты внешним запросом == | ||
+ | |||
+ | Сервис предназначен для приема информации о получении оплаты и простановки статуса '''«Оплачено»''' для определенного заказа. | ||
+ | |||
+ | Сервис вызывается следующим образом: http://CLIENT_DOMAIN/index.php?go=payment/bill | ||
+ | |||
+ | '''Подпись запроса''' | ||
+ | |||
+ | Подпись sig сверяется c md5($booking_id.$secret) | ||
+ | |||
+ | $booking_id - Id заказа в системе Nemo, | ||
+ | |||
+ | $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 забронированного заказа, который необходимо оплатить. | ||
+ | |||
+ | Данный запрос позволяет получить список платежных шлюзов, через которые есть возможность оплатить выбранный забронированный заказ. | ||
+ | В качестве параметров передаются: | ||
+ | * имя платежного шлюза | ||
+ | * дополнительную наценку, которая добавляется к заказу при проведении оплаты через данный шлюз | ||
+ | * URL, перенаправляющий пользователя непосредственно на страницу оплаты через данный платежный шлюз | ||
+ | * в случае отправки запроса с мобильной платформы может дополнительно возвращается URL, ведущий на страницу заказа, предназначенный для перехвата и дальнейшей обработки | ||
+ | |||
+ | == Общий формат запроса / ответа поиска == | ||
+ | |||
+ | <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%3DPaymentInitialization"> | ||
+ | <soapenv:Header/> | ||
+ | <soapenv:Body> | ||
+ | <ver:InitPayment> | ||
+ | <RequestBin> | ||
+ | <Request> | ||
+ | <OrderId>?</OrderId> | ||
+ | <!--OrderId — Id забронированного заказа в системе Nemo--> | ||
+ | <!--Optional:--> | ||
+ | <ReturnUrlToCatch>?</ReturnUrlToCatch> <!--необязательный--> | ||
+ | <!--ReturnUrlToCatch - параметр, указывающий, что запрос идёт с мобильной платформы, значения: true / false--> | ||
+ | <!--Optional:--> | ||
+ | </Request> | ||
+ | <Source> | ||
+ | <ClientId>?</ClientId> | ||
+ | <!--ClientId — ID клиента в системе Nemo. Можно посмотреть/добавить в разделе "Администрирование" ? "Веб-служба. Авторизация".--> | ||
+ | <APIKey>?</APIKey> | ||
+ | <!--APIKey — секретный ключ доступа к API Nemo. Можно посмотреть/добавить в разделе "Администрирование" ? "Веб-служба. Авторизация".--> | ||
+ | <Language>?</Language> | ||
+ | <!--Language — язык, например: RU--> | ||
+ | <Currency>?</Currency> | ||
+ | <!-- Currency — валюта, например: RUB, EUR--> | ||
+ | </Source> | ||
+ | </RequestBin> | ||
+ | </ver:InitPayment> | ||
+ | </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%3DPaymentInitialization"> | ||
+ | <SOAP-ENV:Body> | ||
+ | <ns1:InitPaymentResponse> | ||
+ | <ResponseBin> | ||
+ | <Response> | ||
+ | <Gateways> | ||
+ | <Gateway> | ||
+ | <GatewayName>?</GatewayName> | ||
+ | <!--GatewayName — имя платежного шлюза. Например: Uniteller --> | ||
+ | <PaymentCharge Currency="?">?</PaymentCharge> | ||
+ | <!--PaymentCharge — наценка, которая добавляется к заказу при оплате через данный шлюз, Currency — код валюты (из запроса)--> | ||
+ | <RedirectUrl>?</RedirectUrl> | ||
+ | <!--RedirectUrl — URL, перенаправляющий пользователя непосредственно на страницу оплаты через данный платежный шлюз--> | ||
+ | <UrlToCatch>?</UrlToCatch> | ||
+ | <!--UrlToCatch — URL для перехвата и дальнейшей обработки в случае отправки запроса с мобильной платформы, ведущий на страницу заказа--> | ||
+ | </Gateway> | ||
+ | </Gateways> | ||
+ | </Response> | ||
+ | </ResponseBin> | ||
+ | </ns1:InitPaymentResponse> | ||
+ | </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%3DPaymentInitialization"> | ||
+ | <soapenv:Header/> | ||
+ | <soapenv:Body> | ||
+ | <ver:InitPayment> | ||
+ | <RequestBin> | ||
+ | <Request> | ||
+ | <OrderId>276965</OrderId> | ||
+ | <ReturnUrlToCatch>true</ReturnUrlToCatch> | ||
+ | </Request> | ||
+ | <Source> | ||
+ | <ClientId>---</ClientId> | ||
+ | <APIKey>---</APIKey> | ||
+ | <Language>RU</Language> | ||
+ | <Currency>RUB</Currency> | ||
+ | </Source> | ||
+ | </RequestBin> | ||
+ | </ver:InitPayment> | ||
+ | </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%3DPaymentInitialization"> | ||
+ | <SOAP-ENV:Body> | ||
+ | <ns1:InitPaymentResponse> | ||
+ | <ResponseBin> | ||
+ | <Response> | ||
+ | <Gateways> | ||
+ | <Gateway> | ||
+ | <GatewayName>Uniteller</GatewayName> | ||
+ | <PaymentCharge Currency="RUB">81.54</PaymentCharge> | ||
+ | <RedirectUrl>http://CLIENT_DOMAIN/payment__select_outside?booking_id=276965&one_time_booking_code=PZ7981&method=27</RedirectUrl> | ||
+ | <UrlToCatch>http://CLIENT_DOMAIN/poffice__bookinfo?&booking_id=276965</UrlToCatch> | ||
+ | </Gateway> | ||
+ | </Gateways> | ||
+ | </Response> | ||
+ | </ResponseBin> | ||
+ | </ns1:InitPaymentResponse> | ||
+ | </SOAP-ENV:Body> | ||
+ | </SOAP-ENV:Envelope> | ||
+ | </syntaxhighlight> | ||
+ | </div> | ||
+ | </div> | ||
+ | |||
+ | |||
+ | == См. также == | ||
+ | |||
+ | *[[Агентский АПИ]] |
Версия 15:39, 1 декабря 2014
Содержание
Подключение
Это сервис внутри Nemo, который предназначен для выполнения различных операций, относящихся к оплате заказов. Для подключения к данной веб-службе необходимо открыть доступ нужному пользователю. Это можно сделать в разделе «Администрирование» ⇨ «Веб-служба. Авторизация». После добавления пользователя, ему будут присвоены Номер (ClientId) и API ключ клиента, которые нужно использовать для подключения.
Фиксация оплаты внешним запросом
Сервис предназначен для приема информации о получении оплаты и простановки статуса «Оплачено» для определенного заказа.
Сервис вызывается следующим образом: http://CLIENT_DOMAIN/index.php?go=payment/bill
Подпись запроса
Подпись sig сверяется c md5($booking_id.$secret)
$booking_id - Id заказа в системе Nemo,
$secret - значение настройки в разделе «Администрирование» ⇨ «Настройки агентства» ⇨ «Ключ безопасности для сервиса выставления оплаты и получения XML выгрузки»
Пример:
Если booking_id: 263330 ключ безопасности: 12345 То sig=md5(26333012345) = a439a4492131f4b866ed1a17d018d3a6
Для фиксации оплаты получается такая ссылка: 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 забронированного заказа, который необходимо оплатить.
Данный запрос позволяет получить список платежных шлюзов, через которые есть возможность оплатить выбранный забронированный заказ. В качестве параметров передаются:
- имя платежного шлюза
- дополнительную наценку, которая добавляется к заказу при проведении оплаты через данный шлюз
- URL, перенаправляющий пользователя непосредственно на страницу оплаты через данный платежный шлюз
- в случае отправки запроса с мобильной платформы может дополнительно возвращается URL, ведущий на страницу заказа, предназначенный для перехвата и дальнейшей обработки
Общий формат запроса / ответа поиска
Запрос
1 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/wsdev/?version%3D1.0%26for%3DPaymentInitialization">
2 <soapenv:Header/>
3 <soapenv:Body>
4 <ver:InitPayment>
5 <RequestBin>
6 <Request>
7 <OrderId>?</OrderId>
8 <!--OrderId — Id забронированного заказа в системе Nemo-->
9 <!--Optional:-->
10 <ReturnUrlToCatch>?</ReturnUrlToCatch> <!--необязательный-->
11 <!--ReturnUrlToCatch - параметр, указывающий, что запрос идёт с мобильной платформы, значения: true / false-->
12 <!--Optional:-->
13 </Request>
14 <Source>
15 <ClientId>?</ClientId>
16 <!--ClientId — ID клиента в системе Nemo. Можно посмотреть/добавить в разделе "Администрирование" ? "Веб-служба. Авторизация".-->
17 <APIKey>?</APIKey>
18 <!--APIKey — секретный ключ доступа к API Nemo. Можно посмотреть/добавить в разделе "Администрирование" ? "Веб-служба. Авторизация".-->
19 <Language>?</Language>
20 <!--Language — язык, например: RU-->
21 <Currency>?</Currency>
22 <!-- Currency — валюта, например: RUB, EUR-->
23 </Source>
24 </RequestBin>
25 </ver:InitPayment>
26 </soapenv:Body>
27 </soapenv:Envelope>
Ответ
1 <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/wsdev/?version%3D1.0%26for%3DPaymentInitialization">
2 <SOAP-ENV:Body>
3 <ns1:InitPaymentResponse>
4 <ResponseBin>
5 <Response>
6 <Gateways>
7 <Gateway>
8 <GatewayName>?</GatewayName>
9 <!--GatewayName — имя платежного шлюза. Например: Uniteller -->
10 <PaymentCharge Currency="?">?</PaymentCharge>
11 <!--PaymentCharge — наценка, которая добавляется к заказу при оплате через данный шлюз, Currency — код валюты (из запроса)-->
12 <RedirectUrl>?</RedirectUrl>
13 <!--RedirectUrl — URL, перенаправляющий пользователя непосредственно на страницу оплаты через данный платежный шлюз-->
14 <UrlToCatch>?</UrlToCatch>
15 <!--UrlToCatch — URL для перехвата и дальнейшей обработки в случае отправки запроса с мобильной платформы, ведущий на страницу заказа-->
16 </Gateway>
17 </Gateways>
18 </Response>
19 </ResponseBin>
20 </ns1:InitPaymentResponse>
21 </SOAP-ENV:Body>
22 </SOAP-ENV:Envelope>
Примеры использования
Запрос
1 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/wsdev/?version%3D1.0%26for%3DPaymentInitialization">
2 <soapenv:Header/>
3 <soapenv:Body>
4 <ver:InitPayment>
5 <RequestBin>
6 <Request>
7 <OrderId>276965</OrderId>
8 <ReturnUrlToCatch>true</ReturnUrlToCatch>
9 </Request>
10 <Source>
11 <ClientId>---</ClientId>
12 <APIKey>---</APIKey>
13 <Language>RU</Language>
14 <Currency>RUB</Currency>
15 </Source>
16 </RequestBin>
17 </ver:InitPayment>
18 </soapenv:Body>
19 </soapenv:Envelope>
Ответ
1 <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/wsdev/?version%3D1.0%26for%3DPaymentInitialization">
2 <SOAP-ENV:Body>
3 <ns1:InitPaymentResponse>
4 <ResponseBin>
5 <Response>
6 <Gateways>
7 <Gateway>
8 <GatewayName>Uniteller</GatewayName>
9 <PaymentCharge Currency="RUB">81.54</PaymentCharge>
10 <RedirectUrl>http://CLIENT_DOMAIN/payment__select_outside?booking_id=276965&one_time_booking_code=PZ7981&method=27</RedirectUrl>
11 <UrlToCatch>http://CLIENT_DOMAIN/poffice__bookinfo?&booking_id=276965</UrlToCatch>
12 </Gateway>
13 </Gateways>
14 </Response>
15 </ResponseBin>
16 </ns1:InitPaymentResponse>
17 </SOAP-ENV:Body>
18 </SOAP-ENV:Envelope>