Технические требования к организации взаимодействия веб-систем Яндекса и Заказчика для предоставления Заказчиком Материалов

1. Схема взаимодействия при получении Материалов

Общая схема работы:

1. Пользователь запрашивает у сервиса Яндекс.Авиабилеты варианты перелетов между двумя пунктами на выбранную дату;

2. сервис Яндекс.Авиабилеты отправляет запрос (GET или POST) к веб-сайту Заказчика по адресу, передавая параметры:

2.1. departure – IATA либо Сирена -код пункта отправления

2.2. arrival – IATA либо Сирена -код пункта прибытия,

2.3. date_forward – дата прямого вылета в формате YYYY-MM-DD,

2.4. date_backward – дата обратного вылета в формате YYYY-MM-DD, может отсутствовать,

2.5. class – класс обслуживания, например E - эконом или B - бизнес,

2.6. adult – количество взрослых пассажиров,

2.7. child – количество детей, может отсутствовать,

2.8. infant – количество младенцев без места, может отсутствовать

3. Веб-сайт Заказчика возвращает XML следующего формата с информацией о местах и ценах.

Например:

<variant

url = "[адрес]" // url для перенаправления пользователя на веб-сайт Заказчика

>

<route_forward

route_code = "0123АБ" // номер рейса

company_code = "BL" // код авиакомпании

company_name = "Blah-air" // название авиакомпании

departure_airport_code = "DME" // код аэропорта вылета

arrival_airport_code = "SVO" // код аэропорта прибытия

departure_datetime = "2011-04-01 18:12" // дата-время отправления (локальное время)

arrival_datetime = "2011-04-01 21:20" // дата-время прибытия (локальное время)

route_time = "123" // время в пути в минутах

farecode="WFLOWCS" // код тарифа

tariff_adult = "80.00" // тариф для взрослого, если они присутствуют в запросе

tariff_child = "60.00" // тариф для детей, если они присутствуют в запросе

tariff_infant = "3.45" // тариф для младенца без места, если они присутствуют в запросе

/>

...

<route_backward

route_code = "0123АБ" // номер рейса

company_code = "BL" // код авиакомпании

company_name = "Blah-air" // название авиакомпании

departure_airport_code = "DME" // код аэропорта отправления

arrival_airport_code = "SVO" // код аэропорта прибытия

departure_datetime = "2011-04-01 18:12" // дата-время отправления (локальное время)

arrival_datetime = "2011-04-01 21:20" // дата-время прибытия (локальное время)

route_time = "123" // время в пути в минутах

farecode="WFLOWCS" // код тарифа

tariff_adult = "80.00" // тариф для взрослого, если они присутствуют в запросе

tariff_child = "60.00" // тариф для детей, если они присутствуют в запросе

tariff_infant = "3.45" // тариф для младенца без места, если они присутствуют в запросе

/>

...

<fare

value = "123.45" // цена (минимальная цена) в данном классе обслуживания

class = "E" // код класса обслуживания

charter = «true|false» //признак чартерного тарифа

block = «true|false» //признак блочного тарифа

/>

</variant>

...

Вся информация о перелете, использованная в примере выше обязательна для ответа в соответствии с запрошенными типами пассажиров.

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

4. Блок variant повторяется для каждого предложения о бронировании в заданном классе обслуживания. В каждом блоке variant есть один или несколько подблоков route_forward и route_backward, содержащие информацию о сегментах перелёта туда и обратно соответственно.

5. Если обратная дата не указана, то возвращаются только предложения в одну сторону. При этом в блоках variant содержатся только подблоки route_forward.

6. Материалы Заказчика, поступившие после 20 секунд ожидания, либо после прерывания времени ожидания пользователем не будут размещены. Такие материалы, поступившие в период времени от 20 сек до 2 минут будут сохранены и отображены без повторного запроса к Заказчику до истечения времени актуальности кеша.

7. Заказчики, использующие GDS «Сирена-трэвел», должны отвечать на запросы с внутренними кодами, используемыми в данной GDS.

