Testing Best Practices: General Recommendations
Important! Travelport does not recommend testing on the Production system. If testing on Production is ABSOLUTELY necessary, please make sure you carefully read the best practice guidelines.
Information is provided for:
- Schema Validation on Pre-Production
- Data Refresh on Pre-Production
- Choosing Dates for Bookings
- Choosing Names for Passengers
- Cancelling Bookings
- Air Bookings
- Hotel Bookings
- Vehicle Bookings
Schema Validation on Pre-Production
The Pre-Production system provides schema validation. Whenever possible, testing should be performed on Pre-Production to ensure your requests are validated.
When testing on Production, if a request is missing a required value, the consequences are <null> errors.
Data Refresh on Pre-Production
Data is copied from Production to Pre-Production for each provider on a schedule.
- GDS providers: Galileo (1G) and Apollo (1V) are refreshed approximately every two months. Worldspan (1P) is refreshed approximately every week.
- Airline Content Hub (ACH): ACH suppliers, such as Air Canada, refresh their data on their own schedules. Note that ACH carrier test systems may have stale or minimal data.
- Rail Content Service (RCS): RCS suppliers, such as Amtrak and BeNe, refresh their data on their own schedules.
Note that ACH and RCS vendors do not load inventory 3 to 6 months ahead.
Impacts of Data Refresh
PNRs are lost after the refresh.
The following error is returned from when Universal API is unable to retrieve the PNR, either because the PNR was purged from the system or an invalid PNR locator was used.
<SOAP:Fault><faultcode>Server.Business</faultcode>
<faultstring>51001001 UTR PNR INVALID ADDRESS</faultstring>
<detail>
<common_v50_0:ErrorInfo xmlns:common_v50_0="http://www.travelport.com/schema/common_v50_0">
<common_v50_0:Code>6000</common_v50_0:Code>
<common_v50_0:Service>PNRSVC</common_v50_0:Service>
<common_v50_0:Type>Business</common_v50_0:Type>
<common_v50_0:Description>General Reservation service error.</common_v50_0:Description>
<common_v50_0:TransactionId>935CFBD30A0759D2570FB2EA40F96843</common_v50_0:TransactionId>
</common_v50_0:ErrorInfo>
</detail>
</SOAP:Fault>
The provider error is similar to:
<PNR><ERR><E><K>PNR</K><C>51001001</C><T> UTR PNR INVALID ADDRESS </T></E></ERR></PNR></response>
Choosing Dates for Bookings
Galileo, Apollo, and Worldspan systems cannot book beyond 331 days in Production, which is a system date range limit.
Use dates at least 6 to 9 months in the future for any bookings. Avoid peak holidays and busy periods, such as Christmas.
Attempt to use different dates when performing continuous testing.
Choosing Names for Passengers
Do not use famous names.
Follow the naming practice of using a surname, the word Galileo (or Apollo or Worldspan, as appropriate), and a first name. For example:
N.1GALILEOHUSSAIN/ALI.MR
Use of inappropriate passenger names in a PNR can lead to security scares.
Cancelling Bookings
Pre-Production System
Travelport recommends cancelling bookings made on Pre-Production to make sure:
- Inventory is available for other testers.
- Inventory is not used up before the system is refreshed.
Production System
If for any reason you are testing on the Production system, YOU MUST CANCEL YOUR BOOKING as soon as possible. These are live bookings and if you do not cancel them, you will be billed for them.
Consequences of Testing Errors on Production
If you book a PNR for a low-fare seat, even if you subsequently cancel it, the airline will release that seat but it may be at a higher fare. You can potentially be depriving some genuine passengers of the lower fare.
Uncontrolled creation of contract fares can cause sell errors, resulting in Agent Debit Memos, and having to financially recompense the airline.
Air Bookings
Important! Bookings made in Pre-Production are not live.
General Rules
NEVER book the last seat on any flight in Production or Pre-Production.
Note: Follow the Air Bookability workflow to reduce errors and improve customer satisfaction.
Pre-Production
- If you make a test booking using a Pseudo City Code (PCC) that is NOT a training or test PCC:
- Add “test booking” to the PhoneNumber element because it is visible to airlines. For example:
<PhoneNumber Number="71 68771066 TEST BOOKING" Type="Mobile"/> - Enter an OSI that states “test booking” in the PNR. For example:
<OSI Carrier="BA" Text="TEST BOOKING" xmlns="http://www.travelport.com/schema/common_50_0"/>
Note: An airline may ignore the OSI.
- Add “test booking” to the PhoneNumber element because it is visible to airlines. For example:
- Use well-known carriers in the market in which you are testing to get availability originating from the point of sale.
Note: The SupplierLocatorCode (airline confirmation) may not be returned in Pre-Production by the carrier immediately. In these cases, send a Universal Record Retrieve request; sometimes the SupplierLocatorCode is returned after a short delay. If it is still not returned, choose a different airline with which to test and contact your API Support representative.
- Use search modifiers to get relevant data (e.g., use time windows or flight type options to indicate direct vs indirect flights as opposed to retrieving all flights).
- Private/Negotiated/Account Code fares may not always be available on Pre-Production.
- Log booking sell failures along with the time stamp.
- Ensure you understand the following:
- Fares and different fare types.
- Search processing and the way in which flights are ranked based on availability and fares validity. An available seat does not mean that a valid fare exists and vice versa.
Airline Content Hub
Important! Bookings made in Pre-Production are not live.
Remember — our providers and vendors, as well as the traveling public, are our customers and partners, and we must treat their inventory with the greatest care or we risk losing the privilege to book their space for training purposes.
Market suggestions for testing in Pre-Production.
Carrier Code |
Carrier Name |
Markets |
---|---|---|
U2 |
EasyJet |
LGW-CPH,AMS-BFS, AMS-LPL, AMS-STN,ALC-MAN, EDI-PMI, AMS-BCN, LGW-AMS or AMS-BCN, CDG-LTN |
AC |
Air Canada |
YYZ-YVR, YEG-YYC, YYZ-AUH |
DD |
NokAir |
CNX-DMK , UTH-DMK, CNX-BKK |
LS |
Jet2 |
BFS-LBA , AMS-LBA, ALC-MAN, EDI-PMI |
JQ |
Jet Star |
MEL-SYD ,ADL-PER, MEL-DPS, PER-BKK |
HV/TO |
Transavia |
AMS-BCN, BRU-CPH, OST-ARI HV: AMS-BCN, LGW-AMS or AMS-BCN, CDG-LTN |
TR/DG/RI |
Tigerair |
SIN-PER, BKK-DPS, DMK-MAA |
FR |
RyanAir |
BCN-BRU, DUB-LIS |
WS |
WestJet |
DFW-YYC |
Hotel Bookings
Confirmation Numbers
On Pre-Production, vendors may not always return hotel confirmation numbers. In these cases, please choose a different hotel for testing.
Dates
Production
NEVER create a booking on Production for "today "or "tonight". You will get a cancellation fee if you fail to cancel before 16:00.
Do not book special, non-cancellation rates for hotels. Check the Hotel Rules for any bookings made on the Production system to ensure you cancel your booking BEFORE you are charged a fee.
Cancelling Hotel Segments
Cancel any bookings immediately using the appropriate cancel transaction.
Production
Make sure you get a cancellation acknowledgment from hotel vendor and/or a cancellation number for each segment.
Vehicle Bookings
Confirmation Numbers
On Pre-Production, vendors may not always return vehicle confirmation numbers. In these cases, please choose a different vendor for testing.
Vehicle Types
Production: Create bookings that use “economy” and “intermediate” vehicle types. Do not book luxury vehicles, which usually has limited inventory which will not be available for real customers if they are booked for testing.
Canceling Vehicle Segments
Cancel any bookings immediately using the appropriate cancel transaction.
Production
Make sure you get a cancellation acknowledgment from the vehicle vendor and/or a cancellation number for each segment.