Открыть главное меню

Изменения

Интеграция со сторонними системами АПИ

44 369 байт убрано, 18:34, 13 мая 2015
Выгрузка информации о заказах
==Выгрузка информации о заказах ==
'''Выгрузка заказов''' — это экспорт данных заказа или заказов для различных компонентов системы Nemo.=== Процесс выгрузки ===Схематично процесс выгрузки заказов представлен на блок-схемеМодуль позволяет внешней системе получать данные по заказам для дальнейшей обработки[[Файл:Export.png]]=== Статусы Подробнее о процессе выгрузки заказа ===Коды статусов выгрузки заказа соответствуют кодам состояния HTTP. Фактически указывается последний полученный код состояния HTTP, полученный при выгрузке данных по адресу, указанному в настройках выгрузки. Коды относятся к серверу, на который происходит выгрузка заказов. {| style="width: 800px" class="wikitable"|-! scope="col" width="20" | Код! scope="col" width="300" | Описание|-| 0| Неизвестный ответ. Адрес для форматах выгрузки не доступен.|-| 200| OK — успешный запрос.|-| 301| Запрошенный документ был окончательно перенесен на новый URI, указанный в поле Location заголовка.|-| 403| Сервер понял запрос, но он отказывается его выполнять из-за ограничений в доступе для клиента к указанному ресурсу.|-| 404| Сервер понял запрос, но не нашёл соответствующего ресурса по указанному URI.|-| 422| Unprocessable Entity — сервер успешно принял запрос, может работать с указанным видом данных, в теле запроса XML-документ имеет верный синтаксис, но имеется какая-то логическая ошибка, из-за которой невозможно произвести операцию над ресурсом.|-| 500| Любая внутренняя ошибка сервера.|} === Выгрузка заказа для компонента «Авиабилеты»===Для компонента '''«Авиабилеты»''' доступна выгрузка заказов в форматах Nemo и/или Софи (при включенном модуле '''«Выгрузка заказов Софи»). <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">==== Формат Nemo ====<div class="mw-collapsible-content"><syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"><?xml version="1.0" encoding="UTF-8"?><PNR> <Common> <id>277749</id> <Type>FLIGHTS</Type> <Service>SABRE</Service> <Locator>SQLJNK</Locator> <ExternalId>1234567</ExternalId> <!-- Внешний идентификатор --> <Stamp>123456789</Stamp> <UtmSource>100</UtmSource> <!-- Источник перехода --> <BeginDateTime>2014.12.18-10:45</BeginDateTime> <EndDateTime>2014.12.25-16:40</EndDateTime> <TicketingDateTime>2014.12.09-15:02</TicketingDateTime> <VoidDateTime/> <TotalPrice> <Amount>10773.8</Amount> <CurrencyCode>RUB</CurrencyCode> </TotalPrice> <UserId>2964</UserId> <EEUserId/> <UserLogin>userLogin</UserLogin> <GroupId>2963</GroupId> <CompanyId>2963</CompanyId> <UserStatus>Менеджер</UserStatus> <DateCreate>2014.12.09-14:59</DateCreate> <ExtServices> <!-- Дополнительные услуги --> <ExtService> <Type>AeroExpress</Type> <Price> <Amount>1440</Amount> <CurrencyCode>RUB</CurrencyCode> </Price> </ExtService> <ExtService> <Type>AlphaInsurance</Type> <Price> <Amount>480</Amount> <CurrencyCode>RUB</CurrencyCode> </Price> <Insurances> <Insurance> <Number>Z694.198TEST.2765282</Number> <Fio>IVANOV IVAN</Fio> </Insurance> <Insurance> <Number>Z694.198TEST.2765283</Number> <Fio>PETROV PETR</Fio> </Insurance> </Insurances> </ExtService> </ExtServices> </Common> <Payment> <Title>Testpay</Title> <Method>Testpay</Method> <BillingId>117607091</BillingId> <Date>2014-12-09 15:00:39</Date> <CreateDate>2014-12-09 15:00:34</CreateDate> <Status>ticket</Status> <PenaltyDate/> <Timelimit>2014-12-10 14:59:55</Timelimit> <PaymentCharge> <!-- Сбор платежного шлюза --> <Amount>313.8</Amount> <CurrencyCode>RUB</CurrencyCode> </PaymentCharge> <Charge> <!-- Общий сбор минус сбор платежного шлюза --> <Amount>1920</Amount> <CurrencyCode>RUB</CurrencyCode> </Charge> <BaseFare> <!-- Тариф --> <Amount>1600</Amount> <CurrencyCode>RUB</CurrencyCode> </BaseFare> <Book> <!-- Тариф плюс таксы --> <Amount>8540</Amount> <CurrencyCode>RUB</CurrencyCode> </Book> <Penalty> <Amount>0</Amount> <CurrencyCode>RUB</CurrencyCode> </Penalty> <Total> <Amount>10773.8</Amount> <CurrencyCode>RUB</CurrencyCode> </Total> <Commission> <Amount>0</Amount> <CurrencyCode>RUB</CurrencyCode> </Commission> <PaidValue> <Amount>10773.8</Amount> <CurrencyCode>RUB</CurrencyCode> </PaidValue> </Payment> <Client> <LastName/> <Name>SIDOROV PETR</Name> <MiddleName/> <Number/> <Birth/> <Email>mail@host.com</Email> <Phone>+74950000000</Phone> </Client> <PassengersCount>2</PassengersCount> <Passengers> <Passenger> <passenger_type>ADT</passenger_type> <lastname>IVANOV</lastname> <name>IVAN</name> <gender>F</gender> <date_of_birth>12.12.1987</date_of_birth> <doc_type>C</doc_type> <passport_number>1234567890</passport_number> <currency_of_passport>24.03.2023</currency_of_passport> <middlename/> <passenger_id>37667</passenger_id> <nationality>RU</nationality> <email>mail@host.com</email> <Tickets> <Active>0</Active> <Seg/> <Num>5553984070962</Num> <Date>2014-12-09 16:01:00</Date> </Tickets> <Tickets> <Active>1</Active> <Seg/> <Num>5553984070964</Num> <Date>2014-12-09 16:03:00</Date> </Tickets> <PriceInfo> <BaseFare> <Amount>800</Amount> <CurrencyCode>RUB</CurrencyCode> </BaseFare> <TotalFare> <Amount>4270</Amount> <CurrencyCode>RUB</CurrencyCode> </TotalFare> <Commission> <Amount>0</Amount> <CurrencyCode>RUB</CurrencyCode> </Commission> <AirlineCommission> <Amount>0</Amount> <CurrencyCode>RUB</CurrencyCode> </AirlineCommission> </PriceInfo> </Passenger> <Passenger> <passenger_type>ADT</passenger_type> <doc_type>C</doc_type> <middlename/> <passenger_id>37668</passenger_id> <lastname>PETROV</lastname> <name>PETR</name> <gender>M</gender> <date_of_birth>20.12.1984</date_of_birth> <passport_number>1234567899</passport_number> <currency_of_passport>20.12.2029</currency_of_passport> <nationality>RU</nationality> <email>mail@host.com</email> <Tickets> <Active>0</Active> <Seg/> <Num>5553984070963</Num> <Date>2014-12-09 16:01:00</Date> </Tickets> <Tickets> <Active>1</Active> <Seg/> <Num>5553984070965</Num> <Date>2014-12-09 16:03:00</Date> </Tickets> <PriceInfo> <BaseFare> <Amount>800</Amount> <CurrencyCode>RUB</CurrencyCode> </BaseFare> <TotalFare> <Amount>4270</Amount> <CurrencyCode>RUB</CurrencyCode> </TotalFare> <Commission> <Amount>0</Amount> <CurrencyCode>RUB</CurrencyCode> </Commission> <AirlineCommission> <Amount>0</Amount> <CurrencyCode>RUB</CurrencyCode> </AirlineCommission> </PriceInfo> </Passenger> </Passengers> <FlightType>Внутренний</FlightType> <OrderInfo> <Info> <Company>Аэрофлот - Российские авиалинии</Company> <CompanyCode>SU</CompanyCode> <OperatingCompanyCode>FV</OperatingCompanyCode> <StartDate>2014.12.18</StartDate> <StartTime>10:45</StartTime> <StartDayOfWeek>Thursday</StartDayOfWeek> <FlightNumber>6128 (FV6128)</FlightNumber> <StartAirportCode>VKO</StartAirportCode> <StartAirportName>Внуково, Москва</StartAirportName> <StartCountry>Россия</StartCountry> <StartCountryCode>RU</StartCountryCode> <EndAirportCode>LED</EndAirportCode> <EndAirportName>Санкт-Петербург, Пулково</EndAirportName> <EndCountry>Россия</EndCountry> <EndCountryCode>RU</EndCountryCode> <Time>1:30</Time> <Equip> <Name>Airbus 319</Name> <Type>319</Type> </Equip> <ClassType>economy</ClassType> <ClassTypeCode>R</ClassTypeCode> <Meal/> </Info> <Info> <Company>Аэрофлот - Российские авиалинии</Company> <CompanyCode>SU</CompanyCode> <OperatingCompanyCode>FV</OperatingCompanyCode> <StartDate>2014.12.25</StartDate> <StartTime>15:10</StartTime> <StartDayOfWeek>Thursday</StartDayOfWeek> <FlightNumber>6153 (FV6153)</FlightNumber> <StartAirportCode>LED</StartAirportCode> <StartAirportName>Санкт-Петербург, Пулково</StartAirportName> <StartCountry>Россия</StartCountry> <StartCountryCode>RU</StartCountryCode> <EndAirportCode>VKO</EndAirportCode> <EndAirportName>Внуково, Москва</EndAirportName> <EndCountry>Россия</EndCountry> <EndCountryCode>RU</EndCountryCode> <Time>1:30</Time> <Equip> <Name>Airbus 319</Name> <Type>319</Type> </Equip> <ClassType>economy</ClassType> <ClassTypeCode>R</ClassTypeCode> <Meal/> </Info> </OrderInfo> <Remarks>Debit</Remarks></PNR></syntaxhighlight> Ремарка ''<Remarks>Debit</Remarks>'' является не обязательной, означает что заказ был оплачен с помощью способа оплаты «Депозит»;если же заказ был оплачен с использованием депозитного кредита, и депозит ушел в минус даже на 1 руб., то будет ''<Remarks>Credit</Remarks>''. Элемент ''<TotalFare>'' возвращает стоимость уже оплаченного заказа. Если же заказ забронирован, но не оплачен, то значение будет 0 RUB. Элемент ''<CreateDate>'' в зависимости от состояния брони возвращает время окончания бронирования, если бронирование было завершено, иначе возвращает время создания брони. Формат поддерживает возможность передачи нескольких номеров электронных билетов на одного пассажира (в том числе войдированных и аннулированных).</div></div> <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> ==== Формат Софи ====<div class="mw-collapsible-content"><syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> <?xml version="1.0" encoding="UTF-8"?><order_snapshot xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <header currency="RUB" time_gmt="2015-01-13 08:10:54" time="2015-01-13 12:10:54" ord_id="279307" corp_ord_id="MKQFBZ" site="2806"/> <customer email="cepogilixe@lackmail.net" phone="XXXX9048" name="" corp_code="2806"/> <products> <product> <!--@stamp - валидатор. Парсится из заказа(Сирена и Галилео). Если получить из ГДС не удалось, то передаётся валидатор, настроенный в реквизитах подключения к ГДС.--> <air_ticket_prod prod_id="0" psg_type="A" title="Москва - Ленинград" taxes="1776" fare="400" origin="MOW" service_fee="100" form_owner="SU" validating_carrier="SU" destination="LED" comission="0.4" stamp="92354802"> <air_seg segment_id="0" carrier="SU" flight_number="6128" op_carrier="FV" departure_datetime="2015-01-16 10:45:00" arrival_datetime="2015-01-16 12:15:00" departure_airport="VKO" arrival_airport="LED" fare_basis="RPROWRF"/> </air_ticket_prod> </product> <product> <ral_ticket_prod rsrv_id="2496500" prod_id="200" origin="Киевский вокзал" destination="Внуково, Москва" departure_datetime="2015-01-16 06:45:00" cartype="standart" fare="360"/> </product> <product> <service_prod prod_id="300" provider_type="INSURANCE" provider_id="AlphaInsurance" offer_type="alpha_insurance" ext_id="Z694.198TEST.2774397" price="100" count="1" psgr_id="0"/> </product> <product> <payment_prod price="123"/> </product> </products> <reservations> <reservation rsrv_id="279307" crs="SABRE" rloc="MKQFBZ"/> <reservation rsrv_id="2496500" crs="AeroExpress" rloc="218812"/> </reservations> <passengers> <passenger doc_number="1234567890" psgr_id="0" doc_country="RU" psgr_type="A" doc_type="C" birth_date="1990-01-04" name="IVAN" gender="M" first_name="IVANOV"/> </passengers> <travel_docs> <travel_doc> <air_ticket_doc tkt_oper="TKT" tkt_number="5555871998698" tkt_date="2015-01-13 12:10:50" prod_id="0" psgr_id="0" issuingAgent="2807"/> </travel_doc> <travel_doc> <aex_doc rsrv_id="2496500" prod_id="200" psgr_id="0" tkt_oper="TKT" tkt_date="2015-01-13 12:10:54" tkt_number="394612"/> </travel_doc> <travel_doc> <insur_doc main_prod_id="0" prod_id="300" psgr_id="0" tkt_oper="TKT" tkt_date="2015-01-13 12:10:54" tkt_number="Z694.198TEST.2774397"/> </travel_doc> </travel_docs> <payments> <payment pay_id="117607839" pay_oper="PAY" pay_time="2015-01-13 12:09:52" psp_code="024" psp_name="Rapida" psp_pay_id="" pay_system="ES" amount="2859" fop="CA"/> </payments></order_snapshot></syntaxhighlight> *service_fee — сбор агентский (только сервисный сбор, '''не включает''' в себя сбор за эквайринг).*comission - комиссия АК*stamp - код Валидатора в ПСС, берется из настроек Немо, если в настройках он не указан, то не передается.*ord_id — идентификатор заказа в НЕМО*corp_ord_id — PNR из ГДС*site — идентификатор агентства в Немо*payment pay_id — номер биллинга Немо.*pay_system — код платежной системы**SB — для сбербанка**ES — для Рапиды**UNT — для Юнителлера*cardholder — держатель карты.*expire_date — срок действия карты, у тех ПШ, что не приходит в ответе — пустой.*card_number — номер карты, в формате: 415481XXXXXX1734*approval_code — код подтверждения.*payment_prod price — сбор за эквайринг.*main_prod_id - ID основного продукта (авиабилета).*tkt_number - номер полиса для пассажира;*tkt_date - дата и время операции; *tkt_oper - тип операции (TKT/REF).*provider_type - тип поставщика (INSURANCE).*provider_id - AlphaInsurance;*offer_type - название полиса;*price - цена полиса для пассажира;*rloc - номер заказа у поставщика. </div></div> === Выгрузка заказа для компонента «Отели» ===Для компонента '''«Отели»''' доступна выгрузка заказов в формате Nemo.  <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">==== Формат Nemo ====<div class="mw-collapsible-content"><syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"><?xml version="1.0" encoding="UTF-8"?><PNR> <Common> <id>263462</id> <Type>HOTELS</Type> <Service>ACADEM</Service> <Locator>3028655</Locator> <BeginDateTime>2014.04.15-00:00</BeginDateTime> <EndDateTime>2014.04.16-00:00</EndDateTime> <TotalPrice> <Amount>1950</Amount> <CurrencyCode>RUB</CurrencyCode> </TotalPrice> <UserId>123</UserId> <EEUserId /> <UserLogin>userLogin</UserLogin> <GroupId>332</GroupId> <UserStatus>Менеджер</UserStatus> <DateCreate>2014.03.21-16:11</DateCreate> </Common> <Payment> <Status>booked</Status> <PenaltyDate>2014.04.13-00:00</PenaltyDate> <Timelimit>2014-04-13 00:00:00</Timelimit> <Charge> <Amount>0</Amount> <CurrencyCode>RUB</CurrencyCode> </Charge> <Book> <Amount>1950</Amount> <CurrencyCode>RUB</CurrencyCode> </Book> <Penalty> <Amount>0</Amount> <CurrencyCode>RUB</CurrencyCode> </Penalty> <Total> <Amount>1950</Amount> <CurrencyCode>RUB</CurrencyCode> </Total> <Commission> <Amount>112</Amount> <CurrencyCode>RUB</CurrencyCode> </Commission> <PaidValue> <Amount>0</Amount> <CurrencyCode>RUB</CurrencyCode> </PaidValue> </Payment> <Client> <LastName>Сидоров</LastName> <Name>Владимир</Name> <MiddleName>Константинович</MiddleName> <Number>1806326598</Number> <Birth>1987-05-20</Birth> <Email>mail@host.com</Email> <Phone>+79871234567</Phone> </Client> <Passengers> <Passenger> <nationality>RU</nationality> <lastname>IVANOV</lastname> <name>IVAN</name> </Passenger> </Passengers> <Info> <Name>Интурист</Name> <City> <Code>34</Code> <Name>Великий Новгород</Name> </City> <Location /> <StarRating>3</StarRating> <Days>2</Days> <Nights>1</Nights> <CheckInDate>2014.04.15</CheckInDate> <CheckOutDate>2014.04.16</CheckOutDate> <CheckInTime>14:00</CheckInTime> <CheckOutTime>12:00</CheckOutTime> <OnRequest>false</OnRequest> </Info> <Rooms> <Room> <Name>Двухместный стандарт (две кровати)</Name> <Type>SNGL</Type> <FareId>1</FareId> </Room> </Rooms> <Fares> <Fare> <Id>1</Id> <Price> <Amount>1950</Amount> <CurrencyCode>RUB</CurrencyCode> </Price> <Meals>Завтрак "Шведский стол",Отсутствует</Meals> <Description>Одноместный</Description> </Fare> </Fares> <CancelCharges> <Charge> <DateFrom>2014.04.13-00:00</DateFrom> <DateTo>2014.04.15-00:00</DateTo> <Amount>1488</Amount> <CurrencyCode>RUB</CurrencyCode> </Charge> </CancelCharges> <ModifyCharges /> <ModificationMethods> <Method>MOD_PASS_NAMES</Method> <Method>MOD_DATES</Method> </ModificationMethods></PNR></syntaxhighlight></div></div> === Выгрузка заказа для компонента «ЖД» ===Для компонента '''«ЖД»''' доступна выгрузка заказов в формате Nemo.  <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">==== Формат Nemo ====<div class="mw-collapsible-content"><syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"><?xml version="1.0" encoding="UTF-8"?><PNR> <Common> <id>123456</id> <Type>TRAINS</Type> <Service>UFS</Service> <Locator>64345987</Locator> <BeginDateTime>2014.04.26-00:15</BeginDateTime> <EndDateTime>2014.04.26-13:33</EndDateTime> <TicketingDateTime>2014.06.06-15:10</TicketingDateTime> <VoidDateTime>2014.06.07-14:19</VoidDateTime> <TotalPrice> <Amount>57505.8</Amount> <CurrencyCode>RUB</CurrencyCode> </TotalPrice> <UserId>123</UserId> <EEUserId /> <UserLogin>mikhalevtur</UserLogin> <GroupId>122</GroupId> <UserStatus>Менеджер</UserStatus> <DateCreate>2014.04.24-15:03</DateCreate> </Common> <Payment> <Title>Testpay</Title> <Method>Testpay</Method> <BillingId>117603370</BillingId> <Date>2014-04-24 15:10:12</Date> <CreateDate>2014-06-06 15:10:00</CreateDate> <Status>cancelled</Status> <PenaltyDate /> <Timelimit>2014-04-24 15:18:01</Timelimit> <Charge> <Amount>52278</Amount> <CurrencyCode>RUB</CurrencyCode> </Charge> <Book> <Amount>5227.8</Amount> <CurrencyCode>RUB</CurrencyCode> </Book> <Penalty> <Amount>0</Amount> <CurrencyCode>RUB</CurrencyCode> </Penalty> <TotalAgencyChargeForRefund> <Amount>100</Amount> <CurrencyCode>RUB</CurrencyCode> </TotalAgencyChargeForRefund> <Total> <Amount>57505.8</Amount> <CurrencyCode>RUB</CurrencyCode> </Total> <PaidValue> <Amount>0</Amount> <CurrencyCode>RUB</CurrencyCode> </PaidValue> </Payment> <Client> <LastName>Сидоров</LastName> <Name>Владимир</Name> <MiddleName>Константинович</MiddleName> <Number>1806326598</Number> <Birth>1987-05-20</Birth> <Email>mail@host.com</Email> <Phone>+79871234567</Phone> </Client> <Passengers> <Passenger> <name>Владимир</name> <middlename>Константинович</middlename> <phone> <country /> <city /> <number>+79271031610</number> <expansion /> </phone> <email>mlsdsar@gmail.com</email> <nationality>RU</nationality> <passenger_type>ADT</passenger_type> <lastname>Сидоров</lastname> <doc_type>C</doc_type> <passport_number>1806326598</passport_number> <passenger_id>1</passenger_id> <gender>M</gender> <date_of_birth>20.04.1984</date_of_birth> <TotalPrice>28752.9</TotalPrice> <FarePrice>2613.9</FarePrice> <Charge>26139</Charge> <RefundMoney>8649.3</RefundMoney> <ChargeForRefund>100</ChargeForRefund> <TicketNumber>74944708487545</TicketNumber> <SeatNumber>033</SeatNumber> <HasSeat>true</HasSeat> </Passenger> <Passenger> <nationality>RU</nationality> <middlename>Константинович</middlename> <passenger_type>ADT</passenger_type> <lastname>Сидоров</lastname> <name>Иван</name> <doc_type>C</doc_type> <passport_number>1806326554</passport_number> <passenger_id>2</passenger_id> <gender>M</gender> <date_of_birth>05.04.1984</date_of_birth> <TotalPrice>28752.9</TotalPrice> <FarePrice>2613.9</FarePrice> <Charge>26139</Charge> <TicketNumber /> <SeatNumber>034</SeatNumber> <HasSeat>true</HasSeat> </Passenger> </Passengers> <Info> <trainNumber>098ХА</trainNumber> <trainName /> <departureStation>МОСКВА КАЗ</departureStation> <arrivalStation>КАЗАНЬ ПАС</arrivalStation> <trainCategory>1</trainCategory> <beginStation>Москва</beginStation> <endStation>Казань</endStation> <startDate>2014-04-26 00:15:00</startDate> <endDate>2014-04-26 13:33:00</endDate> <timeInRoad>47880</timeInRoad> <carNumber>8</carNumber> <carType>4</carType> <choosenSeats> <type> <lower>1</lower> </type> <type> <upper>1</upper> </type> <type> <lower_side>0</lower_side> </type> <type> <upper_side>0</upper_side> </type> <type> <undefined>0</undefined> </type> </choosenSeats> <choosenRange> <start>0</start> <end>0</end> </choosenRange> <serviceClass>В стоимость входит - постельное белье. Наличие установки кондиционирования воздуха не гарантировано.</serviceClass> </Info></PNR></syntaxhighlight> '''Элемент PNR'''Элемент '''PNR''' — Passenger Name Record — запись, состоящая из группы отдельных элементов (полей), содержащих информацию об одном или более пассажирах, путешествующих вместе, и деталях путешествия.{| style="width: 800px" class="wikitable"|-! scope="col" width="200" | Элемент! scope="col" width="300" | Описание! scope="col" width="300" | Допустимые значения|-| Common| Общая информация по заказу.| Элементы id, Type, Service, Locator, BeginDateTime, EndDateTime, TicketingDateTime, TotalPrice, UserId, EEUserId, UserLogin, GroupId, UserStatus, DateCreate.|-| Payment| Информация о стоимости, штрафах, статусе заказа.| Элементы Status, PenaltyDate, Timelimit, Charge, Book, Penalty, Total, PaidValue.|-| Client| Информация о заказчике.| Элементы Name, MiddleName, Number, Birth, Email, Phone.|-| Passengers| Записи о пассажирах.| Элементы Passenger.|-| Info| Типовая информация по заказу в контексте услуги.| Элементы trainNumber, trainName, departureStation, arrivalStation, trainCategory, beginStation, endStation, startDate, endDate, timeInRoad, carNumber, carType, choosenSeats, choosenRange, serviceClass.|} '''Элемент Common'''{| style="width: 800px" class="wikitable"|-! scope="col" width="200" | Элемент! scope="col" width="300" | Описание! scope="col" width="300" | Допустимые значения|-| id| Номер заказа в Немо.| Число. Пример: 268281.|-| Type| Тип услуги.| Строка: Пример: FLIGHTS.<br/>Допустимые значения: <ul><li>FLIGHTS — авиа,</li><li>HOTELS — отели,</li><li>TRAINS — ЖД.</li></ul>|-| Service| Поставщик услуги.| Строка. Пример: UFS.|-| Locator| Идентификатор в системе поставщика.| Число. Пример: 65525140.|-| BeginDateTime| Дата и время отправления первого сегмента.| Дата и время. Пример: 2014.03.06-00:15.|-| EndDateTime| Дата и время прибытия последнего сегмента.| Дата и время. Пример: 2014.03.06-13:33.|-| TicketingDateTime| Дата и время выписки билета.| Дата и время. Пример: 2014.10.17-17:23|-| VoidDateTime| Дата и время возврата билета.| Дата и время. Пример: 2014.10.17-17:23|-| TotalPrice| Общая стоимость заказа.| Элементы Amount — номинал стоимости, CurrencyCode — валюта стоимости.|-| UserId| Идентификатор пользователя в системе Немо, оформившего заказ.| Число. Пример: 123.|-| UserLogin| Логин пользователя в системе Немо, оформившего заказ.| Строка. Пример: userLogin.|-| GroupId| Идентификатор группы пользователя в системе Немо, оформившего заказ.| Число. Пример: 122.|-| UserStatus| Тип пользователя в системе Немо.| Строка. Пример: Менеджер.|-| DateCreate| Дата и время резервирования в системе поставщика.| Дата и время. Пример: 2014.03.05-15:08|} '''Элемент TotalPrice'''{| style="width: 800px" class="wikitable"|-! scope="col" width="200" | Элемент! scope="col" width="300" | Описание! scope="col" width="300" | Допустимые значения|-| Amount| Номинал.| Число. Пример: 1884.|-| CurrencyCode| Валюта.| Строка (Код ISO 4217 alfa-3). Пример: RUB.|} '''Элемент Payment'''{| style="width: 800px" class="wikitable"|-! scope="col" width="200" | Элемент! scope="col" width="300" | Описание! scope="col" width="300" | Допустимые значения|-| Title| Название платежного шлюза<sup>*</sup>.| Строка. Пример: Testpay.|-| Method| Тип формы оплаты<sup>*</sup>.| Строка. Пример: Testpay.|-| BillingId| Идентификатор транзакции Немо.| Строка. Пример: 117603370.|-| Date| Дата и время оплаты платежной транзакции Немо.| Строка. Пример: 2014-04-24 15:10:12.|-| CreateDate| Дата и время создания платежной транзакции Немо.| Строка. Пример: 2014-06-06 15:10:00.|-| Status| Статус заказа в системе Немо.| Строка. Пример: booked.<br/>Допустимые значения: <ul><li>pending — в ожидании,</li><li>booked — зарезервирован,</li><li>ticket — выписан,</li><li>cancelled — отменен.</li></ul>|-| PenaltyDate| Дата и время наступления штрафных санкций.| Дата и время. Пример: 2014-03-05 15:23:40.|-| Timelimit| Таймлимит на оплату и подтверждение заказа.| Дата и время. Пример: 2014-03-05 15:23:40.|-| Charge| Сбор агентства.| См. элемент Common.TotalPrice.|-| Book| Тариф.| См. элемент Common.TotalPrice.|-| Penalty| Штраф. <br/><span style="background-color:#fff0f5;">'''<span style="color:#ff0000;">Внимание!</span>''' На данный момент параметр неактуален и при выгрузке всегда принимает нулевое значение.</span>| См. элемент Common.TotalPrice.|-| TotalAgencyChargeForRefund| Общий сбор агентства за возврат.| См. элемент Common.TotalPrice.|-| Total| Общая стоимость.| См. элемент Common.TotalPrice.|-| PaidValue| Оплачено.| См. элемент Common.TotalPrice.|} <sup>*</sup> — список возможный платежных шлюзов:<br/>Acquiro, Chronopay, Copayco, CourierNew, Deposit, EasyPay, GatelineNew, ITransfer, Invoice, Offices, PayU, Payture, Platron, PrivatBank, Qiwi, Rapida, Receipt, Sberbank, Sirena, Sirena2, UnitellerNew, WebMoney. '''Элемент Client'''{| style="width: 800px" class="wikitable"|-! scope="col" width="200" | Элемент! scope="col" width="300" | Описание! scope="col" width="300" | Допустимые значения|-| Name| Фамилия и имя заказчика.| Строка. Пример: Иванов Иван.|-| MiddleName| Отчество заказчика.| Строка. Пример: Иванович.|-| Number| Серия и номер документа.| Строка. Пример: 1806123456.|-| Birth| Дата рождения заказчика.| Дата. Пример: 1984-06-30.|-| Email| Адрес электронной почты заказчика.| Строка. Пример: client@host.com.|-| Phone| Номер телефона заказчика.| Строка. Пример: +74951234567|} '''Элемент Passenger'''{| style="width: 800px" class="wikitable"|-! scope="col" width="200" | Элемент! scope="col" width="300" | Описание! scope="col" width="300" | Допустимые значения|-| lastname| Фамилия пассажира.| Строка. Пример: Сидоров.|-| name| Имя пассажира.| Строка. Пример: Владимир.|-| middlename| Отчество пассажира.| Строка. Пример: Константинович.|-| doc_type| Тип документа.| Строка. Пример: C.<br/>Допустимые значения:<ul><li>C — Российский паспорт</li><li>P — Заграничный паспорт</li><li>A — Иностранный документ</li><li>S — Паспорт моряка</li><li>M — Военный билет</li><li>B — Свидетельство о рождении</li></ul>|-| passport_number| Серия и номер документа.| Строка. Пример: 1806123456. |-| gender| Пол пассажира.| Строка. Пример: M.<br/>Допустимые значения:<ul><li>M — мужской</li><li>F — женский</li></ul>|-| date_of_birth| Дата рождения пассажира.| Дата. Пример: 20.05.1987.|-| nationality| Гражданство пассажира.| Строка (ISO 3166-1 Alpha-2). Пример: RU.|-| passenger_type| Тип пассажира.| Строка. Пример: ADT.<br/>Допустимые значения:<ul><li>ADT — взрослый</li><li>CLD — ребенок до 10 лет<sup>*, **</sup></li><li>INF — ребенок до 5 лет<sup>*, ***</sup></li></ul>|-| passenger_id| Порядковый номер пассажира в заказе.| Число. Пример: 2.|-| TotalPrice| Общая стоимость билета со сборами для данного пассажира.| Число. Пример: 1934.|-| FarePrice| Стоимость по тарифу тарифу.| Число. Пример: 1884.|-| Charge| Сбор агентства.| Число. Пример: 50.|-| RefundMoney| Сумма к возврату. Значение, полученное от поставщика, уменьшенное на сумму сбора агентства за возврат.| Число. Пример: 1643.|-| ChargeForRefund| Cбор агентства за возврат.| Число. Пример: 100.|-| TicketNumber| Номер билета.| Число. Пример: 73944708472624.|-| SeatNumber| Номер места.| число. Пример: 21.|-| TariffType| Наименование тарифа.| Строка. Пример: ПОЛНЫЙ.|-| HasSeat| Занимает ли пассажир отдельное место.| Допустимые значения:<ul><li>true — с местом,</li><li>false — без места.</li></ul>|} <sup>*</sup> — Не включая верхний предел. Возраст ребенка определяется на день совершения поездки. <sup>**</sup> — Нижний и верхний пределы определяются видом сообщения:* от 5 до 10 лет — Внутригосударственное сообщение, а также международное сообщение со странами-участниками СНГ, Литовской, Латвийской, Эстонской Республиками, Республикой Абхазия.* от 6 до 17 лет — Международное сообщение в дальнем зарубежье по глобальным ценам. Направление Россия-Финляндия.* от 4 до 12 лет — Международное сообщение в дальнем зарубежье по глобальным ценам. Направление Восток-Запад. <sup>***</sup> — Верхний предел определяется видом сообщения:* до 5 лет — Внутригосударственное сообщение, а также международное сообщение со странами-участниками СНГ, Литовской, Латвийской, Эстонской Республиками, Республикой Абхазия.* до 6 лет — Международное сообщение в дальнем зарубежье по глобальным ценам. Направление Россия-Финляндия.* до 4 лет — Международное сообщение в дальнем зарубежье по глобальным ценам. Направление Восток-Запад. '''Элемент Passenger'''{| style="width: 800px" class="wikitable"|-! scope="col" width="200" | Элемент! scope="col" width="300" | Описание! scope="col" width="300" | Допустимые значения|-| trainNumber| Номер поезда.| Строка. Пример: 098ХА.|-| trainName| Имя фирменного поезда. Приходит от поставщика.| Строка. Пример: Россия.|-| departureStation| Станция отправления пассажира.| Строка. Пример: МОСКВА КАЗ.|-| arrivalStation| Станция прибытия пассажира.| Строка. Пример: КАЗАНЬ ПАС.|-| trainCategory| Тип поезда.| Число. Пример: 1.<br/>Допустимые значения:<ul><li>0 — неизвестный тип поезда</li><li>1 — скорый поезд</li><li>2 — фирменный поезд</li><li>3 — скоростной поезд</li><li>4 — фирменный скоростной поезд</li></ul>|-| beginStation| Начальная станция в маршруте поезда.| Строка. Пример: Казань|-| endStation| Конечная станция в маршруте поезда.| Строка. Пример: Москва|-| startDate| Дата и время отправления со станции отправления пассажира.| Дата и время. Пример: 2014-03-06 00:15:00.|-| endDate| Дата и время прибытия со станции отправления пассажира.| Дата и время. Пример: 2014-03-06 13:33:00. |-| timeInRoad| Время в пути от станции отправления до станции прибытия пассажира.| Число (секунд). Пример: 47880.|-| carNumber| Номер вагона.| Число. Пример: 7.|-| carType| Тип вагона.| Число. Пример: 1.<br/>Допустимые значения:<ul><li>1 - общий вагон</li><li>2 - сидячий вагон</li><li>3 - плацкарта</li><li>4 - купе</li><li>5 - люкс</li><li>6 - мягкий</li><li>7 - неизвестный тип</li></ul>|-| choosenSeats| Элемент описывает количество нижних, нижних боковых, верхних, верхних боковых мест.| Элементы type.|-| choosenRange| Выбранный диапазон мест в вагоне.| Элементы start, end.|-| serviceClass| Описание услуг. Приходит от поставщика.| Текст. Пример: В стоимость входит - постельное белье. Наличие установки кондиционирования воздуха не гарантировано.|} '''Элемент type'''{| style="width: 800px" class="wikitable"|-! scope="col" width="200" | Элемент! scope="col" width="300" | Описание! scope="col" width="300" | Допустимые значения|-| lower| Количество нижних мест.| Число. Пример: 1.|-| upper| Количество верхних мест.| Число. Пример: 0.|-| lower_side| Количество нижних боковых мест.| Число. Пример: 1.|-| upper_side| Количество верхних боковых мест.| Число. Пример: 1.|-| undefined| Количество мест неопределенного типа.| Число. Пример: 0.|} '''Элемент choosenRange'''{| style="width: 800px" class="wikitable"|-! scope="col" width="200" | Элемент! scope="col" width="300" | Описание! scope="col" width="300" | Допустимые значения|-| start| Начало выбранного диапазон мест в вагоне<sup>*</sup>.| Число. Пример: 4.|-| end| Конец выбранного диапазон мест в вагоне<sup>*</sup>.| Число. Пример: 17.|} <sup>*</sup> — Если диапазон не был зада пользователем на этапе выбора мест, то поля start и end будут содержать нули. </div></div> === Пакетный экспорт заказов по категориям в формате Nemo ===Сервис выгрузки заказов позволяет экспортировать интересующие выборки по заказам в формате XML. Например, различных компонент можно выбрать все заказы по дате бронирования и получить информацию по ним прочитать в XML-виде. ==== Экспорт заказов под авторизованным пользователем (в личном кабинете) ====статье [[Файл:Экспортировать_в_XML_(ЛК).png|400px|thumb|right|Фильтры пакетного экспорта заказов в личном кабинетеВыгрузка]]Порядок пользования сервисом:# Перейти в личный кабинет# В адресной строке браузера к текущему адресу дописать параметр '''''&exportxml'''''. Должен получиться адрес вида: <syntaxhighlight lang="text" enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0; width: 800px;">http://DOMAIN/index.php?go=poffice/table&exportxml</syntaxhighlight># После обновления страницы под блоком фильтров должна появиться кнопка '''«Экспортировать в XML»'''. При ее нажатии на странице появляется предложение сохранить в XML-файл выборку отфильтрованных заказов. Выгружаются только заказы выбранного пользователя/компании с учетом примененных параметров фильтра. Пользователь может произвести выгрузку только своих заказов.
==Фиксация оплаты внешним запросом==
'