# Программа лояльности TravelLineLoyalty

<span style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-fareast-language: EN-US;">Интеграция включает в себя </span><span lang="EN-US" style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-ansi-language: EN-US; mso-fareast-language: EN-US;">Windows </span><span style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-fareast-language: EN-US;">службу </span><span lang="EN-US" style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-ansi-language: EN-US; mso-fareast-language: EN-US;">TravelLineLoyalty</span><span style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-fareast-language: EN-US;">.   
Минимальная требуемая версия <span style="color: rgb(35, 111, 161);">**АСУ Эдельвейс – 7.26.05**</span>.  
  
Интеграция реализует:  
1\. **Автоматическую выгрузку сведений о выехавших гостях,** у которых есть карта лояльности (стоимость проживания, период проживания).  
Выгрузка выполняется при условии, что хотя бы у одного гостя к номеру телефона привязана карта лояльности.  
</span>

Приоритет выбора карты лояльности для выгрузки в нее суммы и количества суток проживания (если больше чем у одного гостя есть карта лояльности):

1. **Гость с применённой скидкой по карте TL**  
    (Пример: скидка уже использована <span style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-fareast-language: EN-US;">–</span> этот гость на первом месте)
2. **Если скидка по карте в брони не применялась <span style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-fareast-language: EN-US;">– </span>плательщик номера**  
    (Пример: карта есть у главного гостя и какого-то другого - используем карту главного)
3. **Если у плательщика нет карты TL <span style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-fareast-language: EN-US;">–</span> все остальные гости по порядку добавления**  
    (Пример: первый добавленный гость, потом второй и т.д.)

<span style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-fareast-language: EN-US;">2. **Автоматическую проверку наличия карты лояльности** при заполнении номера телефона гостя.  
Если карта лояльности найдена и скидка по ней больше текущей, сотруднику отеля предлагается применить скидку.</span>

<span style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-fareast-language: EN-US;">**3. Списания бонусных баллов нет.**  
  
</span>Параметры надо задать через CfgAssistant v1.0.2.3 или старше

<table id="bkmrk-%D0%9F%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80-%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5-%D0%9F%D1%80" style="width: 100%; height: 309.673px;"><thead><tr style="height: 29.7017px;"><th style="width: 24.305%; height: 29.7017px;">Параметр</th><th style="width: 36.5379%; height: 29.7017px;">Описание</th><th style="width: 39.0489%; height: 29.7017px;">Примечания</th></tr></thead><tbody><tr style="height: 46.5057px;"><td style="width: 24.305%; height: 46.5057px;">TravelLineLoyaltyHost</td><td style="width: 36.5379%; height: 46.5057px;">Адрес хоста сервиса TravelLine Loyalty</td><td style="width: 39.0489%; height: 46.5057px;">Используется для формирования URL запросов к API. **Брать у TravelLine!**</td></tr><tr style="height: 46.5057px;"><td style="width: 24.305%; height: 46.5057px;">TravelLineLoyaltyCampaignId</td><td style="width: 36.5379%; height: 46.5057px;">Идентификатор кампании лояльности</td><td style="width: 39.0489%; height: 46.5057px;">Уникальный ID кампании в системе TravelLine **Брать у TravelLine!**</td></tr><tr style="height: 47.4432px;"><td style="width: 24.305%; height: 47.4432px;">TravelLineLoyaltyXApiKey</td><td style="width: 36.5379%; height: 47.4432px;">API-ключ для авторизации</td><td style="width: 39.0489%; height: 47.4432px;">Передаётся в заголовках запросов (например, `X-Api-Key`) **Брать у TravelLine!**</td></tr><tr style="height: 46.5057px;"><td style="width: 24.305%; height: 46.5057px;">TravelLineLoyaltyHotelId</td><td style="width: 36.5379%; height: 46.5057px;">Идентификатор отеля</td><td style="width: 39.0489%; height: 46.5057px;">Уникальный ID отеля в системе TravelLine **Брать у TravelLine!**</td></tr><tr style="height: 46.5057px;"><td style="width: 24.305%; height: 46.5057px;">TravelLineLoyaltyExportPeriodNoSendBeforeDays</td><td style="width: 36.5379%; height: 46.5057px;">Количество дней до заезда, раньше которых данные не отправляются</td><td style="width: 39.0489%; height: 46.5057px;">Ограничение на минимальный период до даты заезда</td></tr><tr style="height: 46.5057px;"><td style="width: 24.305%; height: 46.5057px;">TravelLineLoyaltyExportPeriodSendAfterDays</td><td style="width: 36.5379%; height: 46.5057px;">Количество дней после заезда, в течение которых выполняется отправка</td><td style="width: 39.0489%; height: 46.5057px;">Определяет максимальный период после даты заезда для отправки данных</td></tr></tbody></table>

**TravelLineLoyaltyExportPeriodNoSendBeforeDays** - если отель выгружал данные в систему лояльности в какой-то день и ему надо дополнительно выгрузить (чтобы начислить баллы) данные о гостях после этого дня, то надо задать сколько дней прошло с того дня до сегодняшнего.

**TravelLineLoyaltyExportPeriodSendAfterDays** - после выезда гостя какая-то информация может измениться, так что выгрузку выполняем не сразу после выезда, а через несколько дней. Если мы укажем здесь 5, тогда данные будут отправлены через 5 дней после выезда гостя.