Description of additional functionality

  1. Purpose of the document
  2. Confirmation of air/train tickets
  3. Multiticket
  4. Combined payment
  1. Ticket refund fees
  2. Receiving information about the issued documents
  3. Payment for the Airline additional services
  4. Aeronautical directories

Description of additional functionality

1. Purpose of the document

This document contains a description of additional service functions, focused on the OS (online store) needs for the sale of air and train tickets. The PG (Payment Gateway) features described below are not standalone solutions - to understand and implement these additional features, it is necessary to read the Description of Basic Functionality.

2. ПConfirmation of air/train tickets

In order to form and transfer information about the performed transportation to international payment systems (so called long record), it is necessary to pass additional parameters in the “confirm” request:

3. Multiticket.

For air order, the shopping cart functionality allows you to aggregate multiple PNRs within one order, and pay and process in a way that is optimal in terms of settlements and number of payments.

A complete list of goods and services types can be found in the directory: types of goods and services( see cl. 8.1)

Requirements: agent has access to the WEB services of the GDS used, setting up the process parameters of the connection is performed through a request.

To implement this case, the OS needs to configure the transmission of “items” parameters of the “description” block, each of which consists of:

This block of parameters is filled in for each independently executed service.

Important! The service is identified primarily by the “number” parameter – please make sure that this parameter is transmitted correctly. The indicated value of the shopping cart item must match the value of the good/service in the indicated GDS (global distribution system).

Example:

  <item>
    <ext>
      <number>0CT2L2</number>
      <typename>airticket</typename>
      <host>sirena</host>
    </ext>
    <amount>
      <currency>RUB</currency>
      <amount>1000</amount>
    </amount>
    <id>123</id>
  </item>

4. Combined payment

4.1 Paying a total reservation as a whole

If a part of the order is paid for using funds in the user’s personal account or bonus points of the loyalty program, it is necessary to specify the “parts” parameter in the “description” block – a list of items, each of which consists of:

The “part” parameter includes:

The amount of all part.amount items must be equal to the order value. When using the “amount” shopping cart functionality, the part.ref field must be filled in. The amount of part.amount items with the specified ref must be equal to the value of the order item for which item.id == ref.

One of the main examples of using this functionality is paying for an order at a discount.

Important! It should be understood that the discount provided to the client is paid for by the company.

Example: payment for a ticket worth 1000 rubles with a 10% discount

  <parts>
    <PaymentPart>
      <amount>
        <currency>RUB</currency>
        <amount>900</amount>
      </amount>
      <id>0</id>
      <paytype>card</paytype>
    </PaymentPart>
    <PaymentPart>
      <amount>
        <currency>RUB</currency>
        <amount>100</amount>
      </amount>
      <id>0</id>
      <paytype>discount</paytype>
    </PaymentPart>
  </parts>
  

4.2 Paying the reservation in installments

If the combined form of payment applies to a part of the reservation, for example to one passenger or one category of passengers, it is necessary, in addition to the parameters listed in п. 4.1 fill in the list of subitems of the order item (subitems).