8. Заказчик обязуется использовать защищенный протокол передачи данных – https на своем сайте при переходе с сервиса Яндекс.Авиабилеты.

9. Заказчик обязуется информировать Яндекс о переходе на новый протокол предоставления информации не менее чем за 30 (тридцать) календарных дней до реализации перехода.

10. Отчет о количестве и общей стоимости приобретенных Пользователями авиабилетов в результате их перехода с веб-страниц сервиса Яндекс.Авиабилеты, предоставляемый Заказчиком согласно пункту 3.3.9. Договора, должен быть предоставлен в форматах xsl/xslx, либо csv.

2. Схема взаимодействия при переходе к продаже

Переход с сервиса Яндекс.Авиабилеты на веб-сайт Заказчика осуществляется следующим образом:

1. Пользователь выбирает предложение и нажимает на ссылку (стоимость авиационного билета, указанную в валюте, переданной Заказчиком), на сервисе Яндекс. Авиабилеты;

2. Пользователь перенаправляется на веб-сайт Заказчика по адресу, полученному в ответе в поле url блока variant для данного предложения;

3. Пользователь на веб-сайте Заказчика начинает процесс бронирования:

3.1.на веб-сайте Заказчика должна осуществляться автоматическая проверка возможности забронировать предложение, которое пользователь выбрал на сервисе Яндекс.Авиабилеты (проверка должна осуществляться перед тем, как пользователь на веб-сайте Заказчика начинает процесс бронирования),

3.2. если выбранный Пользователем вариант бронирования не доступен, то пользователю должно показываться соответствующее информационное сообщение и должны предлагаться другие варианты, соответствующие параметрам поиска пользователя,

3.3. если выбранный Пользователем вариант бронирования доступен, то должна отображаться страница с подробной информацией о выбранном варианте бронирования и предложением ввести данные о пассажирах для бронирования. На странице также должны соблюдаться следующие условия:

3.3.1. Стоимость авиационного билета при оплате банковской картой в сети Интернет, отображаемая на странице, должна полностью соответствовать стоимости, предоставленной Заказчиком в Материалах: располагаться на видном месте и визуально отделена от других возможных предлагаемых Заказчиком вариантов.

3.3.2. В случае, если Заказчик наряду с авиационными билетами предлагает Пользователю на веб-сайте Заказчика дополнительные услуги, Заказчик обязуется предоставить Пользователю возможность выбрать такие дополнительные услуги на веб-сайте Заказчика самостоятельно. Все дополнительные услуги должны быть предложены до ввода данных банковской карты Пользователя. До согласия Пользователя дополнительные услуги не должны добавляться к стоимости авиационного билета.

4. В случае если Пользователь на веб-сайте Заказчика начинает процесс бронирования и по выбранному варианту требуется подтверждение от Заказчика, должны выполняться следующие требования:

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

  • Срок окончательного ответа о наличии выбранного предложения и его стоимости должен составлять не более 1 рабочего дня.

  • Пользователь должен быть проинформирован в случае, если предложение не подтверждается.

5. Заказчик обязуется не передавать материалы в ответ на запрос сервис Яндекс.Авиабилеты в следующих случаях:

5.1. если параметры, описанные в настоящем документе, при получении Материалов, отображается на веб-сайте Заказчика не полностью;

5.2. если веб-сайт Заказчика по адресу, полученному в ответе согласно п. 2. Схемы взаимодействия при переходе к продаже не загружается и выдает сообщения об ошибке;

5.3. при любых технических и иных проблемах, не позволяющих Пользователю перейти на страницу с подробной информации о выбранном варианте (согласно п.3.3 настоящего документа) и завершить процесс покупки на веб-сайте Заказчика.

6. Далее процесс покупки должен продолжаться согласно технологии принятой на веб-сайте Заказчика.

 

_____________________________

Дата публикации 25.01.2016 г.

Дата вступления в силу: 25.01.2016 г.

Предыдущая версия документа: https://yandex.ru/legal/airplane_timetable_requirements/15122015/

Предыдущая версия документа: https://yandex.ru/legal/airplane_timetable_requirements/25052015/