Универсальный метод выгрузки заказа или командировки

Данный механизм предоставляет протокол унифицированного вида, который не будет меняться с течением времени, что позволяет использовать эту реализацию повторно, независимо от того, какая версия системы Кортеос используется. Следствием этого также является то, что не все поля, которые доступны в агентской реализации, присутствуют в данном ответе.

Перед использованием метода необходимо пройти аутентификацию и получить валидный токен. Подробнее об этом: Авторизация (получение токена)

Для унификации формата выгрузки данных из заказов, созданных в Кортеос v2 и v3, используется универсальный метод выгрузки заказа GetReservationDetailsV2 из сервиса EndCustomerAPI.asmx

WSDL можно скачать с демо-сайта: https://stage1.corteos.ru/XmlGate/EndCustomer/EndCustomerAPI.asmx?WSDL

Для работы в продуктовой среде необходимо заменить “stage1.corteos.ru на свой домен (на котором работают пользователи вашей компании).

Универсальный метод выгрузки заказа GetReservationDetailsV2https://stage1.corteos.ru/XmlGate/EndCustomer/EndCustomerAPI.asmx?op=GetReservationDetailsV2

Параметры:

  • id_Reserve – int – номер заказа в системе Кортеос, не может быть пустым;

  • id_CompexReserve – int – номер командировки, не может быть пустым;

  • ClientToken – string – токен клиента, которому доступен этот заказ (выгрузка для клиентской интеграции).

Примечание: Аналог пустого значения для id_Reserve или id_ComplexReserve – 0, в том случае, если id_Reserve != 0, значение, передаваемое как id_ComplexReserve, игнорируется.

Примеры запросов:

Пример запроса:

Пример ответа:


Структура ответа (элемент контейнера комплексного заказа – объект заказа):

  • id_ComplexReserve - Номер командировки в ОБТ – целое число;

  • id_Reserve - Номер заказа в ОБТ – целое число;

  • id_ReserveType – тип услуги - целое число;

  • DateStart – дата начала услуги – строка;

  • DateEnd – дата окончания услуги – строка, для OW совпадает с DateStart;

  • Price – цена заказанной услуги – плавающее число;

  • OptimalPrice – оптимальная цена услуги – плавающее число;

  • Currency – код валюты ISO для заказанной услуги, например, RUB, USD, EUR - строка;

  • OptimalPriceCurrency – код валюты ISO для оптимальной услуги, например, RUB, USD, EUR – строка;

  • ProviderLocator – номер брони у поставщика - строка;

  • Timelimit – срок действия брони – строка;

  • Codes – бюджетные коды заказа, массив объектов CustomerCode:

    • DictionaryName – название справочника кодов, строка;

    • Code – значение кода, строка.

  • Passengers – пассажиры, массив объектов Passenger:

    • id_Person – идентификатор персоны, число;

    • id_Passenger – уникальный номер пассажира, число (одна персона может быть пассажиром сразу в нескольких заказах, связь один ко многим);

    • LastName – фамилия персоны, строка;

    • FirstName – имя персоны, строка;

    • SurName – отчество персоны, строка;

    • Document – документ, строка;

    • DocumentType – тип документа:

      • passport – национальный паспорт;

      • foreignpassport – иностранный документ;

      • birthcertificate – свидетельство о рождении;

    • Codes – массив структурных кодов CustomerCode.

  • Transport – информация о ж/д- и авиабилетах (заполняется для типов id_ReserveType == 1 или 2):

    • SelectedTransport – выбранный вариант – набор сегментов следующей структуры:

      • VendorCode – код перевозчика – код авиакомпании или «РЖД» - строка;

      • Number – номер рейса или поезда, строка;

      • OriginCode – код аэропорта/вокзала отправления в кодировке IATA или Экспресс-2, строка;

      • DestinationCode – код пункта прибытия, строка;

      • OriginName – название города отправления, строка;

      • DestinationName – название города прибытия, строка;

      • DepartureDate – дата отправления, строка;

      • ArrivalDate – дата прибытия, строка;

      • RBD – код бронирования с указанием класса(эконом, бизнес) - строка;

      • FareBasis – тариф, строка;

      • DepartureTime – время отправления, строка;

      • ArrivalTime – время прибытия, строка;

      • TransportCategoryName – тип поезда или воздушного судна, строка.

    • OptimalTransport – аналогичный контейнер для самого дешевого варианта.

  • Hotel – контейнер для выбранного и оптимального предложения по отелям (заполняется для типа заказа id_ReserveType == 3):

    • SelectedHotel – выбранный отель:

      • HotelCity – город, в котором расположен отель, строка, например, "Москва";

      • HotelName – название отеля, строка;

      • RoomName – название номера, строка;

      • Stars – количество звезд, число;

      • Is3D – отель предлагается по трехстороннему договору, булевый тип;

      • CancelationInfo – информация об отмене, строка.

    • OptimalHotel – самый дешевый отель.

  • id_ReserveState – идентификатор состояния заказа, число;

  • TravelPolicy – контейнер нарушений политики:

    • HasViolations – признак наличия нарушений, булевый тип;

    • Violations – список нарушений:

      • Policy – название нарушенной политики, строка;

      • ViolationText – описание нарушения, строка.

    • Files – контейнер файлов:

      • Caption – название файла, строка;

      • FileExtension – расширение файла, определяет его тип - строка;

      • FileBase64 – файл в виде массива байтов, приведенный к base64 (utf8) - строка;

      • IsTravellerDocument – признак того, что документ является файлом ваучера или билета, булевый тип.

____