Bags |
---|
For information on Iberia’s Checked Baggage Policy, please see https://www.iberia.com/es/luggage/allowance-in-hold/#!/baggages-search:~:text=some%20exceptions.-,Additional%20baggage,-If%20you%20need
Through NDC, you can purchase additional bags of 15kg, 23kg, and 32kg.
Maintaining backward compatibility, the bags of 23kg can be purchased in both Pre-Sale and Servicing flows, for this no ServiceFilter/GroupCode needs to be sent in the ServiceListRQ message
To purchase bags of 15kg, 23kg or 32kg, the ServiceFilter/GroupCode needs to be sent in the ServiceListRQ message as per the following example (please, refer to the SubGroup and Group codes diplayed in this table):
<Parameters> <ServiceFilters> <ServiceFilter> <GroupCode>BG</GroupCode> </ServiceFilter> </ServiceFilters> </Parameters>
Presently, the purchase of bags 15kg and 32kg is only available in the Pre-Sale flow. Likewise, the purchase of Bags on Unpaid (On-Hold) Orders is not permitted.
The information regarding the price and details is included in the message response, later displayed in these examples.
ServiceListRQ Message |
---|
When new services are released, we will publish the new applicable ServiceFilters, and you can include them as and when required, as per the following examples:
<Parameters> <ServiceFilters> <ServiceFilter> <GroupCode>BG</GroupCode> </ServiceFilter> <ServiceFilter> <GroupCode>TS</GroupCode> <SubGroupCode>PR</SubGroupCode> </ServiceFilter> </Parameters>
Please, note that both GroupCode
and SubGroupCode
information are being taken from this table, and that the above-mentioned example combines two ancillaries (Bags together with Priority Boarding).
An example of a ServiceListRQ in the prime shopping flow, following the OfferPrice could look something like the following:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header/> <soapenv:Body> <ServiceListRQ Version="5.000" PrimaryLangID="es" xmlns="http://www.iata.org/IATA/EDIST/2017.2"> <PointOfSale> <Location> <CountryCode>ES</CountryCode> </Location> </PointOfSale> <Document> <ReferenceVersion>1.0</ReferenceVersion> </Document> <Party> <Sender> <TravelAgencySender> <IATA_Number>11112220</IATA_Number> <AgencyID>firstAgency</AgencyID> </TravelAgencySender> </Sender> <Participants> <Participant> <AggregatorParticipant SequenceNumber="1"> <AggregatorID>00000022</AggregatorID> </AggregatorParticipant> </Participant> </Participants> </Party> <Parameters> <ServiceFilters> <ServiceFilter> <GroupCode>BG</GroupCode> </ServiceFilter> </ServiceFilters> </Parameters> <ShoppingResponseID> <ResponseID>Qm9va2luZ0BHVy0xNjgxNzI2NzkwMDI5LUU4TXVo</ResponseID> </ShoppingResponseID> <Query> <Offers> <Offer> <OfferID Owner="IB">IB1f565db470e14d5ebb4038fa101152c0OC</OfferID> <OfferItemIDs> <OfferItemID Owner="IB">IB1f565db470e14d5ebb4038fa101152c0OC_01 </OfferItemID> </OfferItemIDs> </Offer> </Offers> </Query> </ServiceListRQ> </soapenv:Body> </soapenv:Envelope>
ServiceListRS Message |
---|
All services offered are included within the ServiceList message response. This will evolve as more services are offered through the NDC channel.
If the ServiceFilter is ommited, then only the 23Kgs bags will be returned, maintaining backward compatibility with our initial implementation. However, with the new services being added, it is necessary to include the ServiceFilter if you want to sell them.
OfferItem - in ServiceListRS
The OfferItem shows the unit price of the Service for the applicable passengers and flight segments.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ServiceListRS Version="5.000" PrimaryLangID="es" xmlns:ns2="http://www.iberia.com/IATA/NDC/SecurePayment/2017.2" xmlns="http://www.iata.org/IATA/EDIST/2017.2"> <Document> <ReferenceVersion>5.000</ReferenceVersion> </Document> <Success/> <ShoppingResponseID> <ResponseID>Qm9va2luZ0BHVy0xNjgxNzI2NzkwMDI5LUU4TXVo</ResponseID> </ShoppingResponseID> <ALaCarteOffer OfferID="ALACARTE_IB81c6d3ee302c470fa571d241500a9256" Owner="IB"> <OfferExpirationDateTime>2023-04-17T10:49:51.411Z</OfferExpirationDateTime> <ALaCarteOfferItem OfferItemID="ALACARTE_BAGGAGE_IB81c6d3ee302c470fa571d241500a9256_01"> <Eligibility> <PassengerRefs>ADULT_01 ADULT_02 ADULT_03 ADULT_04</PassengerRefs> <SegmentRefs>IB044020230712</SegmentRefs> </Eligibility> <UnitPriceDetail> <TotalAmount> <SimpleCurrencyPrice Code="EUR">18.00</SimpleCurrencyPrice> </TotalAmount> <BaseAmount Code="EUR">18.00</BaseAmount> <Taxes> <Total Code="EUR">0.00</Total> </Taxes> </UnitPriceDetail> <Service ServiceID="BAG_SERVICE_fcc6f633-71f9-45a5-ac43-2e36f80ebe10"> <ServiceDefinitionRef>BAGSERVICE-15-1</ServiceDefinitionRef> </Service> </ALaCarteOfferItem> <...> <ALaCarteOfferItem OfferItemID="ALACARTE_BAGGAGE_IB81c6d3ee302c470fa571d241500a9256_15"> <Eligibility> <PassengerRefs>ADULT_01 ADULT_02 ADULT_03 ADULT_04</PassengerRefs> <SegmentRefs>IB044020230712</SegmentRefs> </Eligibility> <UnitPriceDetail> <TotalAmount> <SimpleCurrencyPrice Code="EUR">40.00</SimpleCurrencyPrice> </TotalAmount> <BaseAmount Code="EUR">40.00</BaseAmount> <Taxes> <Total Code="EUR">0.00</Total> </Taxes> </UnitPriceDetail> <Service ServiceID="BAG_SERVICE_b4d1279b-1586-481b-81ec-7343a351cae5"> <ServiceDefinitionRef>BAGSERVICE-32-1</ServiceDefinitionRef> </Service> </ALaCarteOfferItem>
The ServiceDefinitionList contains a list of the different Services each defined as necessary.
In the case of a single service there is no ServiceBundle section, so the number of services is deducible as 1. When there are more than one service then the number of <ServiceDefinitionRef>
elements gives you the number of those services. We do not recommend you use the numbers in the Name or the Description Text to discern the number of services.
Using the RFIC together with the Subcode together with the ATPCo Optional Services Industry Sub Codes., the Grouping and SubGrouping of the services can be achieved.
<ServiceDefinitionList> <ServiceDefinition ServiceDefinitionID="BAGSERVICE-15-1"> <Name>1 EXTRA BAG 15</Name> <Encoding> <RFIC>C</RFIC> <SubCode>0LM</SubCode> </Encoding> <Descriptions> <Description> <Text>1 Additional Bag up to 15 KG each</Text> </Description> </Descriptions> <BookingInstructions> <SSRCode>XBAG</SSRCode> <Method>SSR</Method> </BookingInstructions> <Detail> <ServiceCombinations> <Combination> <Rule>NotPermitted</Rule> <ServiceReference>BAGSERVICE-15-2</ServiceReference> <ServiceReference>BAGSERVICE-15-3</ServiceReference> <ServiceReference>BAGSERVICE-15-4</ServiceReference> <ServiceReference>BAGSERVICE-15-5</ServiceReference> <ServiceReference>BAGSERVICE-15-6</ServiceReference> <ServiceReference>BAGSERVICE-15-7</ServiceReference> </Combination> </ServiceCombinations> <ServiceItemQuantityRules> <MaximumQuantity>1</MaximumQuantity> </ServiceItemQuantityRules> </Detail> </ServiceDefinition> <...> <ServiceDefinition ServiceDefinitionID="BAGSERVICE-23-1"> <Name>1 EXTRA BAG 23</Name> <Encoding> <RFIC>C</RFIC> <SubCode>0GO</SubCode> </Encoding> <Descriptions> <Description> <Text>1 Additional Bag up to 23 KG each</Text> </Description> </Descriptions> <BookingInstructions> <SSRCode>XBAG</SSRCode> <Method>SSR</Method> </BookingInstructions> <Detail> <ServiceCombinations> <Combination> <Rule>NotPermitted</Rule> <ServiceReference>BAGSERVICE-23-2</ServiceReference> <ServiceReference>BAGSERVICE-23-3</ServiceReference> <ServiceReference>BAGSERVICE-23-4</ServiceReference> <ServiceReference>BAGSERVICE-23-5</ServiceReference> <ServiceReference>BAGSERVICE-23-6</ServiceReference> <ServiceReference>BAGSERVICE-23-7</ServiceReference> </Combination> </ServiceCombinations> <ServiceItemQuantityRules> <MaximumQuantity>1</MaximumQuantity> </ServiceItemQuantityRules> </Detail> </ServiceDefinition>
As the purchase of multiple bags is solved here using the ServiceBundle, made up of various individual bag services, the NotPermitted
combinations are shown to prevent the purchase of a number of bags that would exceed the maximum quantity allowed.
OrderCreateRQ Message |
---|
Service Bundle
From the OrderCreate Request (and as an example of the various combinations) the following code shows that bags with different weights are being assigned to different passengers.
Since these samples are being extracted from the same Flow, we can see that the OfferID is the same reported in the ServiceListRQ (<OfferID Owner="IB">IB1f565db470e14d5ebb4038fa101152c0OC</OfferID>
), and so is the OfferItemID (<OfferItemID Owner="IB">IB1f565db470e14d5ebb4038fa101152c0OC_01 </OfferItemID>
).
<Query> <Order> <Offer OfferID="IB1f565db470e14d5ebb4038fa101152c0OC" Owner="IB" ResponseID="Qm9va2luZ0BHVy0xNjgxNzI2NzkwMDI5LUU4TXVo"> <OfferItem OfferItemID="IB1f565db470e14d5ebb4038fa101152c0OC_01"> <PassengerRefs>ADULT_01 ADULT_02 ADULT_03 ADULT_04</PassengerRefs> </OfferItem> </Offer> <Offer OfferID="ALACARTE_IB81c6d3ee302c470fa571d241500a9256" Owner="IB" ResponseID="Qm9va2luZ0BHVy0xNjgxNzI2NzkwMDI5LUU4TXVo"> <OfferItem OfferItemID="ALACARTE_BAGGAGE_IB81c6d3ee302c470fa571d241500a9256_01"> <PassengerRefs>ADULT_01 ADULT_02 ADULT_03</PassengerRefs> </OfferItem> <OfferItem OfferItemID="ALACARTE_BAGGAGE_IB81c6d3ee302c470fa571d241500a9256_08"> <PassengerRefs>ADULT_01 ADULT_02</PassengerRefs> </OfferItem> <OfferItem OfferItemID="ALACARTE_BAGGAGE_IB81c6d3ee302c470fa571d241500a9256_15"> <PassengerRefs>ADULT_01</PassengerRefs> </OfferItem> </Offer>
OrderViewRS Message |
---|
In the OrderViewRS the Bag Ancillary is shown in the following way.
First, the OrderItem:
<OrderItem OrderItemID="IB1f565db470e14d5ebb4038fa101152c0OC_09"> <PriceDetail> <TotalAmount> <SimpleCurrencyPrice Code="EUR">33.00</SimpleCurrencyPrice> </TotalAmount> <BaseAmount Code="EUR">33.00</BaseAmount> <Taxes> <Total Code="EUR">0.00</Total> </Taxes> </PriceDetail> <Service ServiceID="BAG_SERVICE_IB044020230712_05" ServiceStatus="HK"> <PassengerRef>ADULT_02</PassengerRef> <ServiceDefinitionRef SegmentRef="IB044020230712">BAGSERVICE-23-1</ServiceDefinitionRef> </Service> </OrderItem> <OrderItem OrderItemID="IB1f565db470e14d5ebb4038fa101152c0OC_10"> <PriceDetail> <TotalAmount> <SimpleCurrencyPrice Code="EUR">40.00</SimpleCurrencyPrice> </TotalAmount> <BaseAmount Code="EUR">40.00</BaseAmount> <Taxes> <Total Code="EUR">0.00</Total> </Taxes> </PriceDetail> <Service ServiceID="BAG_SERVICE_IB044020230712_06" ServiceStatus="HK"> <PassengerRef>ADULT_01</PassengerRef> <ServiceDefinitionRef SegmentRef="IB044020230712">BAGSERVICE-32-1</ServiceDefinitionRef> </Service> </OrderItem>
And the ServiceDefinition:
<DataLists> <...> <ServiceDefinitionList> <ServiceDefinition ServiceDefinitionID="BAGSERVICE-15-1"> <Name>1 EXTRA BAG 15</Name> <Encoding> <RFIC>C</RFIC> <SubCode>0LM</SubCode> </Encoding> <Descriptions> <Description> <Text>1 Additional Bag up to 15 KG each</Text> </Description> </Descriptions> <BookingInstructions> <SSRCode>XBAG</SSRCode> <Method>SSR</Method> </BookingInstructions> </ServiceDefinition> <ServiceDefinition ServiceDefinitionID="BAGSERVICE-23-1"> <Name>1 EXTRA BAG 23</Name> <Encoding> <RFIC>C</RFIC> <SubCode>0GO</SubCode> </Encoding> <Descriptions> <Description> <Text>1 Additional Bag up to 23 KG each</Text> </Description> </Descriptions> <BookingInstructions> <SSRCode>XBAG</SSRCode> <Method>SSR</Method> </BookingInstructions> </ServiceDefinition> <ServiceDefinition ServiceDefinitionID="BAGSERVICE-32-1"> <Name>1 EXTRA BAG 32</Name> <Encoding> <RFIC>C</RFIC> <SubCode>0FM</SubCode> </Encoding> <Descriptions> <Description> <Text>1 Additional Bag up to 32 KG each</Text> </Description> </Descriptions> <BookingInstructions> <SSRCode>XBAG</SSRCode> <Method>SSR</Method> </BookingInstructions> </ServiceDefinition> <ServiceDefinition ServiceDefinitionID="SPECIAL_NEED-BLND"> <Name>Blind Passenger</Name> <Descriptions> <Description> <Text>Request Service Animal if travelling with one</Text> </Description> <Description refs="ADULT_04"> <Text>Solicite servicio de animales si viaja con uno</Text> </Description> </Descriptions> <BookingInstructions> <SSRCode>BLND</SSRCode> </BookingInstructions> </ServiceDefinition> </ServiceDefinitionList> </DataLists>
MediaList |
---|
Here is where we put URLs that can be used to link to additional information such as rich media and other useful information for the customer.
<MediaList> <Media ListKey="Legal-Information"> <MediaLink>http://www.iberia.com/es/informacion-legal/</MediaLink> </Media> <Media ListKey="Cabin-features"> <MediaLink>https://www.iberia.com/es/un-nuevo-concepto-de-volar/</MediaLink> </Media> <Media ListKey="Media-Checked-Baggage"> <MediaLink>https://www.iberia.com/es/equipajes/franquicia-bodega/</MediaLink> </Media> </MediaList>
Examples of messages with complete flows can be downloaded from here.