Выгружая заказ трансфера при помощи метода GetSimpleReserveByIdV2 мы получаем стандартный ответ, в котором можно обратить внимание на специфичные поля трансферов используя XPath:
.//OrderSpecificData/UniversalTransfersSelectedVariantContainer
<UniversalTransfersSelectedVariantContainer RequestId="6b084e65-6281-497a-a45a-aae4d495d6fe"> <TabletText>Путин</TabletText> <Comment>С любовью к себе и миру!</Comment> <DepartureVariant> <UniversalTransferVariant ProviderName="i'way" ProviderOfferId="2961599" Price="2848" ServiceFee="0" Currency="2961599" CarCapactity="3" PriceEquiv="2848" id_Agent="1" id_Agreement="41" id_Provider="1"> <AgentName>demo agency</AgentName> <ProviderLogo>iway</ProviderLogo> <CarImage><https://iwayex.com/images/cars/kaknoo5tp6.png</CarImage>> <CarDescription>Skoda Octavia, до 3 чел. в салоне.</CarDescription> <MetaDataContainer/> <PayedServices> <UniversalTransferVariantPayedService IsSelected="true"> <ProviderServiceId>9</ProviderServiceId> <Price>500</Price> <PriceEquiv>500</PriceEquiv> <Currency>RUB</Currency> <Text>Табличка</Text> <Description>table</Description> </UniversalTransferVariantPayedService> <UniversalTransferVariantPayedService IsSelected="false"> <ProviderServiceId>10</ProviderServiceId> <Price>250</Price> <PriceEquiv>250</PriceEquiv> <Currency>RUB</Currency> <Text>Детское кресло “от 0 до 1 года”</Text> <Description>infant_seat</Description> </UniversalTransferVariantPayedService> <UniversalTransferVariantPayedService IsSelected="false"> <ProviderServiceId>11</ProviderServiceId> <Price>200</Price> <PriceEquiv>200</PriceEquiv> <Currency>RUB</Currency> <Text>Детское кресло “от 1 до 3 лет”</Text> <Description>seat</Description> </UniversalTransferVariantPayedService> <UniversalTransferVariantPayedService IsSelected="false"> <ProviderServiceId>12</ProviderServiceId> <Price>150</Price> <PriceEquiv>150</PriceEquiv> <Currency>RUB</Currency> <Text>Детское кресло “от 3+ лет”</Text> <Description>booster</Description> </UniversalTransferVariantPayedService> </PayedServices> <IncludedServices> <UniversalTransferVariantService ServiceName="Встреча с табличкой" Value="Да"/> <UniversalTransferVariantService ServiceName="Бесплатное ожидание" Value="60"/> <UniversalTransferVariantService ServiceName="Дополнительный заезд (зависит от настроек заказчика)" Value="Да"/> </IncludedServices> <CarClass>2</CarClass> <UniversalTransferGeoPoint DisplayName="Внуково Международный Аэропорт, Внуково, Московская область, Россия" CountryCode="ru" Address="Внуково Международный Аэропорт, Внуково, Московская область, Россия" PlaceId="ChIJc_siRKhWtUYRhxc_ze0X1-s" IsRailwayStation="false" IsAirport="true" Latitude="0" Longitude="0"> <AllTerminals> <Terminal>A</Terminal> <Terminal>D</Terminal> </AllTerminals> <Time>10:40</Time> <TrainNumber/> <TrainCarNumber/> <FlightNumber>SU-123</FlightNumber> <FlightTerminalNumber>A</FlightTerminalNumber> </UniversalTransferGeoPoint> <UniversalTransferGeoPoint DisplayName="Ресторан на Шаболовке | ГастроПаб 31, улица Шаболовка, Москва, Россия" CountryCode="ru" Address="Ресторан на Шаболовке | ГастроПаб 31, улица Шаболовка, Москва, Россия" PlaceId="ChIJLSMUPGlLtUYRFwxLZRJTw90" IsRailwayStation="false" IsAirport="false" Latitude="0" Longitude="0"> <Time/> <TrainNumber/> <TrainCarNumber/> <FlightNumber/> <FlightTerminalNumber/> </UniversalTransferGeoPoint> </UniversalTransferVariant> </DepartureVariant> </UniversalTransfersSelectedVariantContainer>
Рассмотрим значимые поля:
ProviderName="i'way" - название постащика
ProviderOfferId="2961599" - это НЕ номер брони в системе поставщика, его можно найти в поле Locator контейнера верхнего уровня - Locator="261121714-1974148-IWAY"
Price="2848" - базовая цена услуги от поставщика
ServiceFee="0" - сервисный сбор агента
CarCapactity="3" - вместимость машины, количество пассажиров
id_Agreement="41" - идентификатор договора с клиентом(ORG_Agreement.id_Agreement)
id_Provider="1" - идентификатор поставщика
1 - i’way
PayedServices/UniversalTransferVariantPayedService - сервисы за доп плату, их цена НЕ включена в Price
IsSelected - выбрал ли пользователь этот сервис для включения в заказ
Price - цена платной услуги в рублях
Text - название услуги
Description - описание услуги
IncludedServices/UniversalTransferVariantService - бесплатные(включенные в стоимость) услуги
ServiceName - название услуги
Value - значение(смысл его не известен и берется as is из системы поставщика)
CarClass - класс машины
1 эконом
2 стандарт
3 комфорт
4 представительский
5 микроавтобус
6 минивэн
7 автобус
8 минивэн (V-класс)
11 внедорожник
12 бизнес
27 Tesla
28 комфорт (ПД) - платная дорога
29 стандарт (ПД)
30 бизнес (ПД)
UniversalTransferGeoPoint - первая точка подачи, вторая - пункт назначения
DisplayName="Внуково Международный Аэропорт, Внуково, Московская область, Россия" - понятное пользователю название точки
CountryCode="ru" - код страны alpha2
Address="Внуково Международный Аэропорт, Внуково, Московская область, Россия" - адрес, может совпадать с DisplayName
IsRailwayStation="false" - является ли точка жд станцией
IsAirport="true" - является ли она аэропортом
Time - время подачи/прибытия ЧЧ:мм
TrainNumber - номер поезда, заполняется только если IsRailwayStation == true
TrainCarNumber - номер вагона, заполняется только если IsRailwayStation == true
FlightNumber - номер рейса, например, SU-123, заполняется, только если IsAirport == true
FlightTerminalNumber - номер терминала