Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview

An example of end-to-end scenario based on operation flow and user story

Excerpt

Operation flow

searchFlightsJorney → book (Flight) → reprice without PNR → reprice with PNR → demandTickets (ETK)

User story

S7 Agent wants to buy round trip flight from Munich (MUC) to Moscow (DME) for one adult traveler of their corporate client. He chooses S7 direct flight. Agent, client and S7 are already entered into 3D agreement. 

Scenario

The general process for buying a trip such as this is:

  1. Initial search for flight solutions: S7 Agent executes a searchFlightsJorney operation with itinerary criteria, passenger count and Agent/Corporate client codes
  2. Book a reservation: S7 Agent executes a book operation with corporate client/agent details and itinerary info of chosen solution from search result
  3. Request for informative reservation pricing: S7 Agent executes a reprice operation with itinerary info and Agent/Corporate client codes of chosen solution
  4. Request for reservation pricing: S7 Agent executes a reprice operation with itinerary info and Agent/Corporate client codes of chosen solution
  5. Issue tickets for all passenger: S7 Agent executes a demandTickets operation with reservation reference, pricing details and Agent/Corporate client codes

Table of contents:

Table of Contents

Info

3D (tripartite) agreement — is a special type of agency agreement between three parties:

  • airline (S7);
  • travel agency;
  • corporate client — the third legal entity, which is a consumer of the airline's services through agency.

How it looks like in real life: A large travel agency (e.g. Aeroclub) carries out agency support for Coca-Cola employees regularly flying on business trips. The existing 3D agreement between S7, Aeroclub and Coca-Cola allow Aeroclub to sell S7 flights to Coca-Cola employees with a discount provided by this agreement.


Note

(lightbulb) This functionality is for adult passengers only

(lightbulb) You can use only one cabin type (Economy or Business) on the whole itinerary (both slices)

(lightbulb) You can't combine different discounts in one itinerary 

(lightbulb) Discounts are available only for S7 flights only 

(lightbulb) Other scenarios are not differ from standard (OW example, group of ADT example)


Step 1: Initial search for flight solutions

S7 Agent executes a searchFlightsJorney operation with itinerary criteria, passenger count and Agent/Corporate client codes to receive solution for trip

  • itinerary criteria - round trip flight from Munich (MUC) to Moscow (DME)
  • passenger types count - 1ADT
  • Agent/Corporate client codes - QUW0774/1032
Expand
titleRequest


Code Block
languagexml
titleRequest
<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">
    <Header />
    <Body>
        <AirShoppingRQ xmlns="http://www.iata.org/IATA/EDIST" Version="1.0">
            <Document />
            <Party>
                <Sender>
                    <AgentUserSender>
                        <Name>S7-AIDL</Name>
                        <OtherIDs>
                            <OtherID Description="POS_Type">1</OtherID>
                            <OtherID Description="requestorType">U</OtherID>
                        </OtherIDs>
                        <PseudoCity>OVBS728AB</PseudoCity>
                        <AgentUserID>S7AgentAPI</AgentUserID>
                        <UserRole>AS</UserRole>
                    </AgentUserSender>
                </Sender>
            </Party>
            <Parameters>
                <CurrCodes>
                    <CurrCode>RUB</CurrCode>
                </CurrCodes>
            </Parameters>
            <Travelers>
                <Traveler>
                    <AnonymousTraveler>
                        <PTC Quantity="1">ADT</PTC>
                    </AnonymousTraveler>
                </Traveler>
            </Travelers>
            <CoreQuery>
                <OriginDestinations>
                    <OriginDestination>
                        <Departure>
                            <AirportCode>MUC</AirportCode>
                            <Date>2019-11-19</Date>
                        </Departure>
                        <Arrival>
                            <AirportCode>DME</AirportCode>
                        </Arrival>
                    </OriginDestination>
                    <OriginDestination>
                        <Departure>
                            <AirportCode>DME</AirportCode>
                            <Date>2019-12-30</Date>
                        </Departure>
                        <Arrival>
                            <AirportCode>MUC</AirportCode>
                        </Arrival>
                    </OriginDestination>
                </OriginDestinations>
            </CoreQuery>
            <Qualifiers>
                <Qualifier>
                    <SpecialFareQualifiers>
                        <AirlineID>S7</AirlineID>
                        <CompanyIndex>QUW2145</CompanyIndex>
                        <Account>1032</Account>
                    </SpecialFareQualifiers>
                </Qualifier>
            </Qualifiers>
        </AirShoppingRQ>
    </Body>
