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 |