Allows to pay for order and get ticketing documents
Input
Http Headers
Key | Value | Required |
---|---|---|
Content-Type | application/xml | Yes |
Accept | */* | Yes |
Authorization | Bearer {{access_token}} | Yes |
Content-Length | <calculated when request is sent> | Yes |
Host | <calculated when request is sent> | Yes |
User-Agent | PostmanRuntime/7.30.0 | Yes |
Accept-Encoding | gzip, deflate, br | Yes |
Connection | Keep-alive | Yes |
DeviceID | String | Yes |
Sequence
Endpoints
Test | Live |
---|---|
https://aks-cluster-test.ethiopianairlines.com | https://ndc.ethiopianairlines.com |
Airshopping Request
<Document>
<Name>ETHIOPIAN AIRLINES NDC </Name>
<ReferenceVersion>1.0</ReferenceVersion>
</Document>
Request | Root node of the request schema |
---|---|
Document | |
Name | Document Name |
ReferenceVersion | Reference Version |
<Party><Sender><TravelAgencySender><Name>Ethiopianairlines TravelAgency</Name><IATA_Number>12121212</IATA_Number><AgencyID Owner="ET">A345345435</AgencyID></TravelAgencySender></Sender><Participants><Participant><AggregatorParticipant SequenceNumber="1"><Name>AAAIT PLC</Name><AggregatorID>88888888</AggregatorID></AggregatorParticipant></Participant></Participants><Recipient><ORA_Recipient><AirlineID>ET</AirlineID><Name>ETHIOPIAN AIRLINES</Name></ORA_Recipient></Recipient></Party>
Request | Root node of the request schema |
---|---|
Party | Aggregator and OTA information |
Sender | |
TravelAgencySender | Travel agency involved in the request |
Name | Travel agency’s official name |
IATA_Number | Travel agency’s IATA number |
AgencyID | Travel agency’s Agency ID |
Participants | List of aggregators involved in the request |
Participant | |
AggregatorParticipant | |
@SequenceNumber | Unique position in the list e.g. 1, 2, 3 |
Name | Aggregator’s official name |
AggregatorID | Aggregator’s ID |
Recipient | |
ORA_Recipient | Offer responsible airline information |
AirlineID | IATA Airline code e.g. ET |
Name | Ethiopian Airlines |
<TicketDocInfo><PassengerReference>PAX001 PAX002</PassengerReference><OrderReference><OrderID Owner="ET">{{OrderId}}</OrderID><BookingReference><ID>{{OrderId}}</ID><AirlineID>ET</AirlineID></BookingReference></OrderReference><Payments><Payment><Type>BSP</Type><Method><AccountNumber></AccountNumber></Method><Amount Code="ETB">107208.00</Amount><Payer><ContactInfoRefs>CTC001</ContactInfoRefs></Payer><Order OrderID="{{OrderId}}" Owner="ET"></Order></Payment></Payments></TicketDocInfo>
Request | Root node of the request schema |
---|---|
Query | |
TicketDocQuantity | Number of ticket |
TicketDocInfo | Ticket information for 1 passenger linked with PNR |
PassengerReference | PAX001 |
OrderReference | |
@OrderID | PNR e.g. ROBIEX |
@Owner | ORA e.g. ET |
BookingReference | |
ID | PNR e.g. ROBIEX |
AirlineID | ET |
Payments | |
Payment | |
Type | CA – Cash |
Amount | Order value e.g. 9800.30 |
@Code | Order Currency e.g. ETB |
Payer | Used if payer is not the traveler e.g. OTA is paying |
ContactInfoRefs | Reference ContactID in ContactList |
<DataLists><PassengerList><Passenger PassengerID="PAX001"><PTC>ADT</PTC><Individual><Birthdate>1988-06-10</Birthdate><Gender>Female</Gender><NameTitle>MRS</NameTitle><GivenName>Jane</GivenName><Surname>Smith</Surname></Individual><LoyaltyProgramAccount><AccountNumber>1234525525</AccountNumber></LoyaltyProgramAccount><IdentityDocument><IdentityDocumentNumber>543000123</IdentityDocumentNumber><IdentityDocumentType>F</IdentityDocumentType><IssuingCountryCode>US</IssuingCountryCode><CitizenshipCountryCode>US</CitizenshipCountryCode><IssueDate>2017-01-17</IssueDate><ExpiryDate>2022-01-16</ExpiryDate><Birthdate>1988-06-10</Birthdate><Birthplace>US</Birthplace></IdentityDocument><ContactInfoRef>CTC01</ContactInfoRef></Passenger><Passenger PassengerID="PAX002"><PTC>INF</PTC><Individual><Birthdate>2020-06-10</Birthdate><Gender>Female</Gender><GivenName>elias</GivenName><Surname>mareye</Surname></Individual><LoyaltyProgramAccount><AccountNumber>1234525525</AccountNumber></LoyaltyProgramAccount><ContactInfoRef>CTC01</ContactInfoRef></Passenger></PassengerList><ContactList><ContactInformation ContactID="CTC001"><PostalAddress><Label>HOME</Label><Street>s1</Street><Street>s2</Street><PostalCode>12345</PostalCode><CityName>delhi</CityName><CountrySubdivisionName>test</CountrySubdivisionName><CountryName>UNITED STATES</CountryName><CountryCode>US</CountryCode></PostalAddress><ContactProvided><Phone><Label>HOME</Label><CountryDialingCode>123</CountryDialingCode><AreaCode>1234</AreaCode><PhoneNumber>12345</PhoneNumber></Phone></ContactProvided><!-- include the individual node where agency is paying --><Individual><GivenName>TEST</GivenName><Surname>TEST</Surname></Individual></ContactInformation></ContactList></DataLists>
Request | Root node of the request schema |
---|---|
PassengerList | List of passengers |
Passenger | |
@PassengerID | Unique passenger identifier e.g. PAX001 |
PTC | Passenger type e.g. ADT, CHD, INF |
Individual | |
Birthdate | Format YYYY-MM-DD |
Gender | Male, Female |
NameTitle | MR, MRS, MS, MISS, MASTER, DR, PROF, AMB, SIR |
GivenName | First name |
MiddleName | Middle Name |
Surname | Last name or Family name |
LoyaltyProgramAccount | |
AccountNumber | e.g. Shebamiles number |
IdentityDocument | |
IdentityDocumentNumber | passport number |
IdentityDocumentType | F - Passport |
IssuingCountryCode | 2 letter country code of passport e.g. ET, GB |
CitizenshipCountryCode | 2 letter country code of nationality e.g. ET |
IssueDate | Format YYYY-MM-DD |
ExpireDate | Format YYYY-MM-DD |
Birthdate | Format YYYY-MM-DD |
Birthplace | 2 letter country code of birth e.g. ET |
ContactInfoRef | Reference to passenger contact information in ContactList |
ContactList | |
ContactInformation | |
@ContactID | Unique contact ID e.g. CONTACT001 |
ContactType | PRIMARY PAYMENT – used if passenger is paying |
PostalAddress | Address information |
Label | Type of address e.g. HOME, WORK |
Street | Street 1 0-9 a-z A-Z Maximum of 30 characters |
PostalCode | Postal or zip code |
CityName | e.g. Addis Ababa |
CountrySubdivisionName | State or Region e.g. Oromia, Texas |
CountryName | 2 letter country code of address e.g. ET |
ContactProvided | Collection of either emails or phone. Use separate nodes for emails and phones. |
EmailAddress | |
Label | HOME or WORK |
EmailAddressValue | e.g. john.doe@mail.com |
Phone | |
Label | MOBILE, WORK |
CountryDialingCode | Country code without + e.g. 251, 92 |
PhoneNumber | Number without country code |
Individual | Required when the Payment.Payer node is set |
GivenName | |
MiddleName | |
Surname |
AirdocIssue Response
<Document>
<Name>ETHIOPIAN AIRLINES NDC </Name>
<ReferenceVersion>1.0</ReferenceVersion>
</Document>
Request | Root node of the request schema |
---|---|
Document | |
Name | Document Name |
ReferenceVersion | Reference Version |
Price breakdown per passenger is now available per the order item id @OrderItemID
<Order OrderID="PRBIPV" Owner="ET">
<BookingReferences><BookingReference><ID>PRBIPV</ID><AirlineID Name="ETHIOPIAN AIRLINES">ET</AirlineID></BookingReference></BookingReferences><TotalOrderPrice><SimpleCurrencyPrice Code="USD">7256.14</SimpleCurrencyPrice></TotalOrderPrice><Payments><Payment><Type>CA</Type><Status /><Amount><SimpleCurrencyPrice Code="USD">7256.14</SimpleCurrencyPrice></Amount><Method><CashMethod /></Method></Payment></Payments><OrderItems><OrderItem OrderItemID="ORDERITEM001" Owner="ET"><PriceDetail><TotalAmount><SimpleCurrencyPrice Code="USD">463.40</SimpleCurrencyPrice></TotalAmount><BaseAmount Code="USD">336.00</BaseAmount><Surcharges><Surcharge><Total Code="USD">0</Total></Surcharge></Surcharges><Taxes><Total Code="USD">127.40</Total></Taxes></PriceDetail><Service ServiceID="SV_1_001"><PassengerRef>PAX001 </PassengerRef><ServiceRef>SV_ES</ServiceRef><SegmentRef>SEG_ADDDXB_001</SegmentRef></Service></OrderItem><OrderItem OrderItemID="ORDERITEM002" Owner="ET"><PriceDetail><TotalAmount><SimpleCurrencyPrice Code="USD">379.40</SimpleCurrencyPrice></TotalAmount><BaseAmount Code="USD">252.00</BaseAmount><Surcharges><Surcharge><Total Code="USD">0</Total></Surcharge></Surcharges><Taxes><Total Code="USD">127.40</Total></Taxes></PriceDetail><Service ServiceID="SV_2_002"><PassengerRef>PAX002 </PassengerRef><ServiceRef>SV_ES</ServiceRef><SegmentRef>SEG_ADDDXB_002</SegmentRef></Service></OrderItem><OrderItem OrderItemID="ORDERITEM003" Owner="ET"><PriceDetail><TotalAmount><SimpleCurrencyPrice Code="USD">48.00</SimpleCurrencyPrice></TotalAmount><BaseAmount Code="USD">34.00</BaseAmount><Surcharges><Surcharge><Total Code="USD">0</Total></Surcharge></Surcharges><Taxes><Total Code="USD">14.00</Total></Taxes></PriceDetail><Service ServiceID="SV_3_003"><PassengerRef>PAX003 </PassengerRef><ServiceRef>SV_ES</ServiceRef><SegmentRef>SEG_ADDDXB_003</SegmentRef></Service></OrderItem></OrderItems></Order>
Request | Root node of the request schema |
---|---|
Response | |
Order | |
@OrderID | PNR e.g. YTDFRA |
@Owner | ORA |
BookingReferences | |
BookingReference | |
ID | PNR e.g. YTDFRA |
AirlineID | ET |
@Name | Ethiopian Airlines |
TotalOrderPrice | Total ticket price including taxes |
SimpleCurrencyPrice | Total order price e.g. 107208 |
@Code | Currency code e.g. USD, GBP, EUR |
BaseAmount | Base fare value |
@Code | Currency code |
Taxes | |
Total | Tax value |
@Code | Currency code |
Service | Service per segment per passenger |
@ServiceID | Service per segment per passenger |
PassengerRef | Passenger entitled to service |
SegmentRef | Flight segment associated to service |
<TicketDocInfos><TicketDocInfo><TicketDocument><TicketDocNbr>0712134759422</TicketDocNbr><Type>T</Type><NumberofBooklets>2</NumberofBooklets><ReportingType>Airline</ReportingType></TicketDocument><PassengerReference>PAX001</PassengerReference></TicketDocInfo><TicketDocInfo><TicketDocument><TicketDocNbr>0712134759423</TicketDocNbr><Type>T</Type><NumberofBooklets>2</NumberofBooklets><ReportingType>Airline</ReportingType></TicketDocument><PassengerReference>PAX002</PassengerReference></TicketDocInfo></TicketDocInfos>
Request | Root node of the request schema |
---|---|
TicketDocInfos | |
TicketDocInfo | |
TicketDocument | |
TicketDocNbr | Ticket number - 0712134759422 |
Type | e.g. T |
NumberofBooklets | e.g. 2 |
ReportingType | Airline |
PassengerReference | e.g. PAX001 |
<DataLists><PassengerList><Passenger PassengerID="PAX001"><PTC>ADT</PTC><Individual><Birthdate>1988-06-10</Birthdate><Gender>Female</Gender><GivenName>JANE MRS</GivenName><Surname>SMITH</Surname></Individual><IdentityDocument><IdentityDocumentNumber>543000123</IdentityDocumentNumber><IdentityDocumentType>F</IdentityDocumentType><IssuingCountryCode>US</IssuingCountryCode><CitizenshipCountryCode>US</CitizenshipCountryCode><ExpiryDate>2022-01-16</ExpiryDate><Birthdate>1988-06-10</Birthdate><Birthplace>US</Birthplace></IdentityDocument><ContactInfoRef>CONTACT_PAX_1</ContactInfoRef></Passenger><Passenger PassengerID="PAX002"><PTC>ADT</PTC><Individual><Birthdate>2019-06-10</Birthdate><Gender>Female</Gender><GivenName>SAWI MRS</GivenName><Surname>SAWALE</Surname></Individual><IdentityDocument><IdentityDocumentNumber>543000123</IdentityDocumentNumber><IdentityDocumentType>F</IdentityDocumentType><IssuingCountryCode>US</IssuingCountryCode><CitizenshipCountryCode>US</CitizenshipCountryCode><ExpiryDate>2022-01-16</ExpiryDate><Birthdate>2019-06-10</Birthdate><Birthplace>US</Birthplace></IdentityDocument><ContactInfoRef>CONTACT_PAX_2</ContactInfoRef></Passenger></PassengerList><ContactList><ContactInformation ContactID="CONTACT_PAX_1"><ContactProvided><Phone><Label>HOME</Label><CountryDialingCode>IAD</CountryDialingCode><PhoneNumber>944123456</PhoneNumber></Phone></ContactProvided><ContactProvided><EmailAddress><EmailAddressValue>JANE@MAIL.COM</EmailAddressValue></EmailAddress></ContactProvided></ContactInformation><ContactInformation ContactID="CONTACT_PAX_2"><ContactProvided><Phone><Label>HOME</Label><CountryDialingCode>IAD</CountryDialingCode><PhoneNumber>944123456</PhoneNumber></Phone></ContactProvided><ContactProvided><EmailAddress><EmailAddressValue>JANE@MAIL.COM</EmailAddressValue></EmailAddress></ContactProvided></ContactInformation></ContactList><FlightSegmentList><FlightSegment SegmentKey="SEG_ADDIAD_001"><Departure><AirportCode>ADD</AirportCode><Date>2023-03-20</Date><Time>09:00</Time><Terminal /></Departure><Arrival><AirportCode>IAD</AirportCode><Date>2023-03-20</Date><Time>19:25</Time><Terminal /></Arrival><MarketingCarrier><AirlineID>ET</AirlineID><FlightNumber>0516</FlightNumber></MarketingCarrier><OperatingCarrier><AirlineID>ET</AirlineID><FlightNumber>0516</FlightNumber></OperatingCarrier><Equipment><AircraftCode>788</AircraftCode></Equipment><ClassOfService><Code>D</Code><MarketingName>BUSINESS</MarketingName><FareBasisCode>DEYJ0WET</FareBasisCode></ClassOfService><FlightDetail><FlightDistance><Value>7929</Value><UOM>Miles</UOM></FlightDistance><FlightDuration><Value>PT16H10M</Value></FlightDuration></FlightDetail></FlightSegment></FlightSegmentList><FlightList><Flight FlightKey="FLT001"><SegmentReferences OnPoint="ADD" OffPoint="WAS">SEG_ADDIAD_001</SegmentReferences></Flight></FlightList><OriginDestinationList><OriginDestination><DepartureCode UOM="Miles">ADD</DepartureCode><ArrivalCode UOM="Miles">WAS</ArrivalCode><FlightReferences>FLT001</FlightReferences></OriginDestination></OriginDestinationList><InstructionsList><Instruction ListKey="RULE_ADD_WAS"><FreeFormTextInstruction><Remark>NOTE - THE FOLLOWING TEXT IS INFORMATIONAL AND NOT</Remark></FreeFormTextInstruction></Instruction></InstructionsList><ServiceDefinitionList><ServiceDefinition ServiceDefinitionID="SV_CX" Owner="ET"><Name>CX</Name><Descriptions><Description><Text>CLOUD 9 RESTRICTED</Text></Description></Descriptions></ServiceDefinition></ServiceDefinitionList><SeatDefinitionList /></DataLists>
Request | Root node of the request schema |
---|---|
PassengerList | List of passengers |
Passenger | |
@PassengerID | Unique passenger identifier e.g. PAX001 |
PTC | Passenger type e.g. ADT, CHD, INF |
Individual | |
Birthdate | Format YYYY-MM-DD |
Gender | Male, Female |
NameTitle | MR, MRS, MS, MISS, MASTER, DR, PROF, AMB, SIR |
GivenName | First name |
MiddleName | Middle Name |
Surname | Last name or Family name |
LoyaltyProgramAccount | |
AccountNumber | e.g. Shebamiles number |
IdentityDocument | |
IdentityDocumentNumber | passport number |
IdentityDocumentType | F - Passport |
IssuingCountryCode | 2 letter country code of passport e.g. ET, GB |
CitizenshipCountryCode | 2 letter country code of nationality e.g. ET |
IssueDate | Format YYYY-MM-DD |
ExpireDate | Format YYYY-MM-DD |
Birthdate | Format YYYY-MM-DD |
Birthplace | 2 letter country code of birth e.g. ET |
ContactInfoRef | Reference to passenger contact information in ContactList |
ContactList | |
ContactInformation | |
@ContactID | Unique contact ID e.g. CONTACT001 |
ContactType | PRIMARY PAYMENT – used if passenger is paying |
PostalAddress | Address information |
Label | Type of address e.g. HOME, WORK |
Street | Street 1 0-9 a-z A-Z Maximum of 30 characters |
PostalCode | Postal or zip code |
CityName | e.g. Addis Ababa |
CountrySubdivisionName | State or Region e.g. Oromia, Texas |
CountryName | 2 letter country code of address e.g. ET |
ContactProvided | Collection of either emails or phone. Use separate nodes for emails and phones. |
EmailAddress | |
Label | HOME or WORK |
EmailAddressValue | e.g. john.doe@mail.com |
Phone | |
Label | MOBILE, WORK |
CountryDialingCode | Country code without + e.g. 251, 92 |
PhoneNumber | Number without country code |
Individual | Required when the Payment.Payer node is set |
GivenName | |
MiddleName | |
Surname |
XML Sample
Request and Response | Sample AirdocIsse XML |
---|---|
AirdocIssue Request | Click to download |
AirdocIssue Response | Click to download |
Multi pax AirdocIssue Request | Click to download |
Multi pax AirdocIssue Response | Click to download |
Erorrs Response Description
Error responses
Erorr Code | Error Code Text |
---|---|
400 | Page not found |
200 | Success response |
0 | Error |