Pricing 2.0: specification: различия между версиями
(Новая страница: «'''Empty file template'''<br/>File:CommImportExampleV1.0.5.xlsx ---- {| style="width: 100%" class="wikitable sortable" |- ! scope="col" | Title<br/> ! sco…») |
|||
Строка 99: | Строка 99: | ||
| <span id="ownPart">ownPart</span> | | <span id="ownPart">ownPart</span> | ||
| Minimum allowed part of own flight segments (i.e. validating carrier is equal to a marketing carrier for these segments). It has to be greater than or equal to this value.<br/> | | Minimum allowed part of own flight segments (i.e. validating carrier is equal to a marketing carrier for these segments). It has to be greater than or equal to this value.<br/> | ||
− | *1 - | + | *1 - all segments are owned by the validating carrier<br/> |
− | *0.5 - | + | *0.5 - one half of the segments (ore more)are owned by the validating carrier<br/> |
− | *0.25 - | + | *0.25 - one quarter of the segments (ore more)are owned by the validating carrier<br/> |
− | *0.01 - | + | *0.01 - at least 1 segment is owned by the validating carrier<br/> |
− | *0 - | + | *0 - all segments are interline |
| | | | ||
− | + | empty = any values<br/> | |
− | + | any number from 0 to 1 | |
| | | | ||
0.88 | 0.88 | ||
|- | |- | ||
− | | | + | | part of interline segments |
| <span id="interlinePart">interlinePart</span> | | <span id="interlinePart">interlinePart</span> | ||
− | | | + | | Minimum allowed part of interline flight segments (i.e. validating carrier is not equal to a marketing carrier for these segments). It has to be greater than or equal to this value. |
− | *1 - | + | *1 - all segments are interline<br/> |
− | *0.5 - | + | *0.5 - one half of the segments (ore more) are interline<br/> |
− | *0.25 - | + | *0.25 - one quarter of the segments (ore more) are are intrline<br/> |
− | *0.01 - | + | *0.01 - at least 1 segment is owned by interline carrier<br/> |
− | *0 - | + | *0 - all segments are owned by the validating carrier |
| | | | ||
− | + | empty = any values<br/> | |
− | + | any number from 0 to 1 | |
| | | | ||
0.88 | 0.88 | ||
|- | |- | ||
− | | | + | | contract type |
| <span id="contractType">contractType</span> | | <span id="contractType">contractType</span> | ||
− | | | + | | BSP or TCH system |
| | | | ||
− | + | empty = any type,<br/>BSP<br/>TCH | |
| TCH | | TCH | ||
|- | |- | ||
− | | | + | | GDS |
| <span id="gds">gds</span> | | <span id="gds">gds</span> | ||
− | | | + | | Here you can define the allowed GDS (Amadeus, Sabre, etc.), PCC or Nemo package ID for a specific pricing rule. Different types can be combined and listed in any sequence. For example, if you choose Sabre as the GDS, then there is no point to list all Sabre PCC's or packages you are going to use. |
− | |||
| | | | ||
− | + | empty = any<br/>SABRE, GALILEO, AMADEUS, SIRENA, SITA - GDS<br/>[letters+digits] - PCC<br/>[digits] - package ID | |
| SABRE,670P,123 | | SABRE,670P,123 | ||
Строка 146: | Строка 145: | ||
|- | |- | ||
− | | | + | | start of selling |
| <span id="paymentDateFrom">paymentDateFrom</span> | | <span id="paymentDateFrom">paymentDateFrom</span> | ||
− | | | + | | Minimum allowed date of booking (it is NOT equal to the departure date). Pricing rule will be applied if current date is more or equal to the date defined in this column. |
− | | | + | | empty = any date<br/> |
DD.MM.YYYY | DD.MM.YYYY | ||
Строка 156: | Строка 155: | ||
|- | |- | ||
− | | | + | | end of selling |
| <span id="paymentDateTo">paymentDateTo</span> | | <span id="paymentDateTo">paymentDateTo</span> | ||
− | | | + | | Maximum allowed date of booking. Pricing rule will be applied if current date is less or equal to the date defined in this column. |
− | | | + | | empty = any<br/>DD.MM.YYYY |
| 31.12.2022 | | 31.12.2022 | ||
|- | |- | ||
− | | | + | | flight type |
| <span id="airlineType">airlineType</span> | | <span id="airlineType">airlineType</span> | ||
− | | | + | | International or domestic flight (i.e. the whole flight with all transfers is within the same country. |
− | | | + | | empty = any<br/>IA (international airlines)<br/>DA (domestic airlines) |
| IA<br/>DA | | IA<br/>DA | ||
|- | |- | ||
− | | | + | | flight numbers |
| <span id="flightNumber">flightNumber</span> | | <span id="flightNumber">flightNumber</span> | ||
| | | | ||
− | + | Allowed flight numbers, can be defined with the marketing carrier or code or without it. | |
− | + | Acceptable values: | |
− | *NNN,NNN: | + | *NNN,NNN: at least 1 flight number must be in the list. |
− | *NNN,NNN! : | + | *NNN,NNN! : all these flight numbers for all segments must be in the list for this flight. |
− | *<>NNN,NNN : | + | *<>NNN,NNN : at least 1 oflight number must not be in the list. |
− | *<>NNN,NNN! : | + | *<>NNN,NNN! : all flight numbers must not be in the list for this flight. |
| | | | ||
− | + | empty = any<br/>- 1 or several values (see the description) | |
| SU 123,SU 345<br/>123,345<br/><>LH 555 | | SU 123,SU 345<br/>123,345<br/><>LH 555 | ||
|- | |- | ||
− | | | + | | aircraft type |
| <span id="aircraft">aircraft</span> | | <span id="aircraft">aircraft</span> | ||
| | | | ||
− | + | Allowed aircraft codes, should be defined as returned by the GDS | |
− | + | Acceptable values: | |
− | *CODE,CODE: | + | *CODE,CODE,CODE : at least 1 aircraft code must be in the list. |
− | *CODE,CODE! : | + | *CODE,CODE,CODE! : all aircraft codes must be in the list for this flight. |
− | *<>CODE,CODE : | + | *<>CODE,CODE,CODE : at least 1 aircraft code must not be in the list. |
− | *<>CODE,CODE! : | + | *<>CODE,CODE,CODE! : all aircraft code must not be in the list for this flight. |
| | | | ||
− | + | empty = any<br/>- 1 or several values (see the description) | |
| 73C,DH4<br/>735 | | 73C,DH4<br/>735 | ||
|- | |- | ||
− | | | + | | fare codes |
| <span id="tariffs">tariffs</span> | | <span id="tariffs">tariffs</span> | ||
− | | | + | | Allowed fare codes. Должен совпасть хотя бы один из перелета с одним из заданного списка. При правиле с отрицанием никаких совпадений быть не должно. Совпадение не точное: код из правила может содержаться в коде из перелета (к примеру введенное S1GREY26 совпадет с S1GREY26CH из перелета).<br/> |
<br/> | <br/> | ||
Варианты ввода: | Варианты ввода: |
Версия 16:19, 2 марта 2016
Empty file template
Файл:CommImportExampleV1.0.5.xlsx
Title |
Operating name |
Description |
Acceptable values |
Examples |
---|---|---|---|---|
id | id | Unique record number, can be taken from any database/system. It's optional parameter and isn't involved in any calculations (only for imformational purpose). | any integer value | 123 |
GDS validating carrier | valCompanyId |
Carrier (airline) code is compared to the airline that is offered by GDS as a validating one. Agency must have a contract with this airline. In case if there is a need to issue tickets and assign another airline stock, you can redefine the validating carrier using the next column ("redefined carrier"). If the GDS validating carrier isn't confirmed by Nemo pricing rules as an allowed carrier and isn't redefined, Nemo considers this сarrier as an unauthorized one. You can exclude such flights from search results using a special search filter. |
empty value is ignored
2 letters/digits |
SU
LH |
redefined validating carrier | manualVV |
If an agency has no contract agreement with the GDS validating carrier (or it provides relatively low commission value), you can redefine the validating carrier on your side using this parameter. In this case the "validating carrier" value must be the same as the GDS validating carrier (or it can be empty). |
empty value is ignored |
SU |
first segment carriers | airlines |
List of allowed marketing carriers for the first route segment. |
empty = any values |
SU,LH,BA
<>S7,SU |
any segment carriers | airlinesAny |
List of allowed marketing carriers (interlines) for any segment.
|
empty = any values |
SU,LH,BA |
code-sharing | codeSharing | Code-sharing index (i.e. if a flight can or can't be operated by another airline). |
empty = all flights |
0
1 |
operators | operatingAirlines |
List of allowed operating carriers (for all segments)
|
empty = any values |
SU,LH,BA |
part of own segments | ownPart | Minimum allowed part of own flight segments (i.e. validating carrier is equal to a marketing carrier for these segments). It has to be greater than or equal to this value.
|
empty = any values |
0.88 |
part of interline segments | interlinePart | Minimum allowed part of interline flight segments (i.e. validating carrier is not equal to a marketing carrier for these segments). It has to be greater than or equal to this value.
|
empty = any values |
0.88 |
contract type | contractType | BSP or TCH system |
empty = any type, |
TCH |
GDS | gds | Here you can define the allowed GDS (Amadeus, Sabre, etc.), PCC or Nemo package ID for a specific pricing rule. Different types can be combined and listed in any sequence. For example, if you choose Sabre as the GDS, then there is no point to list all Sabre PCC's or packages you are going to use. |
empty = any |
SABRE,670P,123
AMADEUS,GALILEO |
start of selling | paymentDateFrom | Minimum allowed date of booking (it is NOT equal to the departure date). Pricing rule will be applied if current date is more or equal to the date defined in this column. | empty = any date DD.MM.YYYY |
01.01.2012
31.01.2010 |
end of selling | paymentDateTo | Maximum allowed date of booking. Pricing rule will be applied if current date is less or equal to the date defined in this column. | empty = any DD.MM.YYYY |
31.12.2022 |
flight type | airlineType | International or domestic flight (i.e. the whole flight with all transfers is within the same country. | empty = any IA (international airlines) DA (domestic airlines) |
IA DA |
flight numbers | flightNumber |
Allowed flight numbers, can be defined with the marketing carrier or code or without it. Acceptable values:
|
empty = any |
SU 123,SU 345 123,345 <>LH 555 |
aircraft type | aircraft |
Allowed aircraft codes, should be defined as returned by the GDS Acceptable values:
|
empty = any |
73C,DH4 735 |
fare codes | tariffs | Allowed fare codes. Должен совпасть хотя бы один из перелета с одним из заданного списка. При правиле с отрицанием никаких совпадений быть не должно. Совпадение не точное: код из правила может содержаться в коде из перелета (к примеру введенное S1GREY26 совпадет с S1GREY26CH из перелета).
Есть возможность указать регулярное выражение. Для этого нужно написать параметр в формате /XXX/ Примеры:
|
пустое = любые |
WRUTH9PL,ARUTH9PL
|
максимальный тариф | maxTariff | Ограничение на максимальное ценовое значение "базовой стоимости" (сумма всех тарифов от перевозчиков в перелете или стоимость от GDS за вычетом такс). Если параметр задан, то всё правило, записанное в строке, будет срабатывать только в том случае, если тариф перелета меньше указанного. |
пустое = ограничения нет |
10000RUB |
конф. тариф | privateFare | Для срабатывания правила у перелета должен присутствовать тариф с признаком конфиденциального (приватного). Об этом сообщает ГДС. Если указание конкретного кода приватного тарифа достаточно для однозначного определения правила - признак выставлять необязательно. |
пустое = любые тарифы |
0 |
коды такс | taxes | Допустимые коды такс
Варианты ввода:
где КОД - набор заглавных латинских букв |
пустое = любые |
YQ,YR |
цена подтверждена | priceIsActual | Проверяемый признак перелета. Цена в перелете после поиска считается не подтвержденной. Цена становится подтвержденной (актуальной) при создании реального PNR или при запросе актуализации цен в рамках вебсервисов Nemo2.0 (до создания PNR) |
пустое = любые перелеты |
0 |
наличие сегментов вп во всех тарифах | valSegmentsInTariff | Проверка: среди сегментов любого тарифа должен присутствовать сегмент валидирующего перевозчика (минимум один) |
пустое или 0 = любые тарифы |
0
|
сервис классы | serviceClass |
Допустимые категории классов обслуживания
где КОД:
|
пустое = любые |
B,E |
классы бронирования (коды) |
bookingClass |
Допустимые литеры (однобуквенные коды) классов бронирования. Латинскими буквами, русские буквы допустимые только для правил поставщика Sirena.
|
пустое = любые |
A,B,C <>A,B,C |
перевозчики и классы | airlinesAndClasses |
Набор пар "маркетинговый перевозчик" + "класс бронирования" любого сегмента маршрута. Допустимые варианты ввода:
|
пустое = любые |
SU:A,LH:B,BA:C |
зоны | zones |
Географические зоны перелета. Весь перелет не должен выходить за пределы одной из указанных зон для срабатывания правила. разделение стран по указанным зонам
перелет должен находиться в обеих зонах ( "EUSA, EUNA" - трансатлантический перелет ):
|
пустое = любые |
AS,EU |
зона из стран | countryZones | Перечисленные коды стран образуют зону, за пределами которой самолет не должен садиться и взлетать. | пустое = любые
КОД,КОД... |
RU,IT,DE,FR |
страны вылета | depCountries | Допустимые страны вылета для перелета (проверяется только страна вылета первого сегмента маршрута). |
пустое = любые |
RU |
страны назначения | arrCountries | Проверяется страна назначения (для OW и CR: это последняя страна последнего сегмента, для RT: это последняя страна первого плеча маршрута). К примеру для перелета MOW-PAR-MOW страна назначения FR, для MOW-PAR-LON - GB. Правило страна вылета=RU, страна назначения=RU не означает местный рейс - не забывайте указывать тип рейса DA (ВВЛ). |
пустое = любые |
RU |
прямой рейс | isDirect | Признак прямого рейса |
пустое = любые |
0 |
тип маршрута | routeType |
Можно оставить поле пустым или указать одно значение:
|
пустое = любой |
OW |
маршруты | routeFull | Цепочка из IATA кодов городов или аэропортов, описывающая весь маршрут перелета с учетом пересадок, без разрывов и повторов. Всегда следует использовать IATA код города, если он имеется (агрегирующий аэропорт). К примеру перелет VKO-ORY, ORY-VKO приводится к маршруту MOW-PAR-MOW. |
пустое = любые |
MOW-LON,LON-MOW |
содержит маршруты | routePart |
Указывается только часть маршрута, составленного по аналогии с предыдущим. |
пустое = любые |
-CAI- |
маршруты (из аэропортов) | routeAirportsFull | В правиле можно и нужно использовать IATA коды аэропортов (не городов). Остальное аналогично с "маршруты" | см. описание | см. описание |
содержит маршруты (из аэропортов) | routeAirportsPart | В правиле можно и нужно использовать IATA коды аэропортов (не городов). Остальное аналогично с "содержит маршруты" | см. описание | см. описание |
вылет (аэропорты, города) | depAirports | Проверяется только аэропорт вылета первого сегмента. При указании кодов аэропортов необходимо точное совпадение. При указании кодов городов (агрегирующий аэропортов) сопоставление происходит по внутреннему справочнику аэропоротов. Рекомендуется указывать коды конкретных аэропортов. |
пустое = любые |
MOW,PAR,BER <>VKO,LON |
прилет (аэропорты, города) | arrAirports | Аэропорт прилета определяется аналогично "стране назначения". Проверка на сопоставление происходит по аналогии с "вылетом (аэропорты, города)" |
пустое = любые |
MOW,PAR,BER <>VKO,LON |
начало вылета | dateBegin | Дата вылета первого сегмента должна быть больше или равна указанной дате | пустое = игнорируется DD.MM.YYYY |
01.01.2012
31.01.2010 |
вылет через (в часах) | dateDepartureAfter | От текущей даты задается максимальное значение или диапазон вылета. Например, если необходимо выделить перелеты не позднее 5 дней до вылета, то задается диапазон [0,120]. | пустое = ограничения нет максимальное значение [X,X] - диапазон |
13
[10,100] |
конец вылета | dateEnd | Дата вылета первого сегмента должна быть меньше или равна указанной дате | пустое = игнорируется DD.MM.YYYY |
31.12.2022 |
возврат не ранее | dateBackBegin | Дата вылета последнего сегмента маршрута должна быть больше или равна указанной дате | пустое = игнорируется DD.MM.YYYY |
31.12.2022 |
возврат не позднее | dateBack | Дата вылета последнего сегмента маршрута должна быть меньше или равна указанной дате | пустое = игнорируется DD.MM.YYYY |
31.12.2022 |
длительность в днях | daysDuration | Ограничение на максимальный разрыв в днях между первой датой перелета и завершением маршрута. Можно задавать диапазон Длительность в днях считается, как математическая разность дат. При вылете и возврате в один день длительность равна 0 дней. |
пустое = ограничения нет |
13 |
дни недели | dayOfWeek | Допустимые дни недели для даты вылета первого сегмента маршрута. Значения указываются числом, соответствующим порядку дня недели, начиная с понедельника. | пустое = игнорируется 1 - понедельник |
2 |
типы пассажиров | passengers | Допустимые типы пассажиров в перелете. Для срабатывания правила в перелете обязательно должны присутствовать все перечисленные типы. |
пустое = любые |
INF |
маска перелета |
Формализованное описание полета в текстовом формате, для создания сложных правил |
|
| |
приоритет | priority | Если срабатывает несколько правил, то выбирается одно с наибольшим приоритетом. Если существует несколько правил с одинаковым приоритетом (или приоритет не указан) выбирается более новое правило (расположено ниже в импортируемой таблице) | целое число пустое = 0 |
1 2
|
код акции | Универсальный код промоакции. Создается в админ панели в разделе Программа лояльности ⇨ Промоакции и промокоды. | любой набор букв/цифр/символов | 12022014_Promo | |
utm source | utmSource | ID источника перехода, который отображается в поле «№» таблицы источников переходов в метрике. Допустимо вводить несколько источников. |
пустое = любые КОД,КОД... <>КОД,КОД...(кроме) |
123,456 <>123,456 |
комиссия авиакомпании | commission | Прибыль агента, получаемая от авиакомпании за проданные билеты. Обязательное для правильного заполнение поле, должно соответствовать указанному в контракте. Значение передается через ГДС при выписке. Может указываться в процентах от тарифа или в абсолютной стоимости (за каждого пассажира)
При определении валидирующего перевозчика, правила с указанной нулевой комиссией имеют больший приоритет перед правилами с пустой комиссией. |
"xxxКОД" (код валюты) или "XX%" |
100RUB 13% |
комиссия субагентам | agencyCommission | Часть прибыли от авиакомпании, которой агент готов поделится с субагентами. Указанное значение сразу действует как скидка только для субагентов, уменьшая стоимость авиабилетов. Можно указать идентификаторы отдельных субагентов. В случае, когда комиссия задана для всех субагентов, и задана комиссия для конкретного субагента X, то комиссия
субагента X = Комиссия субагента X + Комиссия установленная для всех субагентов.
|
см. описание |
100RUB 5%,(123:6%), (345:8%) |
посегментный расчет комиссии | modeForSegment | Признак применения комиссии или бонуса за каждый сегмент перелета. Например 100 руб. за каждый сегмент.
|
пустое = 0 |
0 |
бонус авиакомпании | bonus | Дополнительная прибыль агента, получаемая от авиакомпании, но не участвующая в запросах к GDS. Задается и вычисляется полностью аналогично комиссиям (при вычислении учитывается параметр "посегментный расчет комиссии"). Используется для расчета "прибыльности" авиаперелета, влияет на работу микшера и может повлиять на сбор при установке параметра "минимальная прибыль".
Из всех сработавших правил бонус будет учтен только из одного по следующему приоритету:
|
"xxxКОД" (код валюты) или "XX%" |
100RUB 13% |
бонус за сегмент (допустимые авиакомпании) | modeForAirlines | Установка текущего параметра принудительно включает режим расчета бонуса за каждый сегмент перелёта (для абсолютно заданного бонуса), но в расчете учитываются только сегменты с валидирующим или с интерлайновыми перевозчиками из заданного здесь списка. |
пустое |
SU |
сбор агентства | charge | Здесь укываются все наценки/скидки, которые будут применены для описанного правилом перелета. В одном поле можно указать несколько ценовых правил, разделив их по типам пользователя. формат = (субъект:сумма),(субъект:сумма),(субъект:сумма)...
Если срабатывает несколько ценовых правил, перечисленных через запятую, берется их сумма. Если это не подходящее поведение, разделяйте ценовые правила в отдельные перелетные правила (строки), их можно регулировать приоритетом |
см. описание |
см. описание |
признак доп.сбора | chargeExt |
Настройка позволяет изменять процедуру расчета сбора, добавляя к итоговому результату дополнительные расчетные правила.
|
пустое = 0 |
0 |
минимальная прибыль | minProfit | Минимальная прибыль, которую агентство получит за заказ. Если рассчитанная прибыль агентства меньше минимальной, то сбор будет увеличен до необходимого значения.
Формат аналогичен формату сбора агентства. Для расчетов будет применено значение из правила, по которому будет определена комиссия авиакомпании. Если требуется изменить это поведение, следует установить параметр "приоритет мин. прибыли" (см. ниже) |
см. описание | 50RUB*LEG*PAS |
приоритет мин. прибыли | minProfitPriority | Дополнительный параметр, отвечающий за расчет минимальной прибыли. Сработает правило с наибольшим приоритетом, если приоритет совпадает, то будет использовано правило, которое находится ниже | Положительные числовые значения. | 1, 2, ... |
округление | chargeRounding | Порядок арифметического округления сбора | пустое = 0, 0 = до целого значения, 0.1 = до десятых, 0.01 = до сотых |
0.1 0.01 |
Ценообразование. Импорт правил. Дополнительные параметры для Немо платформы