The amount of nested items (" subitem.amount“) must be equal to the”item.amount" of the parent item. The amount of part.amount items with the specified ref must be equal to the value of the order item for which subitem.id == ref.

5. Ticket refund fees

The mechanism for charging this fee can be implemented in 2 ways. The schemes themselves are equivalent, the choice of one or another scheme depends on the capabilities of the OS software.

  1. “Splitting” the amount to be paid for the ticket. In this case, when returning the service, the Airline returns to the client only part of the cost of the paid ticket, the remainder goes to the account of the agency (OS owner), which provided the sale service. In this way the agency is able to manage this amount, and can either return it in full to the client, or return only part of it, while retaining its refund fee.
Requirements: direct agreement with the bank for acquiring

To implement this scheme, the OS sends a request for order registration, which must contain both the "item" parameter and the "part" parameter contained in the "description" block ("order" service "register" method).

Let's look at an example of a shopping cart consisting of a reservation (1000 rubles) and a refund fee (130 rubles).

An example of filling the "item" parameter:

      <item>
        <ext>
          <number>PNR1234</number>
          <typename>airticket</typename>
          <host>GDS identifier</host>
        </ext>
        <amount>
          <currency>RUB</currency>
          <amount>1000</amount>
        </amount>
        <id>0</id>
        <clearing>selected scheme of settlements</clearing>
      </item>
      <item>
        <ext>
          <number>PNR1234</number>
          <typename>airticket</typename>
          <host>GDS identifier</host>
        </ext>
        <amount>
          <currency>RUB</currency>
          <amount>130</amount>
        </amount>
        <id>1</id>
        <clearing> </clearing>
      </item>

An example of how to fill in the "part" parameter:

      <parts>
        <PaymentPart>
          <amount>
            <currency>RUB</currency>
            <amount>1000</amount>
          </amount>
          <id>0</id>
          <paytype>card<paytype>
        </PaymentPart>
        <PaymentPart>
          <amount>
            <currency>RUB</currency>
            <amount>130</amount>
          </amount>
          <id>1</id>
          <paytype>card</paytype>
        </PaymentPart>
      </parts>
  1. Authorization of a new amount. In this case, the OS calls the “refund” method of the “order” service, specifying a part (or the full size) of the amount with a positive value and the refund fee amount with a negative value. The refund amount with a positive value will be returned to the client’s card within the standard refund terms. For an amount with a negative value, the PG generates a new authorization request. However, there may not be enough money on the client’s card at the time of attempting to debit the amount for a service refund. In order to avoid such a situation, the PG functionality allows one to automatically include a mechanism for repeated write-offs until the client card does not have the necessary amount to be written off.
Requirements: direct agreement with the bank for acquiring recurring payments. 

      <items>
        <OrderItem>
          <number>PNR1234</number>
          <host>GDS identifier</host>
          <clearing> selected scheme of settlements</clearing>
          <cost>870</cost>
          <typename>airticket</typename>
        </OrderItem>
        <OrderItem>
          <number>PNR1234</number>
          <host />
          <clearing>selected scheme of settlements</clearing>
          <cost>-130</cost>
          <typename>service</typename>
        </OrderItem>
      </items>

Important! A full description of the parameters of the refund method is described in ((cl. 5.4)) of the basic protocol. The payment_id and txn_id parameters described there are mandatory for this request.

6. Receiving information about the issued documents.

A “get_tickets” method of the “ticket” service allows one to get data about the tickets issued within the selected order, namely: document number, type of service provided, GDS code (in which the ticket was issued), order number.

Request parameters:

7. Payment for the Airline additional services

n order to pay for additional services entered in SRS (State Regulation Service) and to process documents correctly (EMD), it is necessary to: 1. add the service to the OOs (operating overheads) according to the protocol of additional services handling through ADS (Automated Distribution System) Sirena-Travel XML-gateway; 2. add to the order registration request - several “Item” items with “svc” type; - one “Item” item with “svc” type and total cost of all additional services that were added to the OOs;

Important: The number of the order item must match the reservation number in the GDS. Important: The service provider (host = sirena) must also be indicated.

8. Aeronautical directories

8.1 Distribution systems

Abbreviation Meaning
sirena Sirena-Travel
sabre Sabre
amadeus Amadeus
travelport TravelPort
hrs HRS
galileo Galileo
navitaire Navitaire
farelogix Farelogix
s7_ndc NDC S7

8.2. Types of goods and services

Abbreviation Meaning
airticket airline tickets
insurance insurance
aezh aeroexpress
service service fee
hotel hotel
good goods
contract contract
svc additional service

8.3 Settlement systems

Abbreviation Meaning
tch settlement through the Transport Clearing House
tchcard settlement through the Transport Clearing House
bsp settlements through the IATA Billing Settlement Plan
dummy without settlements, no payment is made
card settlement through the company’s bank
не задано settlement through the company’s bank

8.4 Types of distribution system reservation part identifiers

System Type code Example code
sirena passenger-id 1
sirena passenger-rbm ADT
sabre namenumber 01.01
sabre passengertype ADT
amadeus reference 20
amadeus passengertype INF

History of changes

Date Version A brief description of the corrections made
30.12.2015 1.1 a basic description has been prepared
19.01.2016 1.2 the option to pay for the reservation in installments is described
16.12.2016 1.2 the functionality of the payment for additional services entered in the SRS is described