Private/Corporate Fares
These refer to confidential or negotiated airline fares that are accessible only to specific agencies or partners under contractual agreements with Virgin Atlantic. These fares often offer better pricing or flexible conditions compared to public fares and may require authentication or identification through an agency code.
Flow Process
- 1. AirShoppingRQ - Shop by FareSubTypeCode and FareTypeCode (For example Charity/758). and NegotiatedCode returned.
- 2. OfferPriceRS - FareTypeCode and NegotiatedCode are returned in the FareComponent
XML Samples
Charity (Private Fare)
File
Download
Created
Modified
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
Corporate (Corporate Fare)
File
Download
Created
Modified
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
09-December-2025
Useful Information:
- At the moment, you can only shop for one fare at a time
- During reshop, you cannot switch to a different fare type. The reshop process only allows you to reprice within the same fare category, so moving from Charity to Corporate, Marine, or any other private fare type is not supported
- For Marine, you do not need to provide a vessel name. SEA is enough
How to Implement Private/Corporate Fares
AirShoppingRQ
You need to update FareSubTypeCode AND FareTypeCode in AirShoppingRQ.
<OfferCriteria xmlns="http://www.iata.org/IATA/2015/EASD/00/IATA_OffersAndOrdersCommonTypes"><FareCriteria>
<FareSubTypeCode>Charity</FareSubTypeCode>
<FareTypeCode>758</FareTypeCode>
<PrefLevel>
<PrefLevelCode>Required</PrefLevelCode>
</PrefLevel>
</FareCriteria>
</ProgramCriteria>
</OfferCriteria>
Click here
to access AirShoppingRQ Technical Specification. See the update for FareSubTypeCode AND FareTypeCode.
AirShoppingRS
You need to update FareTypeCode AND NegotiatedCode in AirShoppingRS.
<FareDetail>
<FareComponent>
<CancelRestrictions>
<AllowedModificationInd>false</AllowedModificationInd>
<DescText>ANY TIME CANCELLATIONS NOT PERMITTED - LHR-JNB</DescText>
</CancelRestrictions>
<ChangeRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<DescText>LHR-JNB</DescText>
<Fee>
<Amount CurCode="GBP">300.00</Amount>
</Fee>
<JourneyStageCode>Prior To Departure</JourneyStageCode>
</ChangeRestrictions>
<ChangeRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<DescText>LHR-JNB</DescText>
<Fee>
<Amount CurCode="GBP">300.00</Amount>
</Fee>
<JourneyStageCode>After Departure</JourneyStageCode>
</ChangeRestrictions>
<FareBasisCode>ZGEEB8JA</FareBasisCode>
<FareTypeCode>Corporate</FareTypeCode>
<NegotiatedCode>70G</NegotiatedCode>
<PaxSegmentRefID>SEG1</PaxSegmentRefID>
<PriceClassRefID>PC1</PriceClassRefID>
</FareComponent>
<PaxRefID>ADULT_1</PaxRefID>
</FareDetail>
Click here
to access AirShoppingRS Technical Specification. See the update for FareTypeCode AND NegotiatedCode.
OfferPriceRS
You need to update:
1. OtherOffers / FareTypeCode AND NegotiatedCode in OfferPriceRS
2. PricedOffer / FareTypeCode AND NegotiatedCode in OfferPriceRS.
<FareDetail>
<FareComponent>
<CancelRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">430.00</Amount>
</Fee>
<JourneyStageCode>Prior To Departure</JourneyStageCode>
</CancelRestrictions>
<CancelRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">430.00</Amount>
</Fee>
<JourneyStageCode>After Departure</JourneyStageCode>
</CancelRestrictions>
<ChangeRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">0.00</Amount>
</Fee>
<JourneyStageCode>Prior To Departure</JourneyStageCode>
</ChangeRestrictions>
<ChangeRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">0.00</Amount>
</Fee>
<JourneyStageCode>After Departure</JourneyStageCode>
</ChangeRestrictions>
<FareBasisCode>ZGEEB8JA</FareBasisCode>
<FareTypeCode>Corporate</FareTypeCode>
<NegotiatedCode>70G</NegotiatedCode>
<PaxSegmentRefID>SEG1</PaxSegmentRefID>
<PriceClassRefID>PC1</PriceClassRefID>
</FareComponent>
<PaxRefID>ADULT_1</PaxRefID>
</FareDetail>
Click here
to access OfferPriceRS Technical Specification. See the update for FareTypeCode AND NegotiatedCode.
OrderCreate/OrderRetrieve/OrderChange - OrderViewRS
The following needs to be added:
1. Indicate the type of fare in the fare component
2. Included fare component details within OrderItem
PriceClassList is added
<PriceClassList>
<PriceClass>
<FareBasisCode>KGERD8JA</FareBasisCode>
<Name>Premium</Name>
<PriceClassID>PC1</PriceClassID>
</PriceClass>
</PriceClassList>
FareDetail is aslo added within OrderItem
<FareDetail>
<FareComponent>
<CancelRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">430.00</Amount>
</Fee>
<JourneyStageCode>Prior To Departure</JourneyStageCode>
</CancelRestrictions>
<CancelRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">430.00</Amount>
</Fee>
<JourneyStageCode>After Departure</JourneyStageCode>
</CancelRestrictions>
<ChangeRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">300.00</Amount>
</Fee>
<JourneyStageCode>Prior To Departure</JourneyStageCode>
</ChangeRestrictions>
<ChangeRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">300.00</Amount>
</Fee>
<JourneyStageCode>After Departure</JourneyStageCode>
</ChangeRestrictions>
<FareBasisCode>ZGEEB8JA</FareBasisCode>
<FareTypeCode>Corporate</FareTypeCode>
<NegotiatedCode>70G</NegotiatedCode>
<PaxSegmentRefID>SEG1</PaxSegmentRefID>
<PriceClassRefID>PC1</PriceClassRefID>
</FareComponent>
<PaxRefID>ADULT_1</PaxRefID>
</FareDetail>
OrderQuoteRS
You need to update:
1. Offer / FareTypeCode AND NegotiatedCode
2. RequotedOffer / FareTypeCode AND NegotiatedCode
<FareDetail>
<FareComponent>
<CancelRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">430.0</Amount>
</Fee>
<JourneyStageCode>Prior To Departure</JourneyStageCode>
</CancelRestrictions>
<CancelRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">430.0</Amount>
</Fee>
<JourneyStageCode>After Departure</JourneyStageCode>
</CancelRestrictions>
<ChangeRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">300.0</Amount>
</Fee>
<JourneyStageCode>Prior To Departure</JourneyStageCode>
</ChangeRestrictions>
<ChangeRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">300.0</Amount>
</Fee>
<JourneyStageCode>After Departure</JourneyStageCode>
</ChangeRestrictions>
<FareBasisCode>ZGERD8JA</FareBasisCode>
<FareTypeCode>Charity</FareTypeCode>
<NegotiatedCode>758</NegotiatedCode>
<PaxSegmentRefID>SEG2</PaxSegmentRefID>
<PriceClassRefID>PC2</PriceClassRefID>
</FareComponent>
<PaxRefID>ADULT_1</PaxRefID>
<Price>
<BaseAmount CurCode="GBP">1402.00</BaseAmount>
<TaxSummary>
<Tax>
<Amount CurCode="GBP">224.00</Amount>
<Country>
<CountryCode>GB</CountryCode>
</Country>
<DescText>United Kingdom Air Passenger Duty APD</DescText>
<TaxCode>GB</TaxCode>
</Tax>
<Tax>
<Amount CurCode="GBP">51.72</Amount>
<Country>
<CountryCode>GB</CountryCode>
</Country>
<DescText>United Kingdom Passenger Service Charge Departures</DescText>
<TaxCode>UB</TaxCode>
</Tax>
<Tax>
<Amount CurCode="GBP">295.00</Amount>
<DescText>VS YQ surcharge</DescText>
<TaxCode>YQ</TaxCode>
</Tax>
<Tax>
<Amount CurCode="GBP">24.00</Amount>
<DescText>VS YR surcharge</DescText>
<TaxCode>YR</TaxCode>
</Tax>
<TotalTaxAmount CurCode="GBP">594.72</TotalTaxAmount>
</TaxSummary>
<TotalAmount CurCode="GBP">1996.72</TotalAmount>
</Price>
</FareDetail>
Click here
to access OrderQuoteRS Technical Specification. See the update for FareTypeCode AND NegotiatedCode.
OrderReshopRS
You need to update:
1. ReshopResults / FareTypeCode AND NegotiatedCode
<FareDetail>
<FareComponent>
<CancelRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">430.0</Amount>
</Fee>
<JourneyStageCode>Prior To Departure</JourneyStageCode>
</CancelRestrictions>
<CancelRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">430.0</Amount>
</Fee>
<JourneyStageCode>After Departure</JourneyStageCode>
</CancelRestrictions>
<ChangeRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">300.0</Amount>
</Fee>
<JourneyStageCode>Prior To Departure</JourneyStageCode>
</ChangeRestrictions>
<ChangeRestrictions>
<AllowedModificationInd>true</AllowedModificationInd>
<Fee>
<Amount CurCode="GBP">300.0</Amount>
</Fee>
<JourneyStageCode>After Departure</JourneyStageCode>
</ChangeRestrictions>
<FareBasisCode>ZGERD8JA</FareBasisCode>
<FareTypeCode>Charity</FareTypeCode>
<NegotiatedCode>758</NegotiatedCode>
<PaxSegmentRefID>SEG2</PaxSegmentRefID>
<PriceClassRefID>PC2</PriceClassRefID>
</FareComponent>
<PaxRefID>ADULT_1</PaxRefID>
<Price>
<BaseAmount CurCode="GBP">1402.00</BaseAmount>
<TaxSummary>
<Tax>
<Amount CurCode="GBP">224.00</Amount>
<Country>
<CountryCode>GB</CountryCode>
</Country>
<DescText>United Kingdom Air Passenger Duty APD</DescText>
<TaxCode>GB</TaxCode>
</Tax>
<Tax>
<Amount CurCode="GBP">51.72</Amount>
<Country>
<CountryCode>GB</CountryCode>
</Country>
<DescText>United Kingdom Passenger Service Charge Departures</DescText>
<TaxCode>UB</TaxCode>
</Tax>
<Tax>
<Amount CurCode="GBP">295.00</Amount>
<DescText>VS YQ surcharge</DescText>
<TaxCode>YQ</TaxCode>
</Tax>
<Tax>
<Amount CurCode="GBP">24.00</Amount>
<DescText>VS YR surcharge</DescText>
<TaxCode>YR</TaxCode>
</Tax>
<TotalTaxAmount CurCode="GBP">594.72</TotalTaxAmount>
</TaxSummary>
<TotalAmount CurCode="GBP">1996.72</TotalAmount>
</Price>
</FareDetail>
Click here
to access OrderReshopRS Technical Specification. See the update for FareTypeCode AND NegotiatedCode.