I am having some trouble with EnhancedSeatMapRQ
, as the seats for certain airlines (e.g. AC, AA, etc.) do not return any BasePrice
or Price
node. When checked with Sabre software, some of these seats do have a cost charged upon booking.
My understanding is in these situations, the CommercialName
value is supposed to help lookup the price. With that said, there is no reference in the response that indicates any price, for anything.
Here is one with a price node:
<Offer entitledInd="false">
<CommercialName>SEAT ASSIGNMENT</CommercialName>
<BasePrice>
<TotalAmount currencyCode="CAD">27.12</TotalAmount>
<Taxes>
<Tax currencyCode="CAD">3.12</Tax>
<TaxTypeRef>taxTypeDetail_1</TaxTypeRef>
</Taxes>
</BasePrice>
</Offer>
And one without it:
<Offer entitledInd="true">
<CommercialName>ADVANCE SEAT SELECTION</CommercialName>
<OfferItemId>offerItem_1</OfferItemId>
<TravellerID>1</TravellerID>
</Offer>
Specifies the commercial name associated with matched price.
is all that the docs say about the CommercialName
node.
Please guide me through the process of pricing these seats, as it's crucial to a proper seat selection process.
UPDATE: We have noticed that all the Offer
nodes without a Price
or BasePrice
, are inside seats with chargeableInd
set to false
. With that said, this happens with a significant number of the Airlines, and if unresolved, will render our seat selection counter-productive.
So Sabre team got back to me, and clarified the issue.
When sending a SeatMapQueryEnhanced
, the /CabinDefinition/RBD
is supposed to have the @ProgramSystemCode
, received from BFM.
Example:
<Flight origin="YVR" destination="DFW">
<DepartureDate>2022-07-13</DepartureDate>
<Operating carrier="AA">392</Operating>
<Marketing carrier="AA">392</Marketing>
<ArrivalDate>2022-07-13</ArrivalDate>
</Flight>
<CabinDefinition>
<RBD>N</RBD>
</CabinDefinition>
Where N is extracted form the ProgramSystemCode
attribute of that Segment
node.