</Envelope>



Excerpt Include
3D agreement | v0.52 | searchFlightsJourney operation
3D agreement | v0.52 | searchFlightsJourney operation
nopaneltrue

Received solutions include information for whole itinerary. Pricing also divided by fare family and mostly includes 4 sub solutions (Basic Economy, Flex Economy, Basic Business, Flex Business) for each itinerary solution. Prices include discounts. The discount amount and the discount percentage are also indicated.

Step 2: Book a reservation

S7 Agent executes a book operation with corporate client/agent details and itinerary info of chosen solution from search results:

<DetailedFlightItem> block consists of journey information, where each slice is described by the <OriginDestination> element, and each segment in slice by the <Flight> element.

Each <OriginDestination> takes from appropriate AirShoppingRS

Note

(lightbulb) Segments (Flight) must be devided into slices (OriginDestination):

  • one OriginDestination for One Way trip;
  • two for Round Trip and more for MultiCity;
  • for Transfer Trip all segments included in one slice have to be pass in one OriginDestination;
  • for Transfer Trip segments with stopover between have to be divided into two OriginDestination.


Code Block
languagexml
themeConfluence
titleOriginDestination information in AirShoppingRS
collapsetrue
/Envelope /Body /AirShoppingRS /DataLists /FlightSegmentList

and <ClassOfService> (RBD) from

Code Block
languagexml
themeConfluence
titleRBD information in AirShoppingRS
collapsetrue
/Envelope /Body /AirShoppingRS /OffersGroup /AirlineOffers /AirlineOffer /PricedOffer /OfferPrice /RequestedDate /Associations /ApplicableFlight /FlightSegmentReference /ClassOfService/Code

Agent/Corporate client codes are the same.

Excerpt Include
3D agreement | v0.52 | book operation
3D agreement | v0.52 | book operation
nopaneltrue

Step 3: Request for informative pricing

S7 Agent executes a informative reprice operation with itinerary info and Agent/Corporate client codes of chosen solution.

All information must be taken from AirShoppingRS:

  • itinerary details (airport codes and dates for origin and departure, airline code and flight number);

    Note

    (lightbulb) <FlightItem> block must fill in like in OrderCreateRQ


  • passenger types (PTC);
  • fare details (RBD and fare code);
  • Agent/Corporate client codes are the same.

Excerpt Include
3D agreement | v0.52 | reprice without PNR operation
3D agreement | v0.52 | reprice without PNR operation
nopaneltrue

Step 4: Request for reservation pricing

S7 Agent executes a reprice operation with itinerary info and Agent/Corporate client codes of chosen solution.

All information must be taken from AirShoppingRS:

  • itinerary details (airport codes and dates for origin and departure, airline code and flight number);

    Note

    (lightbulb) <FlightItem> block must fill in like in OrderCreateRQ


  • passenger types (PTC);
  • fare details (RBD and fare code);
  • Agent/Corporate client codes are the same.

Excerpt Include
3D agreement | v0.52 | reprice with PNR operation
3D agreement | v0.52 | reprice with PNR operation
nopaneltrue

Step 5: Issue tickets for all passenger

S7 Agent executes a demandTickets operation with reservation reference, pricing details and Agent/Corporate client codes.

  • Add information about PNR from OrderViewRS

    Code Block
    languagexml
    themeConfluence
    titlePNR information in OrderViewRS
    collapsetrue
    Envelope/Body/OrderViewRS/Response/Order/BookingReferences/BookingReference/ID


  • Fill in the form of payment as in example <*QUW0774>, where QUW0774 - client code (lightbulb)

    Code Block
    languagexml
    themeConfluence
    titleFOP
    collapsetrue
    <Payments>
        <Payment>
            <Type>
                <Code>MS</Code>
            </Type>
            <Other>
                <Remarks>
                    <Remark>*QUW0774</Remark>
                </Remarks>
            </Other>
        </Payment>
    </Payments>


Excerpt Include
3D agreement | v0.52 | demandTickets operation
3D agreement | v0.52 | demandTickets operation
nopaneltrue