www.aircanada.com
Open in
urlscan Pro
23.73.242.34
Public Scan
Submitted URL: https://t.mail.aircanada.com/r/?id=h57441b4b,1666ceb7,fdb64f0
Effective URL: https://www.aircanada.com/ca/en/aco/home/book/travel-news-and-updates/2020/covid-19.html
Submission: On February 03 via manual from NZ — Scanned from CA
Effective URL: https://www.aircanada.com/ca/en/aco/home/book/travel-news-and-updates/2020/covid-19.html
Submission: On February 03 via manual from NZ — Scanned from CA
Form analysis
5 forms found in the DOMGET /ca/en/aco/home/search-results.html
<form class="search-form input-group ng-pristine ng-valid" action="/ca/en/aco/home/search-results.html" method="get" data-x-place-focus-on-invalid-field="" role="search">
<!---->
<div class="search-form-container" data-ng-if="!cc.showSlimHeader()">
<label class="search-holder label" for="searchbox_01" data-se-id="nav_search_info_label">
<span class="sr-only">Search site</span>
</label>
<input name="q" type="text" class="txt-box txt-search-box" id="searchbox_01" placeholder="FIND" value="" role="textbox">
<button type="submit" class="ac-icon search btn-ghost" data-analytics-track="mega_navigation" data-analytics-val="Find" role="button"><span class="sr-only">Find</span></button>
</div><!---->
<!---->
<!---->
</form>
GET /ca/en/aco/home/search-results.html
<form class="search-form input-group ng-pristine ng-valid" action="/ca/en/aco/home/search-results.html" method="get" data-x-place-focus-on-invalid-field="" role="search">
<!---->
<div class="search-form-container" data-ng-if="!cc.showSlimHeader()">
<label class="search-holder label" for="searchbox_011" data-se-id="nav_search_info_label">
<span class="sr-only">Search site</span>
</label>
<input name="q" type="text" class="txt-box txt-search-box" id="searchbox_011" placeholder="FIND" value="" role="textbox">
<button type="submit" class="ac-icon search btn-ghost" data-analytics-track="mega_navigation" data-analytics-val="Find" role="button"><span class="sr-only">Find</span></button>
</div><!---->
<!---->
<!---->
</form>
Name: checkedForm — #
<form action="#" name="checkedForm" id="form-container" class="ng-pristine ng-valid-datepicker ng-valid ng-valid-required">
<fieldset ng-show="!isEditted" aria-hidden="false">
<div class="row">
<div class="form-group" id="vaccination">
<div class="can-toggle round-border">
<input id="e" type="checkbox" ng-model="notVaccination" aria-checked="true" class="ng-pristine ng-untouched ng-valid ng-empty" tabindex="0" aria-invalid="false">
<label for="e">
<div class="can-toggle__label-text">Are you fully vaccinated?</div>
<div class="can-toggle__switch" data-checked="Yes" data-unchecked="No" aria-label="Yes"></div>
</label>
</div>
</div>
<div class="form-group">
<div class="ae-Dropdown filter" click-outside="clickOutside('tripCategory')" id="tripCategory">
<div class="ae-Dropdown-title no-border" data-ng-click="toggleDropdown($event)" tabindex="0">
<span></span>
<span class="sr-only">Trip type</span>
<span class="ae-Dropdown-title-liCopy">Round-trip</span>
</div>
<ul class="ae-Dropdown-list">
<!---->
<li data-value="One-way" data-index="$index" ng-class="{'is-selected' : tripCategory === filter.id}" data-ng-click="onDropDownSelected($event, 'tripCategory', filter.id)" ng-repeat="filter in labels.form.tripCategory.values" tabindex="0">
One-way</li><!---->
<li data-value="Round-trip" data-index="$index" ng-class="{'is-selected' : tripCategory === filter.id}" data-ng-click="onDropDownSelected($event, 'tripCategory', filter.id)" ng-repeat="filter in labels.form.tripCategory.values"
tabindex="0" class="is-selected">Round-trip</li><!---->
</ul>
</div>
</div>
<div class="form-group">
<div class="ae-Dropdown filter " id="connectionCategory" click-outside="clickOutside('connectionCategory')">
<div class="ae-Dropdown-title no-border" data-ng-click="toggleDropdown($event)" tabindex="0">
<span></span>
<span class="sr-only">Connection type</span>
<span class="ae-Dropdown-title-liCopy">No connections</span>
</div>
<ul class="ae-Dropdown-list">
<!---->
<li data-value="No connections" data-index="$index" ng-class="{'is-selected' : connectionCategory === filter.id}" data-ng-click="filter.disabled || onDropDownSelected($event, 'connectionCategory', filter.id)" ng-disabled="filter.disabled"
ng-repeat="filter in labels.form.connectionCategory.values" tabindex="0" aria-disabled="false" class="is-selected">No connections </li><!---->
<li data-value="Connections both ways" data-index="$index" ng-class="{'is-selected' : connectionCategory === filter.id}" data-ng-click="filter.disabled || onDropDownSelected($event, 'connectionCategory', filter.id)"
ng-disabled="filter.disabled" ng-repeat="filter in labels.form.connectionCategory.values" tabindex="0" aria-disabled="false">Connections both ways </li><!---->
<li data-value="Outbound connection" data-index="$index" ng-class="{'is-selected' : connectionCategory === filter.id}" data-ng-click="filter.disabled || onDropDownSelected($event, 'connectionCategory', filter.id)"
ng-disabled="filter.disabled" ng-repeat="filter in labels.form.connectionCategory.values" tabindex="0" aria-disabled="false">Outbound connection </li><!---->
<li data-value="Return connection" data-index="$index" ng-class="{'is-selected' : connectionCategory === filter.id}" data-ng-click="filter.disabled || onDropDownSelected($event, 'connectionCategory', filter.id)"
ng-disabled="filter.disabled" ng-repeat="filter in labels.form.connectionCategory.values" tabindex="0" aria-disabled="false">Return connection </li><!---->
</ul>
</div>
</div>
<div class="form-group">
<div class="ae-Dropdown filter " id="nationalityCategory" click-outside="clickOutsideNationality()">
<input id="nationalitySearchInput" ng-model="nationalitySearch" ng-change="loadNationalityDropdown(nationalitySearch)" placeholder="Passport" class="ng-pristine ng-untouched ng-valid ng-empty" tabindex="0" aria-invalid="false">
<div class="ae-Dropdown-title no-border" data-ng-click="focus($event)" tabindex="0">
<span></span>
<span class="sr-only">Nationality</span>
<span class="ae-Dropdown-title-liCopy">Passport: CAN</span>
</div>
<ul class="ae-Dropdown-list">
<!---->
</ul>
</div>
</div>
</div>
<div class="row">
<!-- Departure From Field -->
<p class="upper hide-on-connection" ng-class="{'both-way-connection' : connectionCategory === 'both-connection', 'return-connection' : connectionCategory === 'return-connection'}" }"="">Departure</p>
<div class="form-group " ng-class="{'both-way-connection' : connectionCategory === 'both-connection',
'return-connection' : connectionCategory === 'return-connection'}" id="departure-from-container">
<div class="managed-wrapper mat-bkmg-location-field" data-dev-managed="location-departure-from.html" data-dev-managed-scroll-x="false" data-dev-managed-title="From"
data-dev-managed-label="Enter the city name, airport code, province or country/region." data-dev-keyvent-id="departure-from-0" data-location-list-id="departure-from-list">
<div class="managed-display dropdown" data-dev-element="dcManaged.wrapper" role="application">
<div class="clearfix" data-ng-transclude="">
<div id="departure-from-list-label" class="glyph-input-wrapper" data-x-edit="">
<label class="sr-only" for="departure-from">From</label>
<i ng-show="originArrowDownVisible" class="glyph glyph-right ac-icon ac-icon-navigation-arrow-down bkmg-icon ng-hide" aria-hidden="true" tabindex="-1"></i>
<div class="glyph-holder glyph-right-holder form-control sr-only-flights-from-0" data-x-edit-passive="" tabindex="0" id="departure-from-overlay"
data-ng-class="{'ng-invalid' : !segments.departureFrom.type && segments.departureFrom.typed}">
<!---->
<!----><span class="default" data-ng-if="!segments.departureFrom.type && !segments.departureFrom.typed" tabindex="-1"> From </span><!---->
<!---->
</div>
<input type="text" class="form-control ng-pristine ng-untouched ng-valid ng-empty glyph-hidden" id="departure-from" data-se-id="origin-0" placeholder="From" autocomplete="off" value="" spellcheck="false"
aria-activedescendant="flightLocationListOrginId0-locationListItem-0" aria-autocomplete="both" aria-label="Origin" aria-expanded="false" aria-owns="flightLocationListOrginId0" aria-required="true" role="textbox" autocorrect="off"
autocapitalize="off" data-ng-model-options="{'debounce' : cMagnetFlights.debounceAmt}" data-ng-model="segments.departureFrom.typed" data-x-edit-active="" data-x-place-clear="segments.departureFrom"
data-location-list-id="departure-from-list" data-dev-keyvent="" data-ng-blur="checkLocationValidity('departureFrom')" tabindex="0" aria-invalid="false"><button class="btn-ghost" aria-hidden="true" tabindex="-1"
data-x-clear-button="" style="width: 40px;"><span class="ac-icon ac-icon-close ac-1nx"></span><span class="sr-only">Clear</span></button>
</div>
</div>
<div class="managed-target-wrapper no-scroll-x" data-dev-element="dcManaged.scrollWrapper" data-ng-class="{'no-scroll': !dcManaged.allowScroll, 'no-scroll-x': !dcManaged.allowScrollX, 'mat-bkmg-control': dcManaged.isMatBKMGControl}">
<!---->
<div class="managed-target" data-dev-element="dcManaged.scrollable" data-ng-include="dcManaged.target">
<!---->
<!--<div data-dev-search-history data-dev-search-location-mode="airport" data-x-target="redeemCtrl.origin" data-dev-keyvent-id="departure-from" data-ng-if="(!redeemCtrl.origin.typed || redeemCtrl.origin.typed.length < checkJapChnMagnetLength)"></div>-->
<!---->
<div class="location-options" data-ng-if="(!segments.departureFrom.typed || segments.departureFrom.typed.length < checkJapChnMagnetLength)">
<div class="location-options">
<div class="location-no-result-wrapper message-container mini">
<div class="location-no-result message warning" id="flightLocationListOrginIdErrorData"> Enter the city name, airport code, province or country/region. </div>
</div>
</div>
</div><!---->
<span id="flightLocationListOrginId0UpdatedData" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0Status" class="sr-only" role="status" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0ScreenReaderData" class="sr-only" tabindex="-1">Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or
down the list of airports provided to make your selection.</span>
<!----><span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" class="sr-only" aria-atomic="true" tabindex="-1"></span><!---->
<!----><span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" class="sr-only" tabindex="-1"></span><!---->
<!---->
<!---->
</div>
</div>
</div>
</div>
</div>
<script type="text/ng-template" id="location-departure-from.html"> <div data-dev-search-location="segments.departureFrom.typed" data-location-list-id="departure-from-list" data-x-target="segments.departureFrom" data-dev-keyvent-id="departure-from-0" data-dev-search-location-mode="airport" data-ng-if="segments.departureFrom.typed && segments.departureFrom.typed.length >= checkJapChnMagnetLength"></div>
<!--<div data-dev-search-history data-dev-search-location-mode="airport" data-x-target="redeemCtrl.origin" data-dev-keyvent-id="departure-from" data-ng-if="(!redeemCtrl.origin.typed || redeemCtrl.origin.typed.length < checkJapChnMagnetLength)"></div>-->
<div class="location-options" data-ng-if="(!segments.departureFrom.typed || segments.departureFrom.typed.length < checkJapChnMagnetLength)">
<div class="location-options">
<div class="location-no-result-wrapper message-container mini">
<div class="location-no-result message warning" id="flightLocationListOrginId{{$index}}ErrorData">
Enter the city name, airport code, province or country/region.
</div>
</div>
</div>
</div>
<span id="flightLocationListOrginId0UpdatedData" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0Status" class="sr-only" role="status" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0ScreenReaderData" class="sr-only" tabindex="-1">Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or down the list of airports provided to make your selection.</span>
<span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" class="sr-only" tabindex="-1"></span>
<span data-ng-if="cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" role="alert" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span data-ng-if="cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" role="alert" class="sr-only" aria-atomic="true" tabindex="-1"></span>
</script>
<!-- Departure Connection Field -->
<img ng-hide="!checkVisibility('departure','connection')" src="/content/dam/aircanada/portal/images/travelReadyHub/ic-arrow-right.svg" alt="" class="sherpa-icon to-blue ng-hide" aria-hidden="true">
<div id="departure-connection-container" ng-hide="!checkVisibility('departure','connection')" class="form-group ng-hide"
ng-class="{'both-way-connection' : connectionCategory === 'both-connection', 'return-connection' : connectionCategory === 'return-connection'}" aria-hidden="true">
<div class="managed-wrapper mat-bkmg-location-field" data-dev-managed="location-departure-connection.html" data-dev-managed-scroll-x="false" data-dev-managed-title="Connection"
data-dev-managed-label="Enter the city name, airport code, province or country/region." data-dev-keyvent-id="departure-connection-0" data-location-list-id="departure-connection-list">
<div class="managed-display dropdown" data-dev-element="dcManaged.wrapper" role="application">
<div class="clearfix" data-ng-transclude="">
<div id="departure-connection-list-label" class="glyph-input-wrapper" data-x-edit="">
<label class="sr-only" for="departure-connection">Connect</label>
<i ng-show="originArrowDownVisible" class="glyph glyph-right ac-icon ac-icon-navigation-arrow-down bkmg-icon ng-hide" aria-hidden="true" tabindex="-1"></i>
<div class="glyph-holder glyph-right-holder form-control sr-only-flights-connection-0" data-x-edit-passive="" tabindex="0" id="departure-connection-overlay"
data-ng-class="{'ng-invalid' : !segments.departureConnection.type && segments.departureConnection.typed}">
<!---->
<!----><span class=" default" data-ng-if="!segments.departureConnection.type && !segments.departureConnection.typed" tabindex="-1"> Connect </span><!---->
<!---->
</div>
<input type="text" class="form-control ng-pristine ng-untouched ng-valid ng-empty glyph-hidden" id="departure-connection" data-se-id="origin-0" placeholder="Connection" autocomplete="off" value="" spellcheck="false"
aria-activedescendant="flightLocationListOrginId0-locationListItem-0" aria-autocomplete="both" aria-label="Connection" aria-expanded="false" aria-owns="flightLocationListOrginId0" aria-required="true" role="textbox"
autocorrect="off" autocapitalize="off" data-ng-model-options="{'debounce' : cMagnetFlights.debounceAmt}" data-ng-model="segments.departureConnection.typed" data-x-edit-active="" data-x-place-clear="segments.departureConnection"
data-location-list-id="departure-connection-list" data-dev-keyvent="" data-ng-blur="checkLocationValidity('departureConnection')" tabindex="0" aria-invalid="false"><button class="btn-ghost" aria-hidden="true" tabindex="-1"
data-x-clear-button="" style="width: 40px;"><span class="ac-icon ac-icon-close ac-1nx"></span><span class="sr-only">Clear</span></button>
</div>
</div>
<div class="managed-target-wrapper no-scroll-x" data-dev-element="dcManaged.scrollWrapper" data-ng-class="{'no-scroll': !dcManaged.allowScroll, 'no-scroll-x': !dcManaged.allowScrollX, 'mat-bkmg-control': dcManaged.isMatBKMGControl}">
<!---->
<div class="managed-target" data-dev-element="dcManaged.scrollable" data-ng-include="dcManaged.target">
<!---->
<!--<div data-dev-search-history data-dev-search-location-mode="airport" data-x-target="redeemCtrl.origin" data-dev-keyvent-id="departure-from" data-ng-if="(!redeemCtrl.origin.typed || redeemCtrl.origin.typed.length < checkJapChnMagnetLength)"></div>-->
<!---->
<div class="location-options" data-ng-if="(!segments.departureConnection.typed || segments.departureConnection.typed.length < checkJapChnMagnetLength)">
<div class="location-options">
<div class="location-no-result-wrapper message-container mini">
<div class="location-no-result message warning" id="flightLocationListOrginIdErrorData"> Enter the city name, airport code, province or country/region. </div>
</div>
</div>
</div><!---->
<span id="flightLocationListOrginId0UpdatedData" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0Status" class="sr-only" role="status" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0ScreenReaderData" class="sr-only" tabindex="-1">Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or
down the list of airports provided to make your selection.</span>
<!----><span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" class="sr-only" aria-atomic="true" tabindex="-1"></span><!---->
<!----><span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" class="sr-only" tabindex="-1"></span><!---->
<!---->
<!---->
</div>
</div>
</div>
</div>
</div>
<script type="text/ng-template" id="location-departure-connection.html"> <div data-dev-search-location="segments.departureConnection.typed" data-location-list-id="departure-from-list" data-x-target="segments.departureConnection" data-dev-keyvent-id="departure-from-0" data-dev-search-location-mode="airport" data-ng-if="segments.departureConnection.typed && segments.departureConnection.typed.length >= checkJapChnMagnetLength"></div>
<!--<div data-dev-search-history data-dev-search-location-mode="airport" data-x-target="redeemCtrl.origin" data-dev-keyvent-id="departure-from" data-ng-if="(!redeemCtrl.origin.typed || redeemCtrl.origin.typed.length < checkJapChnMagnetLength)"></div>-->
<div class="location-options" data-ng-if="(!segments.departureConnection.typed || segments.departureConnection.typed.length < checkJapChnMagnetLength)">
<div class="location-options">
<div class="location-no-result-wrapper message-container mini">
<div class="location-no-result message warning" id="flightLocationListOrginId{{$index}}ErrorData">
Enter the city name, airport code, province or country/region.
</div>
</div>
</div>
</div>
<span id="flightLocationListOrginId0UpdatedData" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0Status" class="sr-only" role="status" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0ScreenReaderData" class="sr-only" tabindex="-1">Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or down the list of airports provided to make your selection.</span>
<span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" class="sr-only" tabindex="-1"></span>
<span data-ng-if="cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" role="alert" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span data-ng-if="cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" role="alert" class="sr-only" aria-atomic="true" tabindex="-1"></span>
</script>
<!-- Departure To -->
<img src="/content/dam/aircanada/portal/images/travelReadyHub/ic-arrow-right.svg" alt="" class="sherpa-icon to-blue ng-hide" ng-hide="tripCategory === 'ROUND_TRIP' && connectionCategory === 'no-connection'" aria-hidden="true">
<img src="/content/dam/aircanada/portal/images/travelReadyHub/ic-rt.svg" alt="" class="sherpa-icon to-blue" ng-show="tripCategory === 'ROUND_TRIP' && connectionCategory === 'no-connection'" aria-hidden="false">
<!-- <img ng-hide="!checkVisibility('return','from')" src="/content/dam/aircanada/portal/images/travelReadyHub/ic-arrow-left.svg" alt="" class="sherpa-icon to-blue"> -->
<div id="departure-to-container" class=" form-group " ng-class="{'both-way-connection' : connectionCategory === 'both-connection',
'return-connection' : connectionCategory === 'return-connection'}">
<div class="managed-wrapper mat-bkmg-location-field" data-dev-managed="location-departure-to.html" data-dev-managed-scroll-x="false" data-dev-managed-title="To"
data-dev-managed-label="Enter the city name, airport code, province or country/region." data-dev-keyvent-id="departure-to-0" data-location-list-id="departure-to-list">
<div class="managed-display dropdown" data-dev-element="dcManaged.wrapper" role="application">
<div class="clearfix" data-ng-transclude="">
<div id="departure-to-list-label" class="glyph-input-wrapper" data-x-edit="">
<label class="sr-only" for="departure-to">To</label>
<i ng-show="originArrowDownVisible" class="glyph glyph-right ac-icon ac-icon-navigation-arrow-down bkmg-icon ng-hide" aria-hidden="true" tabindex="-1"></i>
<div class="glyph-holder glyph-right-holder form-control sr-only-flights-to-0" data-x-edit-passive="" tabindex="0" id="departure-to-overlay"
data-ng-class="{'ng-invalid' : !segments.departureTo.type && segments.departureTo.typed}">
<!---->
<!----><span class="default" data-ng-if="!segments.departureTo.type && !segments.departureTo.typed" tabindex="-1"> To </span><!---->
<!---->
</div>
<input type="text" class="form-control ng-pristine ng-untouched ng-valid ng-empty glyph-hidden" id="departure-to" data-se-id="origin-0" placeholder="To" autocomplete="off" value="" spellcheck="false"
aria-activedescendant="flightLocationListOrginId0-locationListItem-0" aria-autocomplete="both" aria-label="Destination" aria-expanded="false" aria-owns="flightLocationListOrginId0" aria-required="true" role="textbox"
autocorrect="off" autocapitalize="off" data-ng-model-options="{'debounce' : cMagnetFlights.debounceAmt}" data-ng-model="segments.departureTo.typed" data-x-edit-active="" data-x-place-clear="departureTo"
data-location-list-id="departure-to-list" data-dev-keyvent="" data-ng-blur="checkLocationValidity('departureTo')" tabindex="0" aria-invalid="false"><button class="btn-ghost" aria-hidden="true" tabindex="-1" data-x-clear-button=""
style="width: 40px;"><span class="ac-icon ac-icon-close ac-1nx"></span><span class="sr-only">Clear</span></button>
</div>
</div>
<div class="managed-target-wrapper no-scroll-x" data-dev-element="dcManaged.scrollWrapper" data-ng-class="{'no-scroll': !dcManaged.allowScroll, 'no-scroll-x': !dcManaged.allowScrollX, 'mat-bkmg-control': dcManaged.isMatBKMGControl}">
<!---->
<div class="managed-target" data-dev-element="dcManaged.scrollable" data-ng-include="dcManaged.target">
<!---->
<!--<div data-dev-search-history data-dev-search-location-mode="airport" data-x-target="redeemCtrl.origin" data-dev-keyvent-id="departure-from" data-ng-if="(!redeemCtrl.origin.typed || redeemCtrl.origin.typed.length < checkJapChnMagnetLength)"></div>-->
<!---->
<div class="location-options" data-ng-if="(!segments.departureTo.typed || segments.departureTo.typed.length < checkJapChnMagnetLength)">
<div class="location-options">
<div class="location-no-result-wrapper message-container mini">
<div class="location-no-result message warning" id="flightLocationListOrginIdErrorData"> Enter the city name, airport code, province or country/region. </div>
</div>
</div>
</div><!---->
<span id="flightLocationListOrginId0UpdatedData" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0Status" class="sr-only" role="status" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0ScreenReaderData" class="sr-only" tabindex="-1">Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or
down the list of airports provided to make your selection.</span>
<!----><span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" class="sr-only" aria-atomic="true" tabindex="-1"></span><!---->
<!----><span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" class="sr-only" tabindex="-1"></span><!---->
<!---->
<!---->
</div>
</div>
</div>
</div>
</div>
<script type="text/ng-template" id="location-departure-to.html"> <div data-dev-search-location="segments.departureTo.typed" data-location-list-id="departure-from-list" data-x-target="segments.departureTo" data-dev-keyvent-id="departure-from-0" data-dev-search-location-mode="airport" data-ng-if="segments.departureTo.typed && segments.departureTo.typed.length >= checkJapChnMagnetLength"></div>
<!--<div data-dev-search-history data-dev-search-location-mode="airport" data-x-target="redeemCtrl.origin" data-dev-keyvent-id="departure-from" data-ng-if="(!redeemCtrl.origin.typed || redeemCtrl.origin.typed.length < checkJapChnMagnetLength)"></div>-->
<div class="location-options" data-ng-if="(!segments.departureTo.typed || segments.departureTo.typed.length < checkJapChnMagnetLength)">
<div class="location-options">
<div class="location-no-result-wrapper message-container mini">
<div class="location-no-result message warning" id="flightLocationListOrginId{{$index}}ErrorData">
Enter the city name, airport code, province or country/region.
</div>
</div>
</div>
</div>
<span id="flightLocationListOrginId0UpdatedData" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0Status" class="sr-only" role="status" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0ScreenReaderData" class="sr-only" tabindex="-1">Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or down the list of airports provided to make your selection.</span>
<span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" class="sr-only" tabindex="-1"></span>
<span data-ng-if="cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" role="alert" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span data-ng-if="cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" role="alert" class="sr-only" aria-atomic="true" tabindex="-1"></span>
</script>
<!-- Depart date -->
<div ng-class="{'flex-break' : tripCategory === 'ROUND_TRIP' || (tripCategory !== 'ROUND_TRIP' && connectionCategory !== 'no-connection')}" class="flex-break"></div>
<img src="/content/dam/aircanada/portal/images/travelReadyHub/ic-calendar.svg" alt="" class="sherpa-icon push-right to-blue isNewLine"
ng-class="{'isNewLine' : tripCategory === 'ROUND_TRIP' || (tripCategory !== 'ROUND_TRIP' && connectionCategory !== 'no-connection')}">
<div id="departure-date-container" class="form-group dates" ng-class="{'both-way-connection' : connectionCategory === 'both-connection'}">
<div class="managed-wrapper" data-dev-managed="single-calendar-past-date.html" data-dev-managed-scroll="false" data-dev-managed-title="Date" data-dev-keyvent-id="flightDate">
<div class="managed-display dropdown" data-dev-element="dcManaged.wrapper" role="application">
<div class="clearfix" data-ng-transclude="">
<div id="flightDate_wrapper" class="glyph-input-wrapper date-input-wrapper" data-x-edit="">
<div id="flightDateLabel">
<label for="flightDate" class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
<span class="form-label-text ng-hide" ng-hide="segments.departureDate" aria-hidden="Thu Feb 03 2022 18:57:33 GMT+0000 (GMT)"></span>
<span ng-show="!segments.departureDate" class="form-error-item ng-hide" aria-hidden="true" aria-live="polite" aria-relevant="all">
<span class="sr-only">Departure</span>
</span>
<div class="form-element-wrapper">
<div class="glyph-holder glyph-left-holder form-control" data-x-edit-passive="" tabindex="0">
<!----><span class="value" data-ng-if="segments.departureDate">
<span class="code">Departure</span>
<span class="day">03 Feb</span>
</span><!---->
<!---->
</div>
<input type="text" name="flightDate" id="flightDate" placeholder="Departure" autocomplete="off" value=""
class="glyph-input glyph-left-input form-control glyph-hidden ng-pristine ng-untouched ng-valid-datepicker ng-not-empty ng-valid ng-valid-required" data-ng-model="segments.departureDate" data-dev-keyvent=""
data-dev-model-register="" data-x-edit-active="" aria-required="true" required="" aria-invalid="false" data-jq-start-date="2022-02-03T18:57:32.601Z" data-jq-end-date="2022-02-03T18:57:32.603Z"
data-ng-blur="checkLocationValidity('departureDate')" tabindex="0">
</div>
</label>
</div>
</div>
</div>
<div class="managed-target-wrapper no-scroll" data-dev-element="dcManaged.scrollWrapper" data-ng-class="{'no-scroll': !dcManaged.allowScroll, 'no-scroll-x': !dcManaged.allowScrollX, 'mat-bkmg-control': dcManaged.isMatBKMGControl}"><!---->
<div class="managed-target" data-dev-element="dcManaged.scrollable" data-ng-include="dcManaged.target">
<div class="datepicker-wrapper one" data-se-id="magnet_status_number_datepicker">
<div class="datepicker" data-dev-datepicker="flightDate" data-dev-datepicker-start="2022-02-03T18:57:32.601Z" data-dev-datepicker-init="2022-02-03T18:57:32.601Z" data-dev-datepicker-stop="2025-02-02T18:57:32.603Z" tabindex="-1">
<ul class="list-unstyled list-months"><!----></ul>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script type="text/ng-template" id="single-calendar-past-date.html"> <div class="datepicker-wrapper one" data-se-id="magnet_status_number_datepicker">
<div class="datepicker" data-dev-datepicker="flightDate"
data-dev-datepicker-start="{{datepicker_start}}"
data-dev-datepicker-init="{{datepicker_today}}"
data-dev-datepicker-stop="{{datepicker_end_later}}"
tabindex="-1">
</div>
</div>
</script>
<!-- END: Depart date -->
<!-- Return -->
<!-- Origin Field -->
<div ng-hide="connectionCategory !== 'return-connection'" class="flex-break2 ng-hide" aria-hidden="true"></div>
<p class="upper hide-on-connection" ng-class="{'both-way-connection' : connectionCategory === 'both-connection', 'return-connection' : connectionCategory === 'return-connection'}" }"="">Return</p>
<div ng-hide="!checkVisibility('return','from')" class="form-group ng-hide" ng-class="{'both-way-connection' : connectionCategory === 'both-connection', 'return-connection' : connectionCategory === 'return-connection'}" aria-hidden="true">
<div class="managed-wrapper mat-bkmg-location-field" data-dev-managed="location-return-from.html" data-dev-managed-scroll-x="false" data-dev-managed-title="To"
data-dev-managed-label="Enter the city name, airport code, province or country/region." data-dev-keyvent-id="departure-to-0" data-location-list-id="departure-to-list">
<div class="managed-display dropdown" data-dev-element="dcManaged.wrapper" role="application">
<div class="clearfix" data-ng-transclude="">
<div id="departure-to-list-label" class="glyph-input-wrapper" data-x-edit="">
<label class="sr-only" for="departure-to">From</label>
<i ng-show="originArrowDownVisible" class="glyph glyph-right ac-icon ac-icon-navigation-arrow-down bkmg-icon ng-hide" aria-hidden="true" tabindex="-1"></i>
<div class="glyph-holder glyph-right-holder form-control sr-only-flights-to-0" data-x-edit-passive="" tabindex="0" id="departure-to-overlay"
data-ng-class="{'ng-invalid' : !segments.returnFrom.type && segments.returnFrom.typed}">
<!---->
<!----><span class="default" data-ng-if="!segments.returnFrom.type && !segments.returnFrom.typed" tabindex="-1"> From </span><!---->
<!---->
</div>
<input type="text" class="form-control ng-pristine ng-untouched ng-valid ng-empty glyph-hidden" id="departure-to" data-se-id="origin-0" placeholder="To" autocomplete="off" value="" spellcheck="false"
aria-activedescendant="flightLocationListOrginId0-locationListItem-0" aria-autocomplete="both" aria-label="Origin" aria-expanded="false" aria-owns="flightLocationListOrginId0" aria-required="true" role="textbox" autocorrect="off"
autocapitalize="off" data-ng-model-options="{'debounce' : cMagnetFlights.debounceAmt}" data-ng-model="segments.returnFrom.typed" data-x-edit-active="" data-x-place-clear="returnFrom" data-location-list-id="departure-to-list"
data-dev-keyvent="" data-ng-blur="checkLocationValidity('returnFrom')" tabindex="0" aria-invalid="false"><button class="btn-ghost" aria-hidden="true" tabindex="-1" data-x-clear-button="" style="width: 40px;"><span
class="ac-icon ac-icon-close ac-1nx"></span><span class="sr-only">Clear</span></button>
</div>
</div>
<div class="managed-target-wrapper no-scroll-x" data-dev-element="dcManaged.scrollWrapper" data-ng-class="{'no-scroll': !dcManaged.allowScroll, 'no-scroll-x': !dcManaged.allowScrollX, 'mat-bkmg-control': dcManaged.isMatBKMGControl}">
<!---->
<div class="managed-target" data-dev-element="dcManaged.scrollable" data-ng-include="dcManaged.target">
<!---->
<!--<div data-dev-search-history data-dev-search-location-mode="airport" data-x-target="redeemCtrl.origin" data-dev-keyvent-id="departure-from" data-ng-if="(!redeemCtrl.origin.typed || redeemCtrl.origin.typed.length < checkJapChnMagnetLength)"></div>-->
<!---->
<div class="location-options" data-ng-if="(!segments.returnFrom.typed || segments.returnFrom.typed.length < checkJapChnMagnetLength)">
<div class="location-options">
<div class="location-no-result-wrapper message-container mini">
<div class="location-no-result message warning" id="flightLocationListOrginIdErrorData"> Enter the city name, airport code, province or country/region. </div>
</div>
</div>
</div><!---->
<span id="flightLocationListOrginId0UpdatedData" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0Status" class="sr-only" role="status" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0ScreenReaderData" class="sr-only" tabindex="-1">Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or
down the list of airports provided to make your selection.</span>
<!----><span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" class="sr-only" aria-atomic="true" tabindex="-1"></span><!---->
<!----><span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" class="sr-only" tabindex="-1"></span><!---->
<!---->
<!---->
</div>
</div>
</div>
</div>
</div>
<script type="text/ng-template" id="location-return-from.html"> <div data-dev-search-location="segments.returnFrom.typed" data-location-list-id="departure-from-list" data-x-target="segments.returnFrom" data-dev-keyvent-id="departure-from-0" data-dev-search-location-mode="airport" data-ng-if="segments.returnFrom.typed && segments.returnFrom.typed.length >= checkJapChnMagnetLength"></div>
<!--<div data-dev-search-history data-dev-search-location-mode="airport" data-x-target="redeemCtrl.origin" data-dev-keyvent-id="departure-from" data-ng-if="(!redeemCtrl.origin.typed || redeemCtrl.origin.typed.length < checkJapChnMagnetLength)"></div>-->
<div class="location-options" data-ng-if="(!segments.returnFrom.typed || segments.returnFrom.typed.length < checkJapChnMagnetLength)">
<div class="location-options">
<div class="location-no-result-wrapper message-container mini">
<div class="location-no-result message warning" id="flightLocationListOrginId{{$index}}ErrorData">
Enter the city name, airport code, province or country/region.
</div>
</div>
</div>
</div>
<span id="flightLocationListOrginId0UpdatedData" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0Status" class="sr-only" role="status" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0ScreenReaderData" class="sr-only" tabindex="-1">Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or down the list of airports provided to make your selection.</span>
<span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" class="sr-only" tabindex="-1"></span>
<span data-ng-if="cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" role="alert" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span data-ng-if="cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" role="alert" class="sr-only" aria-atomic="true" tabindex="-1"></span>
</script>
<!-- Reutrn Connection Field -->
<img ng-hide="!checkVisibility('return','connection')" src="/content/dam/aircanada/portal/images/travelReadyHub/ic-arrow-right.svg" alt="" class="sherpa-icon to-blue ng-hide" aria-hidden="true">
<div id="return-connection-container" ng-hide="!checkVisibility('return','connection')" class="form-group ng-hide"
ng-class="{'both-way-connection' : connectionCategory === 'both-connection', 'return-connection' : connectionCategory === 'return-connection'}" aria-hidden="true">
<div class="managed-wrapper mat-bkmg-location-field" data-dev-managed="location-return-connection.html" data-dev-managed-scroll-x="false" data-dev-managed-title="Connection"
data-dev-managed-label="Enter the city name, airport code, province or country/region." data-dev-keyvent-id="return-connection-0" data-location-list-id="return-connection-list">
<div class="managed-display dropdown" data-dev-element="dcManaged.wrapper" role="application">
<div class="clearfix" data-ng-transclude="">
<div id="return-connection-list-label" class="glyph-input-wrapper" data-x-edit="">
<label class="sr-only" for="return-connection">Connect</label>
<i ng-show="originArrowDownVisible" class="glyph glyph-right ac-icon ac-icon-navigation-arrow-down bkmg-icon ng-hide" aria-hidden="true" tabindex="-1"></i>
<div class="glyph-holder glyph-right-holder form-control sr-only-flights-connection-0" data-x-edit-passive="" tabindex="0" id="return-connection-overlay"
data-ng-class="{'ng-invalid' : !segments.returnConnection.type && segments.returnConnection.typed}">
<!---->
<!----><span class=" default" data-ng-if="!segments.returnConnection.type && !segments.returnConnection.typed" tabindex="-1"> Connect </span><!---->
<!---->
</div>
<input type="text" class="form-control ng-pristine ng-untouched ng-valid ng-empty glyph-hidden" id="return-connection" data-se-id="origin-0" placeholder="Connection" autocomplete="off" value="" spellcheck="false"
aria-activedescendant="flightLocationListOrginId0-locationListItem-0" aria-autocomplete="both" aria-label="Conection" aria-expanded="false" aria-owns="flightLocationListOrginId0" aria-required="true" role="textbox" autocorrect="off"
autocapitalize="off" data-ng-model-options="{'debounce' : cMagnetFlights.debounceAmt}" data-ng-model="segments.returnConnection.typed" data-x-edit-active="" data-x-place-clear="segments.returnConnection"
data-location-list-id="return-connection-list" data-dev-keyvent="" data-ng-blur="checkLocationValidity('returnConnection')" tabindex="0" aria-invalid="false"><button class="btn-ghost" aria-hidden="true" tabindex="-1"
data-x-clear-button="" style="width: 40px;"><span class="ac-icon ac-icon-close ac-1nx"></span><span class="sr-only">Clear</span></button>
</div>
</div>
<div class="managed-target-wrapper no-scroll-x" data-dev-element="dcManaged.scrollWrapper" data-ng-class="{'no-scroll': !dcManaged.allowScroll, 'no-scroll-x': !dcManaged.allowScrollX, 'mat-bkmg-control': dcManaged.isMatBKMGControl}">
<!---->
<div class="managed-target" data-dev-element="dcManaged.scrollable" data-ng-include="dcManaged.target">
<!---->
<!--<div data-dev-search-history data-dev-search-location-mode="airport" data-x-target="redeemCtrl.origin" data-dev-keyvent-id="return-from" data-ng-if="(!redeemCtrl.origin.typed || redeemCtrl.origin.typed.length < checkJapChnMagnetLength)"></div>-->
<!---->
<div class="location-options" data-ng-if="(!segments.returnConnection.typed || segments.returnConnection.typed.length < checkJapChnMagnetLength)">
<div class="location-options">
<div class="location-no-result-wrapper message-container mini">
<div class="location-no-result message warning" id="flightLocationListOrginIdErrorData"> Enter the city name, airport code, province or country/region. </div>
</div>
</div>
</div><!---->
<span id="flightLocationListOrginId0UpdatedData" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0Status" class="sr-only" role="status" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0ScreenReaderData" class="sr-only" tabindex="-1">Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or
down the list of airports provided to make your selection.</span>
<!----><span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" class="sr-only" aria-atomic="true" tabindex="-1"></span><!---->
<!----><span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" class="sr-only" tabindex="-1"></span><!---->
<!---->
<!---->
</div>
</div>
</div>
</div>
</div>
<script type="text/ng-template" id="location-return-connection.html"> <div data-dev-search-location="segments.returnConnection.typed" data-location-list-id="return-from-list" data-x-target="segments.returnConnection" data-dev-keyvent-id="return-from-0" data-dev-search-location-mode="airport" data-ng-if="segments.returnConnection.typed && segments.returnConnection.typed.length >= checkJapChnMagnetLength"></div>
<!--<div data-dev-search-history data-dev-search-location-mode="airport" data-x-target="redeemCtrl.origin" data-dev-keyvent-id="return-from" data-ng-if="(!redeemCtrl.origin.typed || redeemCtrl.origin.typed.length < checkJapChnMagnetLength)"></div>-->
<div class="location-options" data-ng-if="(!segments.returnConnection.typed || segments.returnConnection.typed.length < checkJapChnMagnetLength)">
<div class="location-options">
<div class="location-no-result-wrapper message-container mini">
<div class="location-no-result message warning" id="flightLocationListOrginId{{$index}}ErrorData">
Enter the city name, airport code, province or country/region.
</div>
</div>
</div>
</div>
<span id="flightLocationListOrginId0UpdatedData" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0Status" class="sr-only" role="status" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0ScreenReaderData" class="sr-only" tabindex="-1">Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or down the list of airports provided to make your selection.</span>
<span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" class="sr-only" tabindex="-1"></span>
<span data-ng-if="cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" role="alert" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span data-ng-if="cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" role="alert" class="sr-only" aria-atomic="true" tabindex="-1"></span>
</script>
<!-- Return To -->
<img ng-hide="!checkVisibility('return','to')" src="/content/dam/aircanada/portal/images/travelReadyHub/ic-arrow-right.svg" alt="" class="sherpa-icon to-blue ng-hide" aria-hidden="true">
<div ng-hide="!checkVisibility('return','to')" class="form-group ng-hide" ng-class="{'both-way-connection' : connectionCategory === 'both-connection', 'return-connection' : connectionCategory === 'return-connection'}" aria-hidden="true">
<div class="managed-wrapper mat-bkmg-location-field" data-dev-managed="location-return-to.html" data-dev-managed-scroll-x="false" data-dev-managed-title="To"
data-dev-managed-label="Enter the city name, airport code, province or country/region." data-dev-keyvent-id="return-to-0" data-location-list-id="return-to-list">
<div class="managed-display dropdown" data-dev-element="dcManaged.wrapper" role="application">
<div class="clearfix" data-ng-transclude="">
<div id="return-to-list-label" class="glyph-input-wrapper" data-x-edit="">
<label class="sr-only" for="return-to">To</label>
<i ng-show="originArrowDownVisible" class="glyph glyph-right ac-icon ac-icon-navigation-arrow-down bkmg-icon ng-hide" aria-hidden="true" tabindex="-1"></i>
<div class="glyph-holder glyph-right-holder form-control sr-only-flights-to-0" data-x-edit-passive="" tabindex="0" id="return-to-overlay" data-ng-class="{'ng-invalid' : !segments.returnTo.type && segments.returnTo.typed}">
<!---->
<!----><span class="default" data-ng-if="!segments.returnTo.type && !segments.returnTo.typed" tabindex="-1"> To </span><!---->
<!---->
</div>
<input type="text" class="form-control ng-pristine ng-untouched ng-valid ng-empty glyph-hidden" id="return-to" data-se-id="origin-0" placeholder="To" autocomplete="off" value="" spellcheck="false"
aria-activedescendant="flightLocationListOrginId0-locationListItem-0" aria-autocomplete="both" aria-label="Destination" aria-expanded="false" aria-owns="flightLocationListOrginId0" aria-required="true" role="textbox"
autocorrect="off" autocapitalize="off" data-ng-model-options="{'debounce' : cMagnetFlights.debounceAmt}" data-ng-model="segments.returnTo.typed" data-x-edit-active="" data-x-place-clear="returnTo"
data-location-list-id="return-to-list" data-dev-keyvent="" data-ng-blur="checkLocationValidity('returnTo')" tabindex="0" aria-invalid="false"><button class="btn-ghost" aria-hidden="true" tabindex="-1" data-x-clear-button=""
style="width: 40px;"><span class="ac-icon ac-icon-close ac-1nx"></span><span class="sr-only">Clear</span></button>
</div>
</div>
<div class="managed-target-wrapper no-scroll-x" data-dev-element="dcManaged.scrollWrapper" data-ng-class="{'no-scroll': !dcManaged.allowScroll, 'no-scroll-x': !dcManaged.allowScrollX, 'mat-bkmg-control': dcManaged.isMatBKMGControl}">
<!---->
<div class="managed-target" data-dev-element="dcManaged.scrollable" data-ng-include="dcManaged.target">
<!---->
<!--<div data-dev-search-history data-dev-search-location-mode="airport" data-x-target="redeemCtrl.origin" data-dev-keyvent-id="return-from" data-ng-if="(!redeemCtrl.origin.typed || redeemCtrl.origin.typed.length < checkJapChnMagnetLength)"></div>-->
<!---->
<div class="location-options" data-ng-if="(!segments.returnTo.typed || segments.returnTo.typed.length < checkJapChnMagnetLength)">
<div class="location-options">
<div class="location-no-result-wrapper message-container mini">
<div class="location-no-result message warning" id="flightLocationListOrginIdErrorData"> Enter the city name, airport code, province or country/region. </div>
</div>
</div>
</div><!---->
<span id="flightLocationListOrginId0UpdatedData" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0Status" class="sr-only" role="status" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0ScreenReaderData" class="sr-only" tabindex="-1">Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or
down the list of airports provided to make your selection.</span>
<!----><span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" class="sr-only" aria-atomic="true" tabindex="-1"></span><!---->
<!----><span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" class="sr-only" tabindex="-1"></span><!---->
<!---->
<!---->
</div>
</div>
</div>
</div>
</div>
<script type="text/ng-template" id="location-return-to.html"> <div data-dev-search-location="segments.returnTo.typed" data-location-list-id="return-from-list" data-x-target="segments.returnTo" data-dev-keyvent-id="return-from-0" data-dev-search-location-mode="airport" data-ng-if="segments.returnTo.typed && segments.returnTo.typed.length >= checkJapChnMagnetLength"></div>
<!--<div data-dev-search-history data-dev-search-location-mode="airport" data-x-target="redeemCtrl.origin" data-dev-keyvent-id="return-from" data-ng-if="(!redeemCtrl.origin.typed || redeemCtrl.origin.typed.length < checkJapChnMagnetLength)"></div>-->
<div class="location-options" data-ng-if="(!segments.returnTo.typed || segments.returnTo.typed.length < checkJapChnMagnetLength)">
<div class="location-options">
<div class="location-no-result-wrapper message-container mini">
<div class="location-no-result message warning" id="flightLocationListOrginId{{$index}}ErrorData">
Enter the city name, airport code, province or country/region.
</div>
</div>
</div>
</div>
<span id="flightLocationListOrginId0UpdatedData" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0Status" class="sr-only" role="status" aria-atomic="true" tabindex="-1"></span>
<span id="flightLocationListOrginId0ScreenReaderData" class="sr-only" tabindex="-1">Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or down the list of airports provided to make your selection.</span>
<span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span data-ng-if="!cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" class="sr-only" tabindex="-1"></span>
<span data-ng-if="cMagnetFlights.isSafari" id="flightLocationListOrginId0ElementPosition" role="alert" class="sr-only" aria-atomic="true" tabindex="-1"></span>
<span data-ng-if="cMagnetFlights.isSafari" id="flightLocationListOrginId0SingleElement" role="alert" class="sr-only" aria-atomic="true" tabindex="-1"></span>
</script>
<!-- [START] Return date -->
<div ng-hide="!checkVisibility('return','connection')" ng-class="{'flex-break' : tripCategory === 'ROUND_TRIP' || (tripCategory !== 'ROUND_TRIP' && connectionCategory !== 'no-connection')}" aria-hidden="true" class="ng-hide flex-break">
</div>
<img ng-hide="!checkVisibility('return','connection')" src="/content/dam/aircanada/portal/images/travelReadyHub/ic-calendar.svg" alt="" class="sherpa-icon push-right to-blue ng-hide isNewLine"
ng-class="{'isNewLine' : tripCategory === 'ROUND_TRIP' || (tripCategory !== 'ROUND_TRIP' && connectionCategory !== 'no-connection')}" aria-hidden="true">
<div id="return-date-container" ng-hide="!checkVisibility('return','date')" class="form-group dates" ng-class="{'both-way-connection' : connectionCategory === 'both-connection'}" aria-hidden="false">
<div class="managed-wrapper" data-dev-managed="single-calendar-past-date-return.html" data-dev-managed-scroll="false" data-dev-managed-title="Date" data-dev-keyvent-id="returnFlightDate">
<div class="managed-display dropdown" data-dev-element="dcManaged.wrapper" role="application">
<div class="clearfix" data-ng-transclude="">
<div id="returnFlightDate_wrapper" class="glyph-input-wrapper date-input-wrapper" data-x-edit="">
<div id="returnFlightDateLabel">
<label for="returnFlightDate" class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
<span class="form-label-text ng-hide" ng-hide="segments.returnDate" aria-hidden="Thu Feb 10 2022 18:57:33 GMT+0000 (GMT)"></span>
<span ng-show="!segments.returnDate" class="form-error-item ng-hide" aria-hidden="true" aria-live="polite" aria-relevant="all">
<span class="sr-only">Return</span>
</span>
<div class="form-element-wrapper">
<div class="glyph-holder glyph-left-holder form-control" data-x-edit-passive="" tabindex="0">
<!----><span class="value" data-ng-if="segments.returnDate">
<span class="code">Return</span>
<span class="day">10 Feb</span>
</span><!---->
<!---->
</div>
<input type="text" name="returnFlightDate" id="returnFlightDate" placeholder="Return" autocomplete="off" value=""
class="glyph-input glyph-left-input form-control glyph-hidden ng-pristine ng-untouched ng-valid-datepicker ng-not-empty ng-valid ng-valid-required" data-ng-model="segments.returnDate" data-dev-keyvent=""
data-dev-model-register="" data-x-edit-active="" aria-required="true" required="" aria-invalid="false" data-jq-start-date=""2022-02-03T18:57:33.313Z"" data-jq-end-date="2022-02-03T18:57:32.603Z"
data-ng-blur="checkLocationValidity('returnDate')" tabindex="0">
</div>
</label>
</div>
</div>
</div>
<div class="managed-target-wrapper no-scroll" data-dev-element="dcManaged.scrollWrapper" data-ng-class="{'no-scroll': !dcManaged.allowScroll, 'no-scroll-x': !dcManaged.allowScrollX, 'mat-bkmg-control': dcManaged.isMatBKMGControl}"><!---->
<div class="managed-target" data-dev-element="dcManaged.scrollable" data-ng-include="dcManaged.target">
<div class="datepicker-wrapper one" data-se-id="magnet_status_number_datepicker">
<div class="datepicker" data-dev-datepicker="returnFlightDate" data-dev-datepicker-start=""2022-02-03T18:57:33.313Z"" data-dev-datepicker-init="2022-02-03T18:57:32.601Z" data-dev-datepicker-stop="2025-02-02T18:57:32.603Z"
tabindex="-1">
<ul class="list-unstyled list-months"><!----></ul>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script type="text/ng-template" id="single-calendar-past-date-return.html"> <div class="datepicker-wrapper one" data-se-id="magnet_status_number_datepicker">
<div class="datepicker" data-dev-datepicker="returnFlightDate"
data-dev-datepicker-start="{{datepicker_return_start}}"
data-dev-datepicker-init="{{datepicker_today}}"
data-dev-datepicker-stop="{{datepicker_end_later}}"
tabindex="-1">
</div>
</div>
</script>
<!-- [END] Depart date -->
<!-- Find button -->
<div class="form-group find-btn">
<div class="button section">
<div class="back-container">
<button type="button" ng-click="sherpaSearch()" class="btn btn-blue btn-primary pull-right" ng-disabled="isFetching" tabindex="0">
<span ng-hide="isFetching">Find</span>
<img class="icon ng-hide" ng-show="isFetching" src="/content/dam/aircanada/portal/images/loyalty/icon/oval.png" alt="spinner icon" aria-hidden="true">
</button>
</div>
</div>
</div>
</div>
<div id="booking-magnet-error-holder" class="booking-magnet-error-holder bottom-arrow top-positioned" ng-class="{'right-positioned': errorPosition.left ==='auto' , 'left-positioned': errorPosition.right==='auto' }" aria-polite="true"
aria-atomic="true" style="display: block !important; right: auto; left: auto; visibility: hidden;"
ng-style="{ 'right': errorPosition.right ? errorPosition.right :'auto', 'left': errorPosition.left ? errorPosition.left :'auto' ,'top': errorPosition.top, 'visibility': !errorVisible ? 'hidden' : 'visible' }">
<div class="error-content popup-error" id="popup-error-grid">
<div class="form-grid error-grid info-row clearfix" tabindex="0">
<div class="info-icon error-icon"><span class="ac ac-icon ac-warning ac-2x"></span></div>
<div class="info-desc error-desc">
<div class="error-label err-label-display" id="bookingMagnetPopupErrorId_0">
<div class="error-msgs"></div>
</div>
</div>
</div>
</div>
</div>
</fieldset>
<fieldset class="read-only ng-hide" ng-show="isEditted" aria-hidden="true">
<div class="form-group">
<p>
<span>Round-trip</span>
<span></span><span class="divider" ng-show="tripCategory==='ROUND_TRIP'" aria-hidden="false"> to </span>
<span ng-show="tripCategory==='ROUND_TRIP'" aria-hidden="false" class=""></span>
</p>
<p><span>Connections</span><span>No connections</span></p>
<p>
<span>Travel dates</span><span>03 Feb </span>
<span ng-show="tripCategory==='ROUND_TRIP'" aria-hidden="false" class="">- 10 Feb</span>
</p>
<p><span>Vaccination status</span><span>Fully vaccinated</span></p>
<div class="find-btn">
<button data-ng-click="isEditted =false;" type="button" class="btn btn-blue btn-primary pull-right" ng-disabled="isFetching" tabindex="0" aria-disabled="false">
<span ng-hide="isFetching">Edit</span>
<img class="icon ng-hide" ng-show="isFetching" src="/content/dam/aircanada/portal/images/loyalty/icon/oval.png" alt="spinner icon" aria-hidden="true">
</button>
</div>
</div>
</fieldset>
</form>
<form id="status_by_number" class="form-container-standard ng-pristine ng-invalid ng-invalid-required ng-valid-pattern ng-valid-maxlength ng-hide" novalidate="" data-ng-show="tabService.isSet(1)" aria-hidden="true">
<fieldset>
<legend class="sr-only">Flight Status: By number</legend>
<div class="supplementary-wrapper clearfix">
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 status-input-wrapper">
<div class="glyph-input-wrapper">
<label for="status_by_number_flight" class="sr-only">Flight Number</label>
<i class="glyph glyph-left ac-icon ac-text ac-2x" tabindex="-1">AC</i>
<span class="glyph glyph-left ac-icon ac-text ac-2x sr-only">AC</span>
<input type="text" id="status_by_number_flight" class="glyph-input glyph-left-input form-control ng-pristine ng-untouched ng-empty ng-invalid ng-invalid-required ng-valid-pattern ng-valid-maxlength" maxlength="4" required=""
placeholder="FLIGHT NUMBER" ng-pattern="/^[0-9]*$/" data-ng-model="timetable.trips[0].fn" tabindex="0" aria-required="true" aria-invalid="true">
</div>
</div>
<div id="returnDateButtonFN" class="col-lg-6 col-md-6 col-sm-12 col-xs-12" data-dev-managed-title="Departure and arrival" data-dev-managed-scroll="false" data-dev-keyvent-id="departureDate">
<label id="departureDateLabel" for="departureDate" class="glyph-input-wrapper" data-x-edit="">
<span class="sr-only">Departure</span>
<i class="glyph glyph-left ac-icon calendar ac-2x" tabindex="-1"></i>
<div class="glyph-holder glyph-left-holder form-control" data-x-edit-passive="" tabindex="0">
<!---->
<!----><span class="default" data-ng-if="!timetable.trips[0].departure.date" tabindex="-1">Departure</span><!---->
</div>
<input id="departureDate" type="text" class="glyph-input glyph-left-input form-control glyph-hidden ng-pristine ng-untouched ng-valid ng-empty hasDatepicker" placeholder="Departure" aria-label="Departure" autocomplete="nope"
data-ng-model="timetable.trips[0].departure.typed" data-date-picker-panel-id="flights-departure-panel" data-dev-keyvent="" data-x-edit-active="" data-ng-change="timetable.hasDateChanged(0)" jq-datepicker="" data-target="timetable.trips"
data-index="0" data-jq-start-date="2022-02-03T18:57:32.894Z" data-jq-end-date="2022-02-10T18:57:32.894Z" tabindex="0" aria-invalid="false">
</label>
</div>
</div>
<div class="row secondary-section-container">
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12" ng-show="!bookingclass" aria-hidden="false">
<label for="ac_class_of_service" class="sr-only">Class of service</label>
<span class="form-element-wrapper select-dropdown-wrapper">
<select aria-invalid="false" aria-required="true" tabindex="0" data-x-place-arrow="" class="form-control ng-pristine ng-untouched ng-valid ng-not-empty" id="ac_class_of_service" name="ac_class_of_service"
ng-model="timetable.ac_class_of_service" ng-options="serviceClass.label for serviceClass in lexic.serviceClassesSelect">
<option label="Class of service" value="object:177" selected="selected">Class of service</option>
<option label="Economy Class" value="object:178">Economy Class</option>
<option label="Premium Economy Class" value="object:179">Premium Economy Class</option>
<option label="Business Class" value="object:180">Business Class</option>
</select>
</span>
</div>
<div class="btnTimetableSearch col-lg-2 col-md-2 col-sm-12 col-xs-12 pull-right">
<button id="btnStatusByNumberSearch" class="btn btn-primary pull-right col-sm-12 col-xs-12" data-ng-click="searchTimetableFN();" tabindex="0">Find</button>
</div>
</div>
</fieldset>
</form>
<form id="status_by_number" class="form-container-standard ng-pristine ng-valid" novalidate="" data-ng-show="tabService.isSet(2)" aria-hidden="false">
<fieldset>
<legend class="sr-only">Flight Status: By route</legend>
<div class="row secondary-section-container">
<div class="col-lg-4 col-md-4 col-sm-12 col-xs-12">
<div>
<div class="managed-wrapper" data-dev-managed="timetable-location-origin.html" data-dev-managed-title="FROM" data-dev-keyvent-id="timetable_origin">
<div class="managed-display dropdown" data-dev-element="dcManaged.wrapper" role="application">
<div class="clearfix" data-ng-transclude="">
<div id="timetable_origin_wrapper" class="glyph-input-wrapper" data-x-edit="">
<label for="timetable_origin">
<span class="sr-only">FROM</span>
<i class="glyph glyph-left ac-icon location ac-2x" tabindex="-1"></i>
<div class="glyph-holder glyph-left-holder form-control" data-x-edit-passive="" tabindex="0">
<!---->
<!----><span class="default" data-ng-if="!timetable.origin.type"> FROM </span><!---->
</div>
<input type="text" id="timetable_origin" class="glyph-input glyph-left-input form-control ng-pristine ng-untouched ng-valid ng-empty glyph-hidden" aria-label="From" placeholder="From" value="" autocomplete="nope"
data-ng-model="timetable.origin.typed" data-dev-keyvent="timetable_origin" data-x-edit-active="" data-x-place-clear="timetable.origin" tabindex="0" aria-invalid="false"><button class="btn-ghost" aria-hidden="true" tabindex="-1"
data-x-clear-button="" style="width: 40px;"><span class="ac-icon ac-icon-close ac-1nx"></span><span class="sr-only">Clear</span></button>
</label>
</div>
</div>
<div class="managed-target-wrapper" data-dev-element="dcManaged.scrollWrapper" data-ng-class="{'no-scroll': !dcManaged.allowScroll, 'no-scroll-x': !dcManaged.allowScrollX, 'mat-bkmg-control': dcManaged.isMatBKMGControl}"><!---->
<div class="managed-target" data-dev-element="dcManaged.scrollable" data-ng-include="dcManaged.target">
<!---->
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-lg-4 col-md-4 col-sm-12 col-xs-12">
<div>
<div class="managed-wrapper" data-dev-managed="timetable-location-destination.html" data-dev-managed-title="TO" data-dev-keyvent-id="timetable_destination">
<div class="managed-display dropdown" data-dev-element="dcManaged.wrapper" role="application">
<div class="clearfix" data-ng-transclude="">
<div id="timetable_destination_wrapper" class="glyph-input-wrapper" data-x-edit="">
<label for="timetable_destination">
<span class="sr-only">TO</span>
<i class="glyph glyph-left ac-icon plane ac-2x" tabindex="-1"></i>
<div class="glyph-holder glyph-left-holder form-control" data-x-edit-passive="" tabindex="0">
<!---->
<!----><span class="default" data-ng-if="!timetable.destination.type"> TO </span><!---->
</div>
<input type="text" id="timetable_destination" class="glyph-input glyph-left-input form-control ng-pristine ng-untouched ng-valid ng-empty glyph-hidden" aria-label="To" placeholder="To" value="" autocomplete="nope"
data-ng-model="timetable.destination.typed" data-dev-keyvent="timetable_destination" data-x-edit-active="" data-x-place-clear="timetable.destination" tabindex="0" aria-invalid="false"><button class="btn-ghost" aria-hidden="true"
tabindex="-1" data-x-clear-button="" style="width: 40px;"><span class="ac-icon ac-icon-close ac-1nx"></span><span class="sr-only">Clear</span></button>
</label>
</div>
</div>
<div class="managed-target-wrapper" data-dev-element="dcManaged.scrollWrapper" data-ng-class="{'no-scroll': !dcManaged.allowScroll, 'no-scroll-x': !dcManaged.allowScrollX, 'mat-bkmg-control': dcManaged.isMatBKMGControl}"><!---->
<div class="managed-target" data-dev-element="dcManaged.scrollable" data-ng-include="dcManaged.target">
<!---->
</div>
</div>
</div>
</div>
</div>
</div>
<div id="returnDateButtonFN" class="col-lg-4 col-md-4 col-sm-12 col-xs-12" data-dev-managed-title="Departure and arrival" data-dev-managed-scroll="false" data-dev-keyvent-id="departureDate">
<div class="glyph-input-wrapper">
<label id="departureDateLabel" for="departureDate" data-x-edit="">
<span class="sr-only">Departure</span>
<i class="glyph glyph-left ac-icon calendar ac-2x" tabindex="-1"></i>
<div class="glyph-holder glyph-left-holder form-control" readonly="true" data-x-edit-passive="" tabindex="0">
<!---->
<!----><span class="default" data-ng-if="!timetable.trips[0].departure.date" tabindex="-1">Departure</span><!---->
</div>
<input id="departureDate" readonly="true" class="glyph-input glyph-left-input form-control glyph-hidden ng-pristine ng-untouched ng-valid ng-empty hasDatepicker" placeholder="Departure" aria-label="Departure" autocomplete="nope"
data-ng-model="timetable.trips[0].departure.typed" data-dev-keyvent="" data-x-edit-active="" data-ng-change="timetable.hasDateChanged(0)" jq-datepicker="" data-target="timetable.trips" data-index="0"
data-jq-start-date="2022-02-03T18:57:32.894Z" data-jq-end-date="2022-02-10T18:57:32.894Z" tabindex="0" aria-invalid="false">
</label>
</div>
</div>
</div>
<div class="row secondary-section-container">
<div class="col-lg-4 col-md-4 col-sm-12 col-xs-12" ng-show="!bookingclass" aria-hidden="false">
<label for="ac_class_of_service" class="sr-only">Class of service</label>
<span class="form-element-wrapper select-dropdown-wrapper">
<select aria-invalid="false" aria-required="true" tabindex="0" data-x-place-arrow="" class="form-control ng-pristine ng-untouched ng-valid ng-not-empty" id="ac_class_of_service" name="ac_class_of_service"
ng-model="timetable.ac_class_of_service" ng-options="serviceClass.label for serviceClass in lexic.serviceClassesSelect">
<option label="Class of service" value="object:177" selected="selected">Class of service</option>
<option label="Economy Class" value="object:178">Economy Class</option>
<option label="Premium Economy Class" value="object:179">Premium Economy Class</option>
<option label="Business Class" value="object:180">Business Class</option>
</select>
</span>
</div>
<div class="btnTimetableSearch col-lg-2 col-md-2 col-sm-12 col-xs-12 pull-right">
<button id="btnTimetableSearch" class="btn btn-primary pull-right col-sm-12 col-xs-12" data-ng-click="searchTimetable();" tabindex="0">Find</button>
</div>
</div>
</fieldset>
</form>
Text Content
Loading... * Skip to homepage * Skip to main navigation * Skip to content * Skip to search field * Skip to footer links * Skip to site map * Skip to contact Search site Find Flight Search Special Offers Book Book * * Book Travel * Routes and Partners * Flight Passes * Fare Options and Fees * Business Travel * Upgrades Opens in a New Window Plan Plan * * Baggage * Check-In Information * Travel Requirements * Special Assistance * Peace of Mind Fly Fly * * Flight Information * On Board * Customer Support * Air Canada on your Mobile * At the Airport * Premium Services Aeroplan Aeroplan * Aeroplan Overview * Earn points * Redeem points * Aeroplan Elite Status * Aeroplan Credit Cards Join Aeroplan Sign in Air Canada for Business Select your edition and language. You are currently on the Canada English edition. site_edition.selector.currency.sr_only.text English CA$ Accessibility Customer Support Accessibility Select your edition and language. You are currently on the Canada English edition. site_edition.selector.currency.sr_only.text English CA$ Search site Find Hamburger Navigation Book Book Travel * Flight * Vacations Opens in a New Window * Car * Hotel * Airport Transfer Opens in a New Window External site which may not meet accessibility guidelines. * Air Canada Stopover * Group Travel Routes and Partners * Where We Fly Opens in a New Window * Flight Schedules * Star Alliance and other Airline Partners * Air Canada Rouge Opens in a New Window * Air Canada Jetz and Charters * Air Canada Cargo Opens in a New Window * Toronto – Montreal/Ottawa Service Flight Passes * Purchase * Book / Manage * View Bookings * Payment Methods * Air Canada Gift Cards * AC Conversion Card * All our Payment Options Fare Options and Fees * Manage Bookings Business Travel * Small / Midsize Businesses * Large Corporations * Meetings and Events Upgrades Opens in a New Window * Why Book With Us * Travel News & Updates Special Offers Popular Destinations: * Toronto * Montreal * Vancouver * Flights to Canada * Flights to U.S. * Flights to U.K. Close Plan Baggage * Carry-On Baggage * Checked Baggage * Special Items * Restricted Items * Delayed/Damaged * Ship your luggage ahead Check-In Information * Check In Now Opens in a New Window * How to Check In * Check-In / Boarding Times * Minimum Connection Times Travel Requirements * Travel Ready hub * Travel Documents * Customs and Immigration * Advance Passenger Information (APIS) * U.S. Secure Flight Program Special Assistance * Travelling with Children * Children Travelling Alone * Travelling with your Pet * Special Meals * Bereavement Fares Peace of Mind * Before You Go Checklist * Health and Travel Tips * Advance Seat Selection * On My Way Service * Travel Insurance * Frequently Asked Questions Use our calculator to determine your free checked baggage allowance. Visit our COVID-19 hub for where we fly, entry requirements and more. Close Fly Flight Information * Flight Status * Daily Travel Outlook * Flight Notification * Flight Disruptions On Board * Our Fleet * Cabins and Onboard Meals * In-flight Entertainment * enRoute * Preferred Seats * Wi-Fi * Duty Free Customer Support * Frequently Asked Questions * ACCredit, eCoupons and Travel Vouchers * Customer Service Plan * Customer Relations Opens in a New Window External site which may not meet accessibility guidelines. * Receipt RequestsExternal site which may not meet accessibility guidelines. * Refund Services * Contact Us Air Canada on your Mobile * Air Canada App * Mobile Check-in * Electronic Boarding Passes * Air Canada mobile+ At the Airport * Airport Information * Self Service Kiosks * Boarding by Zone Premium Services * Maple Leaf Lounges * Priority Services * Concierge Services Visit our COVID-19 hub for where we fly, entry requirements and more. Close Aeroplan My Aeroplan eStore Shopping Hotels & cars Aeroplan Credit Cards Already a member? Sign in * Program overview * Earn points * Redeem points * Buy, donate, and more * Promotions Join now Customer Support Special Offers Sign in See your profile Join Aeroplan Sign in Air Canada for Business * About Aeroplan Elite Status * Aeroplan partners * Buy, donate and more * Credit cards overview * Earn * Family sharing * Hotels and car rentals * News * Promotions * Redeem * Conversion programs * Deposit points * Estate policy * Inactivity policy * Request missing points * Points Predictor Tool * Redeem with Air Canada * Earn with Air Canada * About eUpgrades * Aeroplan 25K Status benefits * Aeroplan 35K Status benefits * Aeroplan 50K Status benefits * Aeroplan 75K Status benefits * Aeroplan Elite Status benefits * Aeroplan Super Elite Status benefits * Elite Status Terms and Conditions * Million Mile program * Priority Rewards for Elite Status Members * Qualifying for Aeroplan Elite Status * Report a SQD discrepancy * Threshold eUpgrades and gifts * Report eUpgrades discrepancies * Requesting your eUpgrades * eUpgrade Policy * eUpgrades for companions * American Express Aeroplan Cards * CIBC Aeroplan Credit Cards * TD Aeroplan Credit Cards * American Express Aeroplan Business Reserve Card * American Express Aeroplan Cards * American Express Aeroplan Cards benefits * American Express Aeroplan Corporate Cards * American Express Aeroplan Corporate Cards benefits * CIBC Aeroplan Credit Cards benefits * CIBC Aeroplan Personal Credit Cards * CIBC Aeroplan Visa Business Card * TD Aeroplan Credit Cards benefits * TD Aeroplan Personal Credit Cards * TD Aeroplan Visa Business Credit Card * Accumulation changes for Avianca! * Air Serbia joins Aeroplan * Azul joins Aeroplan * More flexibility for our members * Vistara joins Aeroplan * Starbucks * LCBO HOW TO PREPARE FOR TRAVEL Review the latest COVID-19 travel requirements and find answers to your frequently asked questions. Travel requirements * Travel requirements * Testing solutions * Day of travel * Health and safety * Changes and cancellations HOW TO PREPARE FOR TRAVEL Review the latest COVID-19 travel requirements and find answers to your frequently asked questions. 1 VIEW ENTRY AND TESTING REQUIREMENTS Are you fully vaccinated? Trip type Round-trip * One-way * Round-trip Connection type No connections * No connections * Connections both ways * Outbound connection * Return connection Nationality Passport: CAN Departure From From Clear Enter the city name, airport code, province or country/region. Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or down the list of airports provided to make your selection. Connect Connect Clear Enter the city name, airport code, province or country/region. Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or down the list of airports provided to make your selection. To To Clear Enter the city name, airport code, province or country/region. Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or down the list of airports provided to make your selection. Departure Departure 03 Feb Return From From Clear Enter the city name, airport code, province or country/region. Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or down the list of airports provided to make your selection. Connect Connect Clear Enter the city name, airport code, province or country/region. Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or down the list of airports provided to make your selection. To To Clear Enter the city name, airport code, province or country/region. Enter the three first characters of the city, airport, country/region, province or state you are leaving from, then use your arrow keys to move up or down the list of airports provided to make your selection. Return Return 10 Feb Find Round-trip to ConnectionsNo connections Travel dates03 Feb - 10 Feb Vaccination statusFully vaccinated Edit Already have a reservation? Review requirements for your trip. Travel requirements provided by External site which may not meet accessibility guidelines. 2 ENJOY A TOUCHLESS TRAVEL EXPERIENCE Download the Air Canada mobile app for touchless travel, from check-in to takeoff. Learn more 3 ARRIVE AT THE AIRPORT EARLY Airports are much busier than normal. Arrive earlier than usual and review check-in and boarding times for your itinerary. Learn more FREQUENTLY ASKED QUESTIONS Testing & vaccinations for travel Do I need to be vaccinated to travel? All passengers aged 12 years plus 4 months or older need to be fully vaccinated to board a flight departing from most airports in Canada. If you are aged 12 years plus 4 months or older, you must comply with the following to board your flight: * be fully vaccinated with accepted vaccines External site which may not meet accessibility guidelines. * be ready at any point in your journey to show your official proof of vaccinationExternal site which may not meet accessibility guidelines. * have received your second dose at least 14 full days prior to the day you travel * have no signs or symptoms of COVID-19 * wear a mask COVID-19 tests If you qualify as fully vaccinated, a COVID-19 test is not needed to board your flight in Canada unless you are flying to a country that requires it. A COVID-19 molecular test is no longer accepted as an alternative to vaccination unless you are eligible for one of the limited exemptions as defined by the Government of Canada .External site which may not meet accessibility guidelines. Find out how to request an exemption due to medical reasons, or an exemption based on other reasons. Do I need a COVID-19 test before I travel? Many countries, including Canada, require proof of a negative COVID-19 test as part of your journey. Depending on your destination, a negative test result taken within a specified time frame may be required prior to departure, upon landing, or both. Certain countries require a negative COVID-19 test result even if you are only connecting through to another destination. You may not be able to board your flight without the correct documentation. Learn more. What type of COVID-19 test do I need for travel to Canada? All customers 5 years of age or older entering Canada from an international destination are required to provide a negative COVID-19 molecular (PCR, NAT/NAAT or LAMP) test prior to boarding a flight. Antigen tests are not accepted for entry into Canada. Learn more about accepted test typesExternal site which may not meet accessibility guidelines.. Where can I get a COVID-19 test approved for travel? To find a list of testing entities, including portable testing options, please use the entry and testing requirements tool above. Testing locations and information is available for both departure and arrival destinations. What steps do I take for COVID-19 testing for my trip? Most countries require a negative COVID-19 test before entering, so make sure you’re Travel Ready by obtaining an accepted COVID-19 test type with a suitable report for travel purposes. Familiarize yourself with these important steps: 1. Know when to take your test If your test is taken outside of the time frame allowed by your destination, you may not be able to board your flight. Find your testing time frame. 2. Allow enough time to get the results Check with your testing entity to understand how long it typically takes to get your test result. 3. Know what type of test your destination requires There are many test types. The main type is a molecular test, which includes PCR (the most common), RT-PCR, NAT/NAAT, RT-LAMP, etc., and is the only test type accepted for entry into CanadaExternal site which may not meet accessibility guidelines.. Another type is an antigen test, which is not as widely accepted. Canada does NOT accept antigen tests, but they are accepted by some countries, including the United States. 4. Get your test from a testing entity with the correct accreditation Many countries require that test results include information such as the test date, lab address, and your date of birth. Public Health Testing Centres in Canada or other countries may not provide accepted test results for travelExternal site which may not meet accessibility guidelines.. Learn more. Can I travel with mixed vaccination doses? Accepted vaccination doses are determined by the government of each country and varies from country to country. Find out if your destination accepts travellers with mixed vaccine doses. Do I have to take a COVID-19 test when I arrive in Canada? Yes, the Government of Canada has introduced mandatory arrival COVID-19 testing for all travellers who have been in any country (other than the US) in the 14 days prior to entry to Canada. Register with a testing provider for your on-arrival COVID-19 molecular test now to save time at the airport when you arrive. Select a testing provider based on the first airport you arrive at in Canada. The Government of Canada recommends that you register for your on-arrival test with the same email address that you use with your ArriveCAN account. Register today Are there any exemptions to the testing requirements? All Air Canada passengers must comply with testing requirements as regulated by the Government of Canada and governments around the world. The Government of Canada has issued a no-exemption regulation for most travellers, which requires passengers to undergo COVID-19 testing regardless of the length of their trip, vaccination status, or citizenship status. For more information, use our entry requirements tool. I am fully vaccinated. Do I have to quarantine upon entry to Canada? Canadian travellers and foreign nationals entering Canada from all other countries (except the US) will now be required to complete a COVID-19 molecular test on arrival. The test will be conducted on-site at the airport, or you’ll be provided a take-home test kit. Travellers asked to complete an arrival test must quarantine at their final destination and approved quarantine location until a negative result is confirmed or a 14-day period passes - whichever comes first. Learn more about the Government of Canada's regulations.External site which may not meet accessibility guidelines. I am unvaccinated. What do I need to do upon arrival to Canada? At this time, the only unvaccinated travellers who are allowed to enter Canada are Canadian citizens. If you are not a Canadian citizen or permanent resident and are not vaccinated, you may not be permitted to enter the country. Some exemptions apply: Find out if you can enter CanadaExternal site which may not meet accessibility guidelines.. For Canadian citizens and permanent residents: While quarantine is not required, your trip must terminate at your first point of entry in Canada. To reach your final destination in Canada, you must arrange for private transportation at your own expense. This means that you may not be permitted to board any domestic connecting flights that were previously booked. For more details including how to rebook, please see our flexible rebooking options. Some exemptions applyExternal site which may not meet accessibility guidelines.. For foreign nationals: Travel continues for essential purposesExternal site which may not meet accessibility guidelines. only. Starting January 15, unvaccinated or partially vaccinated foreign nationals will only be allowed to enter Canada if they meet the criteria for limited exceptions, which apply to certain groups such as agricultural and food processing workers, marine crew members, those entering on compassionate grounds, new permanent residents, resettling refugees and some children under the age of 18. Exempt unvaccinated travellers will continue to be subject to testing, quarantine, and other entry requirements. Non-exempt unvaccinated or partially vaccinated foreign nationals will be prohibited entry into Canada. Learn more about the regulations for unvaccinated travellers provided by the Government of CanadaExternal site which may not meet accessibility guidelines.. I’ve tested positive for COVID-19 and recovered. Can I use my positive COVID-19 molecular test result to travel into Canada? Yes, if you’ve tested positive for COVID-19 and recovered, you can use your positive COVID-19 molecular test result as an alternative to a negative COVID-19 molecular test for travel into Canada. You’ll also be exempt from the mandatory arrival testing if travelling from a destination outside of United States or Canada. The proof of a positive test result for entry into Canada must come from any of the following accepted types of molecular tests: * PCR – Polymerase chain reaction * Nucleic acid test (NAT) or Nucleic acid amplification test (NAATs) * Reverse transcription loop-mediated isothermal amplification (RT-LAMP, such as the Switch Health at-home RT-LAMP test kit External site which may not meet accessibility guidelines.) It needs to include the following information: * Traveller name and date of birth * Name and civic address of the laboratory/clinic/facility that administered the test * The date on which the test was taken * The type of test taken * The test result The positive COVID-19 molecular test must have been taken at least 11 and no more than 180 days before the date of your scheduled departure to Canada. Day 0 is the date of collection for your positive test result and you would be eligible to travel to Canada on Day 11. For example, if your sample was collected on January 15 (Day 0), you received your result on January 16 (Day 1), you would be able to fly to Canada as of January 26 (Day 11). I’ve tested positive for COVID-19 and recovered. Can I use my positive COVID-19 molecular test result to travel from Canada to another country? If you’re travelling to the United States, you may use your positive COVID-19 viral test result on a sample taken no more than 90 days before the flight’s departure, if you also have a letter from a licensed healthcare provider or a public health official stating that you’re cleared to travel. For all other countries, please check the requirements of your country you are travelling to and verify if a positive COVID-19 test (along with any other documentation) can be used for entry. Before you travel What do I need to do before I book a trip? If you’re ready to start planning your next trip, you can explore your options with our easy-to-use Travel Ready hub, designed to make it simple for you to choose where to go next. To ensure a smooth travel experience, we recommend you view the latest travel requirements for each country on your itinerary. Simply input your citizenship, origin, destination, any connections, and vaccination status to see which destinations are open for travel. Ready to book? Book now. What do I need to do the week before my trip? Follow these important steps: * Check the latest entry requirements for all the countries you are visiting and connecting through. * If you are required to get a COVID-19 test, ensure it’s the correct test type, taken in the correct time frame. Check with your testing entity when you should expect your test results. Find a testing location. * Complete any necessary forms and bring them with you. * Locate your vaccination records and keep a digital and printed copy with you (if applicable). Note that all travellers to Canada must submit their travel information using the ArriveCan appExternal site which may not meet accessibility guidelines. or website. Flight and entry requirements vary by destination. Requirements may include, but are not limited to, proof of a negative COVID-19 test, entry forms, on-arrival testing and quarantine. Documents and test types required for your outbound travel may differ from those required for the return. We recommend contacting the embassy, high commission or consulate of each country on your itinerary for further information. What do I need to do the day of my trip? Follow these important steps: 1. Review the latest travel and health requirements for each country on your itinerary. 2. Complete forms or any other items your destination requires. 3. Validate your COVID-19 health documents during online or mobile check-in before arriving at the airport (currently available on select routes). Health documents can also be uploaded on the My Bookings page. 4. Print copies of your negative COVID-19 test result, pre-departure forms, and vaccination records, as needed. Some countries require digital completed forms, while others require you to show a printed copy at boarding. We recommend bringing printed copies of all documents in your carry-on baggage. 5. Airports are much busier than normal. Make sure to arrive earlier than usual. Travel to, through, and within Canada What are the requirements and restrictions for travel within Canada? There may be requirements and restrictions set out by each province and territory. To learn more, select your destination below or enter your origin and destination in our entry requirements tool. * AlbertaExternal site which may not meet accessibility guidelines. * British ColumbiaExternal site which may not meet accessibility guidelines. * ManitobaExternal site which may not meet accessibility guidelines. * New BrunswickExternal site which may not meet accessibility guidelines. * Newfoundland and LabradorExternal site which may not meet accessibility guidelines. * Northwest TerritoriesExternal site which may not meet accessibility guidelines. * Nova ScotiaExternal site which may not meet accessibility guidelines. * NunavutExternal site which may not meet accessibility guidelines. * OntarioExternal site which may not meet accessibility guidelines. * Prince Edward IslandExternal site which may not meet accessibility guidelines. * QuebecExternal site which may not meet accessibility guidelines. * SaskatchewanExternal site which may not meet accessibility guidelines. * YukonExternal site which may not meet accessibility guidelines. What do I need to do to connect through Canada? Transit through Canada is permitted when travelling to another country. Learn about the required stepsExternal site which may not meet accessibility guidelines.. Does Canada allow international travellers? As of August 9, 2021, fully vaccinated Americans are allowed to enter Canada. On September 7, 2021, Canada’s borders re-opened to all fully vaccinated travellers who have been vaccinated with a Government of Canada-accepted vaccine at least 14 days prior to entering Canada and who meet all other relevant entry requirements. Air Canada recommends consulting the Government of Canada’s Travel WizardExternal site which may not meet accessibility guidelines. prior to travelling to verify if you are allowed to enter Canada. All travellers to Canada must submit their travel information using the ArriveCan appExternal site which may not meet accessibility guidelines. or websiteExternal site which may not meet accessibility guidelines.. Fully vaccinated travellers eligible to enter Canada do not need to quarantine upon arrival. Learn more about the Government of Canada's regulations. External site which may not meet accessibility guidelines. Our safety measures Does Air Canada require passengers to wear face coverings while on board? Yes. For all passengers over the age of 2, face coverings are a mandatory requirement issued by Transport Canada and the U.S. Transportation of Security Administration while boarding, onboard and while deplaning. Learn more about acceptable face coverings and exemptions. What are Air Canada’s grooming procedures to eliminate the virus which causes COVID-19? The 2019 Skytrax World Airline Awards have already recognized Air Canada for Best Airline Cabin Cleanliness in North America. With the onset of COVID-19, we expanded our aircraft grooming procedures, which already incorporated the use of hospital-disinfectant and specialized techniques, to include electrostatic spraying of cabin interiors. All cleaning products we use, including disinfectants, are fully approved for use by Health Canada. As per PHAC guidelines and other resources, coronaviruses do not readily survive on soft materials (headrest covers, seat covers, carpets, etc.). However, these are replaced if soiled. If we are informed by an appropriate health authority that a potentially infected passenger has been on an aircraft, this is taken out of service for deep grooming as per PHAC guidance. Can I be infected by the air in the aircraft if an infected passenger is onboard? Our aircraft are equipped with High-Efficiency Particulate Air (HEPA) filters, which effectively capture 99.9% of particulates from recirculated air in the aircraft cabin. This includes microbial organisms such as bacteria and viruses. These filters are similar to those used in hospital rooms, and like hospital rooms, the air within the cabin is refreshed every 2 to 3 minutes for a total of 20 to 30 total air changes per hour. What kind of safety items does Air Canada provide its passengers onboard? As part of our CleanCare+ program, we distribute complimentary Customer Care Kits, which include: hand sanitizer packets, two antiseptic wipes, and facemasks (non-surgical) to all customers onboard all Air Canada and Air Canada Express flights. For sanitary reasons, the bag used to package these Care Kit items also doubles as a trash bag to dispose of any personal items. How does Air Canada ensure its employees are healthy and safe? Air Canada is 100% compliant with all Transport Canada and PHAC health and safety directives for crews and employees, including self-isolation. Any employee who feels ill or experiences any COVID-19 symptoms must stay home and seek medical advice. We also require all customer-facing employees to use Personal Protective Equipment such as face guards, masks and gloves, and all employees have access to hand sanitizer. Our in-flight crew is also additionally provided with safety glasses and gowns. Back to top TESTING SOLUTIONS Most countries require a negative COVID-19 test, so make sure you’re Travel Ready by familiarizing yourself with these important steps: Know what type of test you need Know when to take your test Get your test from an approved testing entity Allow enough time to get the results Not sure which test type you need? Review the testing requirements for your destination. TAKE A COVID-19 TEST FROM THE COMFORT OF HOME OR ABROAD Buy nowExternal site which may not meet accessibility guidelines. CUE HEALTH TEST KITS The Cue Health Monitoring System makes testing easier with a fast, PCR-quality molecular COVID-19 test that can be self-administered at home or abroad, accompanied by virtual supervision. As a part of Cue Health’s solution, receive a reusable Cue Cartridge Reader and single-use test cartridges with sample wands. * Meets entry requirements for Canada, the U.S., and countries that accept molecular tests * Self-administer anywhere with a virtually supervised session through the Cue Health App * Use the Cartridge Reader unlimited times, perfect for frequent travellers or families * Get results in about 20 minutes with an official digital report suitable for travel (check requirements if outside of Canada or the U.S.) * FSA/HSA eligible Important information for your test: So that your test is accepted for travel, make sure that you complete your test with supervised proctoring. To do so, select “Yes” under the “Supervised Test for Work, School, or Travel?” section on the Cue Health App *Currently, Cue Health Monitoring System can only be shipped to addresses in the United States and require the use of the U.S. version of the Cue Health App for supervised testing. The Canadian version of the Cue Health App featuring supervised testing will be available early 2022. EASY AND AFFORDABLE TRAVEL TESTING WITH SWITCH HEALTH RT-LAMP Kit Rapid Antigen Kit RT-PCR Collection Kit In clinic Previous IN CLINIC TESTING Visit a Switch Health Travel Clinic in Calgary, the Toronto region, Vancouver, or Halifax to complete a test and get an official electronic report suitable for travel RT-PCR test Get your result in about 24-48 hours. Rapid antigen test Get your result in about 30 minutes. Book nowExternal site which may not meet accessibility guidelines. RECOMMENDED FOR ENTRY TO CANADA* SWITCH HEALTH RT-LAMP TEST KIT Get your result in about 45 minutes** A portable, self-administered test that is accepted for re-entry into Canada, among other countries, and can be completed from the comfort of your home or accommodation around the world via a Telehealth session***. How to buy $149 for Aeroplan Members + earn 500 points per kit Buy nowExternal site which may not meet accessibility guidelines. 25.7Kpts from the Aeroplan eStore Buy nowExternal site which may not meet accessibility guidelines. RECOMMENDED FOR TRAVEL TO UNITED STATES SWITCH HEALTH RAPID ANTIGEN TEST KIT Get your result in about 30 minutes A portable, self-administered rapid test that can be completed from the comfort of your home or accommodation around the world via a Telehealth session***. How to buy $79 for Aeroplan Members + earn 500 points per kit Each kit contains two tests. Buy nowExternal site which may not meet accessibility guidelines. 14.1Kpts from the Aeroplan eStore Buy nowExternal site which may not meet accessibility guidelines. SWITCH HEALTH RT-PCR COLLECTION KIT Get your result in about 24-48 hours A self-collection test kit you can use from the comfort of your home, with courier pickup to send your sample to a lab. How to buy $159 for Aeroplan Members + earn 1,000 points per kit Buy nowExternal site which may not meet accessibility guidelines. 26.9Kpts from the Aeroplan eStore Buy nowExternal site which may not meet accessibility guidelines. IN CLINIC TESTING Visit a Switch Health Travel Clinic in Calgary, the Toronto region, Vancouver, or Halifax to complete a test and get an official electronic report suitable for travel RT-PCR test Get your result in about 24-48 hours. Rapid antigen test Get your result in about 30 minutes. Book nowExternal site which may not meet accessibility guidelines. RECOMMENDED FOR ENTRY TO CANADA* SWITCH HEALTH RT-LAMP TEST KIT Get your result in about 45 minutes** A portable, self-administered test that is accepted for re-entry into Canada, among other countries, and can be completed from the comfort of your home or accommodation around the world via a Telehealth session***. How to buy $149 for Aeroplan Members + earn 500 points per kit Buy nowExternal site which may not meet accessibility guidelines. 25.7Kpts from the Aeroplan eStore Buy nowExternal site which may not meet accessibility guidelines. RECOMMENDED FOR TRAVEL TO UNITED STATES SWITCH HEALTH RAPID ANTIGEN TEST KIT Get your result in about 30 minutes A portable, self-administered rapid test that can be completed from the comfort of your home or accommodation around the world via a Telehealth session***. How to buy $79 for Aeroplan Members + earn 500 points per kit Each kit contains two tests. Buy nowExternal site which may not meet accessibility guidelines. 14.1Kpts from the Aeroplan eStore Buy nowExternal site which may not meet accessibility guidelines. SWITCH HEALTH RT-PCR COLLECTION KIT Get your result in about 24-48 hours A self-collection test kit you can use from the comfort of your home, with courier pickup to send your sample to a lab. How to buy $159 for Aeroplan Members + earn 1,000 points per kit Buy nowExternal site which may not meet accessibility guidelines. 26.9Kpts from the Aeroplan eStore Buy nowExternal site which may not meet accessibility guidelines. IN CLINIC TESTING Visit a Switch Health Travel Clinic in Calgary, the Toronto region, Vancouver, or Halifax to complete a test and get an official electronic report suitable for travel RT-PCR test Get your result in about 24-48 hours. Rapid antigen test Get your result in about 30 minutes. Book nowExternal site which may not meet accessibility guidelines. Next * 1 * 2 * 3 * 4 Not an Aeroplan Member? Join before you purchase your COVID-19 test to start earning points! Join now. * If you are travelling to Canada from Morocco or India, please note that you cannot submit an RT-LAMP test. Learn more about the entry requirements. **Results typically take less than 45 minutes but are subject to variability. There are some countries that require a lab-based molecular test and therefore do not accept an RT-LAMP test. Ensure your destination accepts a rapid molecular test like an RT-LAMP test. The RT-LAMP test kit meets the testing requirements for entry into Canada. ***Access to internet and a mobile device with a camera is required to join the telehealth session to complete your test. Telehealth sessions are available 24 hours a day, 7 days a week. Terms and conditions -------------------------------------------------------------------------------- Molecular test: Switch Health RT-LAMP Test Kit Aeroplan Members will receive a discounted retail price and earn 500 Aeroplan points per RT-LAMP test kit purchased online through Switch HealthExternal site which may not meet accessibility guidelines.. In order to be eligible to earn Aeroplan points, members must enter their Aeroplan number in the appropriate field on the Switch Health websiteExternal site which may not meet accessibility guidelines. before purchasing their test kit. The discounted retail price and Aeroplan points per molecular test is subject to change. Standard shipping costs are included in the price. Express shipping is available for an additional $15. Points will be credited to the member’s account within 4 weeks of purchasing the Molecular test kit. Switch Health Test Kits are non-refundable. RT-LAMP test kits are Rapid Molecular tests not lab based Molecular tests. Ensure your destination accepts this type of Molecular test before purchasing. The RT-LAMP test kits meet the requirements for entry set out by the Government of Canada. The RT-LAMP test kit can be used anywhere in the world but requires access to the internet and a mobile device to complete the tests. Switch Health telehealth is available 24/7. Switch Health Rapid Antigen Test Kits Aeroplan Members will receive a discounted retail price and earn 500 Aeroplan points per Switch Health Rapid Antigen test kit purchased online through Switch HealthExternal site which may not meet accessibility guidelines.. Each Rapid Antigen Test Kit includes two tests. In order to be eligible to earn Aeroplan points, members must enter their Aeroplan number in the appropriate field on the Switch Health websiteExternal site which may not meet accessibility guidelines. before purchasing their test kits. The discounted retail price and Aeroplan points per Rapid Antigen test kit is subject to change. Standard shipping costs are included in the price. Express shipping is available for an additional $10. Points will be credited to the member’s account within 4 weeks of purchasing the Switch Health Rapid Antigen test kit. Switch Health Test Kits are non-refundable. The Rapid Antigen test kit can be used anywhere in the world but requires access to the internet and a mobile device to complete the tests. Switch Health telehealth is available 24/7. Molecular test: Switch Health RT-PCR Collection Kit Aeroplan Members will receive a discounted retail price and earn 1,000 Aeroplan points per Switch Health RT-PCR Collection Kit purchased online through Switch HealthExternal site which may not meet accessibility guidelines.. In order to be eligible to earn Aeroplan points, members must enter their Aeroplan number in the appropriate field on the Switch Health websiteExternal site which may not meet accessibility guidelines. before purchasing their tests. The discounted retail price and Aeroplan points per Molecular test is subject to change. The RT-PCR Collection Kit must be mailed to a lab for processing and therefore can only be shipped to and used in some regions of Canada. Two-way shipping costs are included in the price. Express outbound shipping is available for an additional $15. Results take on average 24-48 hours but are subject to variability. Points will be credited to the member’s account within 4 weeks of purchasing the Molecular test. Switch Health tests are non-refundable. Switch Health telehealth is available 24/7. Molecular test: In Clinic RT-PCR test Aeroplan Members will receive a discounted retail price and earn 1,000 Aeroplan points per in-clinic RT-PCR test booked online through Switch HealthExternal site which may not meet accessibility guidelines.. In order to be eligible to earn Aeroplan points, members must enter their Aeroplan number in the appropriate field on the Switch Health websiteExternal site which may not meet accessibility guidelines. before booking an appointment at a Switch Health clinic. The discounted retail price and Aeroplan points per Molecular test is subject to change. Results take on average 24-48 hours but are subject to variability. Points will be credited to the member’s account within 4 weeks of purchasing the Molecular test. Switch Health Collection or Test Kits are non-refundable. In Clinic Rapid Antigen Test Aeroplan Members will receive a discounted retail price and earn 500 Aeroplan points per in clinic Rapid Antigen test booked online through Switch HealthExternal site which may not meet accessibility guidelines.. In order to be eligible to earn Aeroplan points, members must enter their Aeroplan number in the appropriate field on the Switch Health websiteExternal site which may not meet accessibility guidelines. before booking an appointment at a Switch Health clinic. The discounted retail price and Aeroplan points per Rapid Antigen test is subject to change. Points will be credited to the member’s account within 4 weeks of purchasing the Antigen test. Switch Health COVID-19 Tests are non-refundable. Switch Health and Air Canada are not responsible for ensuring customers complete the correct test for their destination. It is up to the customer to ensure they are aware of and understand the testing entry requirements for their destination. Note that some countries require a lab based molecular test and therefore the RT-LAMP test would not be accepted for entry. Learn about the entry requirements for your destination. Find more information on Switch HealthExternal site which may not meet accessibility guidelines.. ® Aeroplan is a registered trademark of Aeroplan Inc, used under license ® The Air Canada maple leaf logo is a registered trademark of Air Canada, used under license ® Air Canada is a registered trademark of Air Canada, used under license Back to top DAY OF TRAVEL Learn more about what to expect and how to be prepared for your travel journey. How to check in We offer several simple ways to quickly check in to your upcoming flight, including the Air Canada app. When to arrive at the airport Airports are much busier than normal and you must arrive for your flight earlier than usual. Review check-in and boarding times for your itinerary. Upload your COVID-19 health documents before you travel Conveniently validate government health travel documents prior to arriving at the airport. Ensure a more seamless experience at the airport by validating your COVID-19 health documents during check-in or on the Manage my Booking page. Upload your COVID-19 health documents, including your molecular test results, into the Air Canada app, or use your camera-equipped mobile or tablet to scan the QR code on your documents. Learn more. Flying into Canada? You must also upload your travel information and proof of vaccination (if applicable) to the ArriveCAN appExternal site which may not meet accessibility guidelines. before your flight. TouchFree Bag services Checking your bag can be entirely touchless with our TouchFree Bag Check and Bag Drop services. At select airports, you can now check your bags in a completely touchless way. Simply look for the TouchFree Bag Check signs. Here’s how: * Check in for your flight via the Air Canada app or at aircanada.com and get your boarding pass in advance. * Indicate the exact number of bags you need to check in and pay applicable fees in advance. * At the airport, proceed to dedicated TouchFree Bag Check kiosks and: 1. Scan your mobile boarding pass 2. Print your bag tags and attach * Proceed to TouchFree Bag Drop. Drop off your bags following the instructions. Where to find TouchFree Bag services: * Toronto Pearson International Airport (YYZ) * Montréal-Trudeau International Airport (YUL) * Ottawa International Airport (YOW) * Vancouver International Airport (YVR) * Calgary International Airport (YYC) * Edmonton International Airport (YEG) * Halifax International Airport (YHZ) * Winnipeg International Airport (YWG) * Victoria International Airport (YYJ) * Nanaimo Airport (YCD) * Saskatoon International Airport (YXE) * Thunder Bay International Airport (YQT) * London Ontario Airport (YXU) * Moncton International Airport (YQM) * Québec City International Airport (YQB) * St. John's International Airport (YYT) * Kelowna International Airport (YLW) * Los Angeles International Airport (LAX) * Newark International Airport (EWR) * Boston Logan International Airport (BOS) * Ronald Reagan Washington National Airport (DCA) * Fort Lauderdale International Airport (FLL) * Chicago O'Hare International Airport (ORD) Onboard service offering Before you fly, take a look at what we're serving on board. LEARN ABOUT OUR CABINS AND ONBOARD MEALS, OR USE THE TOOL BELOW TO SEE WHAT WE'RE SERVING DURING YOUR FLIGHT: By Flight Number By Route Flight Status: By number Flight Number AC AC Departure Departure Class of service Class of serviceEconomy ClassPremium Economy ClassBusiness Class Find Flight Status: By route FROM FROM Clear TO TO Clear Departure Departure Class of service Class of serviceEconomy ClassPremium Economy ClassBusiness Class Find Flights Depart Arrive Meals All times are shown in airport local time. Flights Depart Arrive Meals All times are shown in airport local time. -------------------------------------------------------------------------------- New standards for our lounges As our lounges re-open, there are some new safety standards to expect on your next visit. We are excited to welcome eligible customers back to our lounges, re-opened with new biosafety standards and an elevated dining experience. Here's what to expect: BIOSAFETY MEASURES UPON ENTRY Customers will be required to scan their boarding pass, status card, or membership card to enter the lounge. The card swiper will be disinfected after each use. Face masks are mandatory for customers as well as our employees, who will be undergoing daily health checks. As a means of contact tracing, a record will be kept of all lounge visitors for 30 days. ADDITIONAL PROTOCOLS Each table and chair will be sanitized after every use and all high-touch areas are disinfected regularly throughout the day. Our lounge is divided into separate sections to facilitate these additional cleaning procedures, including electrostatic spraying, which requires a particular section to be closed for about 5-10 minutes. A dedicated washroom attendant will be on duty, responsible for disinfecting and sanitizing facilities after use. Showers will remain closed until further notice. COMPLIMENTARY MEALS AND BEVERAGES Meals can be ordered and delivered straight to your table through the new Maple Leaf Lounge @ la table service simply by scanning an NFC or QR code found at the table. The menu also includes an elevated offering from one of our renowned chefs, along with exciting local offerings and cross-country favourites based on location. Customers can also select a cold meal option, pre-packaged and sealed in our convenient meal snack bag. During select times, hot options and a kid's menu are also available. Disposable cutlery will be provided with each meal. There will also be assisted bar service with our full bar offering. ENTERTAINMENT AND BUSINESS SERVICES All reading materials (over 7,000 magazines and newspapers) will be available digitally via PressReader on your smartphone or tablet. Limited iPads will also be available and are sanitized between each use. Our business services will be limited to complimentary Wi-Fi and remote printing. Back to top HEALTH AND SAFETY Learn about how we are helping keep you safe with Air Canada CleanCare+. Face coverings For the safety of our customers and crew, it’s crucial to comply with face covering guidelines. For all flights (except for travel to and from the U.S.) and all passengers over the age of 6, the use of approved face coverings is a mandatory requirement issued by Transport Canada. Children older than 2 but less than 6 years of age who cannot tolerate wearing a face covering are exempt, provided the adult responsible ensures a face covering is readily available to the child prior to boarding the flight. For travel to and from the U.S., any passenger 2 years of age and older must wear a face covering as a requirement issued by the U.S. Transportation of Security Administration, unless exempted for medical reasons. Approved face coverings Approved face coverings are made with protective layers of absorbent fabric (such as cotton) that fit snugly over the nose, mouth and chin, and are secured to the face with ties or ear loops. Any time an Air Canada agent or crew member asks you to remove your face covering (such as for an ID check) remember to untie or unhook the loop from your ear to avoid touching the face covering. Prohibited face coverings The following are not permitted: Non-medical masks or face coverings with an exhalation valve or vent, or made with mesh or lace fabric, a neck gaiter, a bandana, or a plastic face shield/covering. All passengers who are not compliant with the face covering requirements will be reported to Transport Canada, which could result in a financial penalty. Exemptions You may be exempt from wearing a face covering if the following 3 conditions are met: 1. You have a valid medical certificate confirming that there is a medical reason preventing you from wearing a face covering during your travel. 2. You have received authorization from Air Canada for a face mask exemption. Please contact the Air Canada Medical Assistance Desk to obtain authorization. 3. You will also need to present a negative COVID-19 test taken within 72 hours from departure at the airport check-in and/or prior to boarding the flight. Note: you may need another test prior to departure if your return trip exceeds 72h from the time your test was taken. Learn more about approved face coverings.External site which may not meet accessibility guidelines. Exemption to vaccine requirements due to medical reasons Find out if you are eligible for an exemption to vaccine requirements due to medical reasons. If you are aged 12 years plus 4 months or older, you may request an exemption to vaccine requirements for the following medical reasons: You need to travel for essential medical services or treatment: to request an exemption, please: 1. Complete a booking on Air Canada, Air Canada Rouge and/or Air Canada Express with a departure date at least 14 days or more in the future. 2. Download and complete the Temporary exemption request for passengers due to essential medical services or treatment 3. Submit your completed form as well as any supporting documentation at least 14 days before your departure to the Air Canada Medical Assistance Desk at acmedical@aircanada.ca Air Canada will make a reasonable effort to accommodate requests made within 14 days. You are medically not able to be vaccinated: to request an exemption, please: 1. Complete a booking on Air Canada, Air Canada Rouge and/or Air Canada Express with a departure date at least 21 days or more in the future. 2. Download and complete the Temporary exemption request for passengers due to medical inability to be vaccinated 3. Submit your completed form as well as any supporting documentation at least 21 days before your departure to the Air Canada Medical Assistance Desk at acmedical@aircanada.ca Prior to boarding If you are approved for an exemption based on medical reasons, prior to boarding your flight, you will need to present results of a valid COVID-19 molecular test, taken: * within 72 hours of your scheduled departure time where your test result is negative * at least 14 days before but no more than 180 days prior to your scheduled departure time where your result is positive Validity of temporary exemptions Temporary exemptions based on medical reasons are only valid for: * One return trip within Canada, or one one-way trip out of Canada If you are flying out of Canada, you are responsible for ensuring that you also meet the foreign entry requirements for your destination. * Air Canada flights and for the duration of your trip If your itinerary includes travel with another airline, you will need to contact them as well to request an exemption. Visit the Government of Canada’s website for more information on vaccination requirements to board a flight or train in CanadaExternal site which may not meet accessibility guidelines.. Exemption to vaccine requirements based on other reasons Find out if you are eligible for an exemption to vaccine requirements based on other reasons. There are a number of grounds for exemption that the Government of Canada has set out. There is no assurance that such an exemption might be available; if it were, it would be your responsibility to ensure you satisfy and abide by all requirements relating to your travel, including in respect of any available exemption. These potential grounds for exemption are as follows: * A person who has a medical inability to be vaccinated or is traveling to receive essential medical services and treatment. To find out how to apply, open up the tab above titled “Exemption to vaccine requirements due to medical reasons”. * A person who must travel due to an emergency situation or an urgent medical reason and there is an immediate threat to their safety. * A person who qualifies for a National Interest Exemption from Transport Canada. These exemptions are administered by Transport Canada. For additional information, visit https://vaccine-exemption.tc.canada.ca/External site which may not meet accessibility guidelines.. * A person who is only transiting through Canada. * Foreign nationals who do not reside in Canada and are departing Canada before February 28, 2022. * Canadians returning to Canada and not traveling within Canada by air or rail upon arrival. * Passengers traveling from a remote community, under certain conditions. The government has asked air carriers to administer exemption requests from passengers who may be considered for accommodation on the basis of their sincerely held religious beliefs, indicating that requests must be submitted 21 days in advance of travel. We have carefully considered these types of exemption requests and their basis, the interests of all parties involved, and other factors relating to the accommodation of sincere religious beliefs, and do not anticipate being able to accommodate any exemption request on this basis in the present circumstances. A person may apply to the Minister of Transport for a public interest exemption under section 5.9(2) of the Aeronautics Act. For more information, you may email Transport Canada at: questions@tc.gc.ca. This is a general discretionary power that the Minister may choose to use where he believes the public interest requires it. Finally, please note that with any exemption, a traveller will remain subject to other conditions and other measures such as being required to present a valid proof of a valid COVID-19 molecular test result at the time of boarding and to wear a suitable mask, covering their nose and mouth, at all times when onboard our aircraft or in an airport with no exception, except for brief periods of time when eating, drinking, and taking oral medication. Health and safety measures With Air Canada CleanCare+, we’ve enhanced our health and safety measures at every stage of your journey. Check-in For your safety, we’ve implemented health screening questions, required travel document validation, the disinfection of frequently touched areas such as check-in counters and kiosks, as well as many other measures. * Virtual queuing in place of physical lineups will minimize wait times and contact at select counters. * For the safety of everyone, our check-in kiosks are regularly cleaned. * Touch-free check-in at select airports includes our seamless TouchFree Bag Check service. Indicate the number of checked bags during mobile check-in, print your bag tags from dedicated kiosks, then drop off your bags using TouchFree Bag Drop. * For your safety, all customers are required to wear protective face coverings. * Carry-on baggage compliance will be measured by new technology, at select airports, and enforced prior to security. * Hand sanitizer dispensers have been placed throughout the airport for your personal use. * All of our check-in counters are thoroughly sanitized throughout the day. * All of our employees wear face coverings, with other optional PPE (personal protective equipment) available, such as gloves. * We'll ask you a few health questions and validate required travel documents before you board to make sure you're safe to fly. Boarding Ongoing cleaning of our gate areas, regular health screening questions for all customers, as well as mandatory face coverings for all employees and customers are steps designed to protect you, and everyone on board. * For your safety, all customers are required to wear protective face coverings. * Gate announcements will be made to advise Economy Class customers if their flight is reaching capacity. This allows you to explore other options if you prefer more space onboard. * All of our gate counters are cleaned regularly for your convenience. * All of our employees wear face coverings, with other optional PPE items available such as gloves. * Our boarding process has changed to minimize contact and ensure appropriate distancing. * As a precaution, we may ask you a few health-related questions before boarding. On board All high-touch areas are sanitized with hospital-grade disinfectant pre-flight, and aircraft receive a thorough cleaning each time they overnight. Additional onboard safety measures are also in place. * For your safety, all seat belt buckles and seat controls are sanitized thoroughly. * We properly wipe and sanitize each armrest for your health and comfort. * We're sanitizing cabin windows and shades to help you enjoy the view. * Your light switches and air circulation controls are properly sanitized. * When an aircraft overnights, we sanitize all ceiling areas, including the inside of each overhead bin and their handles to keep your luggage clean. * You can fly confidently, knowing our HEPA filtration systems capture 99.9% of airborne particles, and continually refreshes cabin air. * For your safety, all customers are required to wear protective face coverings. * Pillows and blankets provided are wrapped and sealed. * Our disposable Customer Care Kits include a complimentary mask and hand sanitizer. * We use a disinfectant in the regular cleaning of our lavatories. * On flights where complimentary meals are offered, pre-packaged meals will be provided for your safety, with an antiseptic wipe included. * Bar service will be combined with meal service to minimize contact. * We're sanitizing all tray tables before boarding for your safety. * We're rigorously cleaning all headrest covers. * We sanitize your personal screen and all in-flight entertainment surfaces. * An electrostatic disinfectant sprayer is part of our sanitization procedures. * Our disposable Customer Care Kits include a complimentary mask, bottled water, hand sanitizer, headset, and snack. * We’re wiping down sidewalls for your peace of mind each time an aircraft overnights. Lounges Enhanced cleaning and disinfection procedures, pre-packaged foods, and a new ordering system are some of the steps we’re taking as we begin reopening lounges. Learn more. * Hand sanitizer dispensers are positioned strategically throughout the lounge. * Face masks are mandatory for customers and employees. * All high-touch areas are thoroughly cleaned with a hospital-grade disinfectant throughout the day. * Eligible customers are required to scan their own boarding pass, status card, or membership card. The card swiper will be disinfected after each use. * For employees, temperature screenings and daily health assessments are mandatory. * As a means of contact tracing, a record is kept of all lounge visitors for 30 days. * Business services are limited to complimentary Wi-Fi and remote printing. * Customer flow is managed via arrowed floor decals. On-board transmission facts Find out why the transmission of communicable diseases inside an aircraft are very rare. Cases of transmission of communicable diseases on aircraft are very rare. The reasons for the apparently low rate of in-flight transmission are not fully determined but are thought to include a combination of factors, such as the inherent characteristics of cabin air flow. Various government bodies have confirmed the risk of onboard transmission is exceedingly low, which accords with scientific studies on communicable diseases and air travel. Air Canada’s additional measures such as pre-flight screening questionnaires, temperature monitoring and mandatory face coverings are also considered effective. Find out more in this helpful Fact sheet. Contact tracing protocol What does Air Canada do if a passenger is identified as having travelled with COVID-19 post flight? As with all communicable disease protocols, if someone tests positive for the virus after having travelled on a flight, Air Canada is notified by the appropriate health authority. Depending on the transmission profile of the disease, we are given strict protocol as to who is required for contact tracing. The health authorities take responsibility for contacting passengers directly and advising them of the situation. In most cases, crews primarily working in the specific rows are also included in the contact tracing. Due to privacy laws, the names cannot be disclosed to anyone other than the public health authority. To protect all those on board, if a customer exhibits symptoms of COVID-19 during flight, Air Canada has well-established protocols and our crews are well trained to manage these situations. During flight, our Flight Deck crew can also directly contact medical authorities who can advise in real time. If determined necessary, health authorities will meet the aircraft to assess and follow up as required. The Public Health Agency of Canada (PHAC) maintains a list of flights with confirmed COVID-19 cases on boardExternal site which may not meet accessibility guidelines.. Back to top CHANGES AND CANCELLATIONS We have implemented flexible and expanded change and cancellation options. UNLIMITED CHANGES. NO CHANGE FEES. ONLY UNTIL FEBRUARY 28TH. Unlimited changes. No change fees. – Until February 28, 2022, if you want to change your flight, we'll waive the change fee. After February 28, 2022, you can make one change at no extra charge. If your new fare has a higher price, you only need to pay the difference from your original fare. You can make a change up to 2 hours before your flight. If Air Canada changes the time of your flight, you can make a change for free. If your flight is cancelled, you get a refund – If your flight is cancelled for any reason and we don’t rebook you on another flight that departs or arrives within three hours of your original departure or arrival time, or if we add a connection to your itinerary, you can request a refund. Need to cancel? Save the value for future travel – If you need to cancel a booking, the full value can be transferred to an Air Canada Travel Voucher, which never expires and is fully transferrable, or converted into Aeroplan points with a 65% bonus. Refundable tickets are always refundable. Flexibility with Aeroplan bookings – Until February 28, 2022, if you want to change your Aeroplan flight reward, we'll waive all change fees. After February 28, 2022, you can still make one change without a fee. Learn more. Change, cancel or make a new booking To change or cancel your booking, contact your original booking source: * For bookings made directly with Air Canada (including aircanada.com, the Air Canada app, and our contact centres), or Kayak, Google Flights, and Skyscanner you can manage your booking or call 1-888-247-2262 (for international and other numbers, visit aircanada.com/othernumbers). * For bookings made using Aeroplan points you can also manage your booking or call 1-800-361-5373 (for international and other numbers, visit our customer support page). * For bookings made with a Travel agent or any online travel agency (for example, Expedia or Priceline), contact them directly for assistance. * For Air Canada Vacations bookings, please call 1-800-296-3408 or visit the Air Canada Vacations site. * For Air Canada for Business bookings, please call 1-888-335-4189 or visit the Air Canada for Business site. Looking to make a new booking? Simply visit aircanada.com. Important information for unvaccinated travellers At this time, the only unvaccinated travellers who are allowed to enter Canada are Canadian citizens. If you are not a Canadian citizen or permanent resident and are not vaccinated, you may not be permitted to enter the country. Some exemptions apply: Find out if you can enter Canada. External site which may not meet accessibility guidelines. For Canadian citizens and permanent residents: While quarantine is not required, your trip must terminate at your first point of entry in Canada. To reach your final destination in Canada, you must arrange for private transportation at your own expense. This means that you may not be permitted to board any domestic connecting flights that were previously booked. For more details including how to rebook, please see our flexible rebooking options. Some exemptions applyExternal site which may not meet accessibility guidelines.. For foreign nationals: Travel continues for essential purposesExternal site which may not meet accessibility guidelines. only. Starting January 15, unvaccinated or partially vaccinated foreign nationals will only be allowed to enter Canada if they meet the criteria for limited exceptions, which apply to certain groups such as agricultural and food processing workers, marine crew members, those entering on compassionate grounds, new permanent residents, resettling refugees and some children under the age of 18. Exempt unvaccinated travellers will continue to be subject to testing, quarantine, and other entry requirements. Non-exempt unvaccinated or partially vaccinated foreign nationals will be prohibited entry into Canada. Learn more about the regulations for unvaccinated travellers provided by the Government of CanadaExternal site which may not meet accessibility guidelines.. Terms and conditions For changing or cancelling your booking: * Ticket must be issued on or before February 28, 2022. * For original travel between March 1, 2020 and February 28, 2023. * For tickets purchased on or before March 31, 2021: If you need to change any flight, your new travel must be completed within 24 months from the date of the last unflown flight. No change fee will apply, however a difference in fare may apply. * For tickets purchased on or after April 1, 2021: if you need to change any flight, your new travel must be completed within 24 months of the original purchase date. No change fee will apply, however a difference in fare may apply. * Existing bookings may only be changed or cancelled up to 2 hours prior to departure. * After February 28, 2022, you can make one change at no extra charge. * Refundable tickets will be refunded as per the applicable fare rules; a cancellation fee may still apply. Back to top To assist you, our Travel Ready hub is a guide to help you understand some of the key requirements in order for you to travel on your intended itinerary. However, especially as the requirements continue to change quickly, this information does not replace the specific information provided by government and other relevant authorities. Air Canada has partnered with Sherpa to bring this information to you for reference only, and while Sherpa makes best efforts to keep the information updated, due to fast-changing government mandates and restrictions which may be affected by numerous factors (for example, point of origin, age, final destination, purpose or duration of travel, state of vaccination), as well as due to interpretation by the applicable local government officials, Air Canada is not responsible for the completeness and accuracy of this information; neither Air Canada, nor any of its employees or agents may under any circumstances be held responsible or liable in any way for any claim, loss, damage, cost, expense or liability whatsoever that may result from your access to, or reliance on, information provided on this page. It is your responsibility to ensure that you meet all entry requirements and have all the valid travel documents necessary to enter in, exit from or transit through, each country/region on your itinerary regardless of if the flight is operated by Air Canada or another carrier. We strongly recommend that you contact the government of each country on your itinerary for detailed, up-to-date information on health, passport, visa, and other entry requirements applicable to your case, as they may vary based on country of nationality and other factors. The final determination of entry in or transit through is the decision of the government and officials of the country to which you are travelling. For this we recommend reviewing the IATA Travel CentreExternal site which may not meet accessibility guidelines. prior to travelling. We have detected a device type and/or operating system version that may result in slow performance on this site. If you are experiencing problems, please try our mobile app Opens in a new windowExternal site which may not meet accessibility guidelines.. CUSTOMER SUPPORT * Contact Information Opens in a New Window * Baggage Fees and Optional Services * Baggage Fee Changes SPECIAL OFFERS * View Special Offers * Why Book With Us * Subscribe Opens in a New Window * Modify Preferences Opens in a New Window ABOUT AIR CANADA Facebook Opens in a New Window External site which may not meet accessibility guidelines. Twitter Opens in a New Window External site which may not meet accessibility guidelines. YouTube Opens in a New Window External site which may not meet accessibility guidelines. RSS Feeds Opens in a New Window External site which may not meet accessibility guidelines. * Media Centre Opens in a New Window * Official Languages Opens in a New Window * Travel Agents * Careers Opens in a New Window * Air Canada Cargo Opens in a New Window * Air Canada Foundation Opens in a New Window * Investor Relations * Site Map Voted Best Airline in North America Named Best Airline in North America General Conditions of Carriage & Tariffs Customer Service Plan Privacy Policy Cookies Policy © 2021 Air Canada Indicates an external site which may not meet accessibility guidelines.