"Авторизация командировок через API"(ModExternalAuth)
Позволяет отправлять командировки на авторизацию во внешнюю систему при помощи технологии callbacks, а также предоставляет внешней системе возможность авторизовать или отклонить командировку при помощи обращения к методу API. Существует настройка, позволяющая автоматом оформить услуги по факту авторизации из внешней системы.
ВНИМАНИЕ! Представленный МОД не работает совместно с МОДом "Авторизация командировок" (ModComplexAuth)
Кому будет полезен этот МОД
Это клиентский МОД. Он доступен для подключения и использования только клиентам.
Он будет полезен клиентам, желающим отправлять командировки на авторизацию при помощи Callback. а так же проводить авторизацию командировок при помощи метода API
Подключение МОДа
Для подключения МОДа необходимо перейти в раздел “Marketplace”
Настройка МОДа
После подключения МОДа, переход к его настройке может быть осуществлен как через окно МОДа в разделе Marketplace
Так и через пункт “Внешняя авторизация” в выпадающем списке “Расширения”
После перехода к настройке МОДа. будут доступны следующие параметры:
Использовать авторизацию - указание условия, при котором будет использована внешняя авторизация.
Автоматически оформить услугу после авторизации - применение правила автоматического оформления, после успешной авторизации.
Текст кнопки 'Отправить на авторизацию'/Текст кнопки 'Отправить на авторизацию' на английском - указание текста выводимого на “Кнопке” в командировке на соответствующем языке.
Текст сообщения об успешной авторизации/Текст сообщения об успешной авторизации на английском - Указание текста, выводимого при успешной авторизации на соответствующем языке.
Настройка Callbacks
Данное callback-сообщение отправляется по адресу, указанному в настройках, в том случае, если командировка была отправлена на авторизацию во внешнюю систему.
Возможно использование SOAP или REST приемника для сообщения, в первом случае в теле сообщения необходимо указать всю структуру SOAP-объекта, например, Envelope, Body и так далее. Рекомендуется отправить тестовое сообщение к своему сервису при помощи SOAP UI и получить полный набор заголовков и структуру сообщения.
Допустимые переменные (можно использовать их в Body):
@OuterId - уникальный идентификатор заказа во внешней системе
@id_ComplexReserve - идентификатор командировки в системе Corteos
@Hash - токен, используемый в вызове метода авторизации заказа.
Пример
Работа с МОДом
После подключения и корректной настройки МОДа, в окно командировки будет добавлена “кнопка” “Отправить на авторизацию” (Название кнопки зависит от указанного в настройках МОДа)
При нажатии на нее, командировка будет отправлена на авторизацию во внешнюю систему:
Пример успешного прохождения авторизации
Командировка 763281 отправлена на внешнюю авторизацию:
В Payload поступят следующие данные:
<Id>763281</id> - номер командировки проходящей авторизацию
<hash>eeb3a68b0df3edb38de3f4df025f8b96</hash> - код для безопасного доступа к командировке через API для авторизации.
Метод API для работы с авторизацией командировки:
YourDomain/PortableViews/ModExternalAuthViews/XmlGate/ExternalAuth.asmx?op=Authorize
Для авторизации командировки необходимо передать
<Id></id> - номер командировки проходящей авторизацию
<hash></hash> -код для безопасного доступа к командировке через API для авторизации
<cor:authorize>1</cor:authorize> где “1” подтверждение авторизации
Пример подтверждения:
Ответ;
Командировка успешно прошла авторизацию.
Пример
Пример отказа в авторизации:
Командировка 763282 отправлена на внешнюю авторизацию:
В Payload поступят следующие данные:
<Id>763282</id> - номер командировки проходящей авторизацию
<hash>84b58f3275ec0c85b758ef92c1c5fced</hash> - код для безопасного доступа к командировке через API для авторизации.
Метод API для работы с авторизацией командировки:
YourDomain/PortableViews/ModExternalAuthViews/XmlGate/ExternalAuth.asmx?op=Authorize
Для авторизации командировки необходимо передать
<Id></id> - номер командировки проходящей авторизацию
<hash></hash> -код для безопасного доступа к командировке через API для авторизации
<cor:authorize>0</cor:authorize> где “0” отказ в авторизации
Пример отказа:
Ответ;
Командировка не прошла авторизацию.