1 2 3 4 <!-- HTTPHost:t2rl.net, skin:t2rl, Platform:live --><!DOCTYPE html> 5<html> 6<head> 7<meta charset="UTF-8"> 8<meta name="google-site-verification" content="lBFAK1H_LrxZo2sNU-Otgy7EVkiW61K75qTIkQryrys" /> 9<meta name="google-site-verification" content="tUO1f9-eBzd2Ekqbr8rBEoZp3VrrpamQhlR9pe7Y9DQ" /> 10<META NAME="Description" CONTENT="T2RL provide a view of airline information technology, Passenger Servicing Systems, PSS and Passenger Management Systems"> 11<META NAME="Keywords" CONTENT=" Airline IT technology research Passenger Servicing Systems, PSS, Passenger Management Systems"> 12<META NAME="author" CONTENT="T2RL"> 13<meta name="viewport" content="width=1080" /> 14<META NAME="robots" CONTENT="NOCACHE,NOARCHIVE,"> 15 16<link href="//fonts.googleapis.com/css?family=Open+Sans:300italic,300,400italic,400,600italic,600,700italic,700,800italic,800" rel="stylesheet" type="text/css"> 17 18 <!-- skin2: t2rl --> 19<title>T2RL - Contact</title> 20<link rel="shortcut icon" href="../images/t2rl-favicon.ico" > 21<LINK rel="stylesheet" type="text/css" href="../wrapper/t2rl/stylesv9.css?v=6"> 22<LINK rel="stylesheet" type="text/css" href="../wrapper/t2rl/GBmenu9.css">
23<script type="text/javascript" src="/js/jquery/jquery-3.7.1.min.js" charset="utf-8"></script>
vendor: 2 bytes, line 23
23
24<script type='text/javascript' src='../js/jquery-migrate.min.js?ver=1.2.1'></script>
24 25
26<script type="text/javascript"> 27var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); 28document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); 29</script>
vendor: 2 bytes, line 29
29
30<script type="text/javascript"> 31try { 32var pageTracker = _gat._getTracker("UA-9368578-1"); 33 34pageTracker._setDomainName("t2rl.net"); 35pageTracker._trackPageview(); 36} catch(err) {}</script>
vendor: 67 bytes, lines 36-38
36 37 38<script async src="https://www.googletagmanager.com/gtag/js?id=
38G-KQ145HKY0Y
vendor: 13 bytes, line 38
38"></script>
39<script> 40 window.dataLayer = window.dataLayer || []; 41 function gtag(){dataLayer.push(arguments);} 42 gtag('js', new Date()); 43 gtag('subscriber', 'not logged in/'); 44 gtag('config', 'G-KQ145HKY0Y'); 45</script>
45 46</head> 47<body class="Contact"> 48<div id=outerbox> 49<div id=supertopout> 50<div id=supertop> 51<div class=pmenu> 52 53</div> 54<div class=loginbox> 55 56<span class=orangetxt>You are not logged in</span>: <a href="https://www.t2rl.net/home/login">Client login</a> 57 58</div> 59</div></div> 60<div id=container0> 61<div id=container1> 62<div class=header> 63<div class=headerlogo2><a href="https://www.t2rl.net" alt="T2RL Home T2R Travel Technology Research Ltd." title="T2RL Home Travel Technology Research Ltd."><img src="/images/2026/t2rl4.png" width="120" alt="T2RL Home" border="0"/></a></div> 64</div> 65<div class=searchgif><table><tr><td> 66<form action="/service/results" method="get" name="SEARCH"> 67<input name="q" type="text" id="q" size="30" maxlength="100" class="bubble2" value=""></td><td> 68<INPUT type="image" src="/images/2020/mag1.png" class="nudge" value=""> 69</td></tr></table> 70</form></div> 71<div class=clear> </div> 72</div> 73<!-- container1 end --> 74 75<div id=container2> 76 77<nav id="top-menu"> 78 79<ul class="nav"> 80<li><a class="tab " href="/">HOME</a></li> 81<li><a class="tab " href="/analysis/">ANALYSIS &<br /> REPORTS</a> 82 <ul class="sub-menu"> 83 <li><a href=/analysis/>All Reports</a></li> 84 <li><a href=/analysis/default?nfa=2>First View</a></li> 85 <li><a href=/analysis/default?nfa=3>In-depth Analysis</a></li> 86<li><a href=/content/podcasts>Podcasts</a></li> 87<li><a href=/transformation/>Conference Panels</a></li> 88 </ul> 89</li> 90<li><a class="tab " href="../airline/">AIRLINES</a> 91<ul class="sub-menu"> 92 <li><a href=../airline/home?s=1>Airlines Home</a></li> 93 <li><a href=../airline/search>Airline Search</a></li> 94 <li><a href=../airline/data>Airline Data</a></li> 95 96 <li><a href=../airline/globaltrends>Data Trends</a> 97 <ul> 98 <li><a href=../airline/globaltrends>Global Trends</a></li> 99 <li><a href=../airline/regiontrends>Region Trends</a></li> 100 <li><a href=../airline/impact>Traffic Impact</a></li> 101 <li><a href=../airline/usatrend>USA Trend</a></li> 102 <li><a href=../airline/europetrend>Europe Trend</a></li> 103 <li><a href=../airline/recovery>Recovery Reports</a></li> 104 <li><a href=../airline/closedsuspended>Closed and Suspended</a></li> 105 <li><a href=../airline/closureimpact>Closure Impact</a></li> 106 <li><a href=../airline/volumes>Airline Volumes</a></li> 107 <li><a href=../airline/volumes-projected>Projected Volumes</a></li> 108 <li><a href=../vendor/latestvolumes>Latest Vendor Volumes</a></li> 109 </ul></li> 110 111 <li><a href=../airline/revenue>Revenues</a></li> 112 <li><a href=../airline/ecommerce>e-commerce</a></li> 113 <li><a href=../airline/migrations>System Migrations</a> 114 <ul> 115 <li><a href=../airline/migrations>PSS Migrations</a></li> 116 <li><a href=../airline/renewals>PSS Renewals</a></li> 117 <li><a href=../airline/implementations>PSS Implementations</a></li> 118 <li><a href=../vendor/pssmigration>PSS Migration Chart</a></li> 119 <li><a href=../airline/migrations-IBE>IBE Migrations</a></li> 120 <li><a href=../airline/migrations-RM>Revenue Management</a></li> 121 <li><a href=../airline/migrations-RA>Revenue Accounts</a></li> 122 <li><a href=../airline/migrations-FF>Loyalty</a></li> 123 <li><a href=../airline/migrations-NDC>NDC</a></li> 124 <li><a href=../airline/migrations-fails>Failed Migrations</a></li> 125 </ul></li> 126 <li><a href=../airline/volumes>Passenger Volumes</a></li> 127 <li><a href=../airline/impact>Pandemic Airline Impact</a></li> 128 <li><a href=../airline/volumes-int>Domestic / International Ratio</a></li> 129 <li><a href=../airline/pareto-rank>Regional Rank</a></li> 130 <li><a href=../airline/subsidiaries>Subsidiaries</a></li> 131 <li><a href=../airline/startupglobal>Startups</a></li> 132 <li><a href=../airline/Loyalty>Loyalty Programs</a></li> 133 <li><a href=../airline/alliance>Alliances</a></li> 134 <li><a href=../airline/groups>Groups</a></li> 135 <li><a href=../airline/ceased>Ceased Operations</a></li> 136 <li><a href=../service/download>Data Download</a></li> 137</ul> 138</li> 139<li><a class="tab " href="/applications/">APPLICATIONS</a> 140 <ul class="sub-menu"> 141 <li><a href=/applications/>Legacy</a></li> 142 <li><a href=/applications/transformation>Offer-Order-Settle-Deliver</a></li> 143 <li><a href=/transformation/>Transformation Videos</a></li> 144 </ul> 145</li> 146 147<li><a class="tab " href="/vendor/">VENDORS</a> 148<ul class="sub-menu"> 149 <li><a href=../vendor/>
149Vendors Home</a></li> 150 <li><a href=../vendor/pssmigration>System Migrations</a></li> 151 <li><a href=../vendor/volumes>Market View</a></li> 152 <li><a href=../vendor/share>Market Share</a></li> 153 <li><a href=../vendor/latestvolumes>Latest Volumes</a></li> 154 <li><a href=../vendor/pareto>PSS Pareto Chart</a></li> 155 <li><a href=../contracts/csearch>Contract Search (Premium)</a></li> 156</ul> 157</li> 158<li><a class="tab " href="../distribution/">DISTRIBUTION</a> 159<ul class="sub-menu"> 160 <li><a href=../distribution/>Distribution Home</a></li> 161 <li><a href=../distribution/global>Global</a></li> 162 <li><a href=../distribution/web>Online</a></li> 163 <li><a href=../distribution/ndcgds>GDS NDC</a></li> 164 <li><a href=../distribution/aggregators>Aggregators</a></li> 165 <li><a href=../distribution/ndc>NDC Vendors</a></li> 166 <li><a href=../distribution/reports>Reports</a></li> 167 <li><a href=../distribution/comparison>Comparisons</a></li> 168 <li><a href=../daas/>PREMIUM SECTION</a></li> 169</ul></li> 170<li><a class="tab " href="../reports/">MARKET<br /> SHARE</a> 171<ul class="sub-menu"> 172 <li><a href=../reports/>PSS & Commercial</a></li> 173 <li><a href=../reports/RMHome>Revenue Management</a></li> 174 <li><a href=../operations/>Operations Products</a></li> 175</ul> 176</li> 177</ul> 178</nav> 179 180</div>
181<script type='text/javascript' src='/js/superfish.js'></script>
vendor: 2 bytes, line 181
181
182<script type='text/javascript' src='/js/superfishin2.js'></script>
182 183<div class=clear> </div>
184<script> 185document.addEventListener('DOMContentLoaded', function () { 186 // Select all top-level link anchors inside your main menu that have sub-menus 187 const topLevelLinks = document.querySelectorAll('#top-menu ul.nav > li > a'); 188 189 topLevelLinks.forEach(link => { 190 // Check if this specific item actually has a drop-down menu attached 191 const hasSubmenu = link.nextElementSibling && link.nextElementSibling.classList.contains('sub-menu'); 192 193 if (hasSubmenu) { 194 link.addEventListener('touchstart', function (e) { 195 const parentLi = this.parentElement; 196 197 // If the dropdown isn't marked as open on touch yet, freeze navigation 198 if (parentLi && !parentLi.classList.contains('touch-open')) { 199 e.preventDefault(); 200 e.stopPropagation(); 201 202 // Close any other open submenus to prevent overlap bugs 203 document.querySelectorAll('#top-menu ul.nav > li.touch-open').forEach(openLi => { 204 if (openLi !== parentLi) { 205 openLi.classList.remove('touch-open'); 206 } 207 }); 208 209 // Open this dropdown container 210 parentLi.classList.add('touch-open'); 211 } 212 }, { passive: false }); 213 } 214 }); 215 216 // Tap anywhere outside the menu framework to close open panels 217 document.addEventListener('touchstart', function (e) { 218 if (!e.target.closest('#top-menu')) { 219 document.querySelectorAll('#top-menu ul.nav > li.touch-open').forEach(openLi => { 220 openLi.classList.remove('touch-open'); 221 }); 222 } 223 }); 224}); 225</script>
225 226<!-- container2 end --> 227 228</div> 229<!-- container0 end --> 230 231<div id=container4> 232<style> 233.content{position:relative;top:-10px} 234.headerlogo2{padding-top:20px} 235</style> 236<div class=content> 237<div class=clear> </div>
vendor: 85 bytes, lines 237-241
237 238 239 240<script src="https://www.google.com/recaptcha/api.js" async defer></script> 241
241<SCRIPT ID=clientEventHandlersJS LANGUAGE=javascript> 242<!-- 243 function checkForm() 244 { 245 if (document.form1.FirstName.value == "") {alert("Please write something in the First Name box"); document.form1.FirstName.focus(); return(false); } 246 if (document.form1.LastName.value == "") {alert("Please write something in the Last Name box"); document.form1.LastName.focus(); return(false); } 247 if (document.form1.Phone.value == "") {alert("Please add your phone number. Or just put 0 if you don't want anyone to phone you."); document.form1.Phone.focus(); return(false); } 248 if (document.form1.Email.value == "") { alert("Please fill in your email address"); document.form1.Email.focus(); return(false); } 249 if ((document.form1.Email.value.length < 8) || (document.form1.Email.value.indexOf('@') == -1) || (document.form1.Email.value.indexOf('.') == -1)){ alert("Please enter a valid email address");document.form1.Email.focus();return(false); } 250 if (grecaptcha.getResponse().length == 0) {alert('Please tick the Not A Robot checkbox'); return false; } 251 if (document.form1.Comments.value == "") {alert("Please write something in the Comments box"); document.form1.Comments.focus(); return(false); } 252 return(true); 253 } 254 function isValidEmail(str) 255 { 256 return (str.indexOf(".") > 2) && (str.indexOf("@") > 0); 257 } 258//--> 259</SCRIPT>
259 260 261 262 263<div align="center"><div class=contenttitle>Contact us</div></div><br> 264 265If you would like to contact us please fill in details below and we will get back to you.<br> 266<br> 267<form action="sendmail" method="post" name="form1" onSubmit="return checkForm()"> 268<input type="Hidden" name="HTTPHost" value="t2rl.net"> 269<input type="Hidden" name="Source" value="/service/contact.asp"> 270<input type="Hidden" name="Formtype" value="Contact"> 271<input type="Hidden" name="LoginValue" value=""> 272<input type="Hidden" name="Referring page" value=""> 273<table cellspacing="7" cellpadding="0"> 274<tr> 275<td>First Name</td> 276<td><input type=text name="FirstName" size=30 maxlength=50> *</td><td rowspan="8"> 277<img src="../images/postbox-t.gif" width="144" height="200" alt="" border="0"> 278</td> 279</tr> 280<tr> 281<td>Last Name</td> 282<td><input type=text name="LastName" size=30 maxlength=50> *</td> 283</tr> 284<tr> 285<td>Company</td> 286<td><input type=text name="Company" size=30 maxlength=50></td> 287</tr> 288<tr> 289<td>Position</td> 290<td><input type=text name="Position" size=30 maxlength=50></td> 291</tr> 292<tr> 293<td>Location</td> 294<td><input type=text name="Address" size=30 maxlength=100></td> 295</tr> 296<tr> 297<td>Country</td> 298<td><input type=text name="Country" size=30 maxlength=50></td> 299</tr> 300<tr> 301<td>Phone</td> 302<td><input type=text name="Phone" size=30 maxlength=30> *</td> 303</tr> 304<tr> 305<td>Email</td> 306<td><input type="email" name="Email" size=30 maxlength=100 required="required"> *</td> 307</tr> 308<tr><td valign="top">Comments</td><td colspan="2"><textarea cols="60" rows="10" name="Comments"></textarea>*</td></tr> 309<tr> 310<td></td> 311<td colspan="2" align="center"><div class="g-recaptcha" data-sitekey="6Ldn6CIUAAAAAKP7gYX9i5iVa2K1xgSKrpgIsnn-"></div> 312 <br/> 313 <input type="submit" value="Submit"></td> 314</tr> 315</table> 316</form> 317<br><br> 318For sales and subscriptions enquiries please contact <a href=http://www.t2rl.com/contact/>Jane Atkinson and Nick Moore</a> / 319sales AT t2rl.com 320<style> 321div#container4{width:600px !important;} 322</style> 323</div> 324 </div> 325 </div></div> 326<!-- container4 end --> 327 328<div class=clear> </div> 329<div class=footer1> 330<div class=footspan> 331 332 <a href="https://www.t2rl.com/insights/">Subscribe</a> | <a href=https://www.t2rl.com/contact/>Contact us</a> | <a href="https://www.t2rl.com/privacy-policy/" target="_blank">Privacy</a> | <a href=../content/glossary>Glossary</a> | <a href=../home/terms>Terms</a> | <a href="../service/account">Manage Account</a> | <a href="https://www.t2rl.com" target="_blank">About</a> 333</div></div> 334 335<div class=footer2><div class="copyright">©2026 T2RL. 'T2RL' & 'Travel Technology Research' are registered trademarks. No part of this site or accompanying data may be used without permission. 336</div><br> 337<!-- outerbox end --> 338 339 340<br /><br /> 341</div> 342
343<script type="text/javascript" id="cookieinfo" src="/js/cookieinfo.min.js"></script>
343 344 345
345<script type='text/javascript' src='../js/f24.js'></script>
345 346 347</body> 348</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.