22 August, 2019

Go south on a self-drive adventure you’ll never forget

Sydney to Tassie’s a breeze with this two-day roadtrip to our Melbourne port.

The best way to explore Tasmania is by road – ideally with your own vehicle, loaded with everything you need, then topped up with treasures from the island state. Driving from Sydney to Melbourne can be a half-day sprint, a leisurely, scenic roadtrip, or try this enjoyable two-day jaunt.

Sydney > Canberra

Make an early start to beat the traffic and you’ll be in Canberra before lunchtime, even with a break in the charming Southern Highlands town of Bowral. From the centre of Sydney it’s 290 kilometres via the Hume Highway to the nation’s capital, home to many of Australia's most important institutions.

Stretch your legs in one of them: perhaps the majestic Australian War Memorial, which includes an extensive military history museum, or the National Gallery of Australia, where you’ll find Sidney Nolan's iconic Ned Kelly paintings and the world's largest collection of Indigenous Australian art alongside international contemporaries artists such as Yayoi Kusama. 

Enjoy a casual lunch at either institution, or treat yourself at one of Canberra’s best restaurants such as modern European fine diner Courgette, lively trattoria Italian and Sons, or Ottoman Cuisine for fancy new-fashioned Turkish.

The Spirits of the Pumpkins Descended into Heavens - Yayoi Kusama (Image: National Gallery Australia)
The Spirits of the Pumpkins Descended into Heavens - Yayoi Kusama (Image: National Gallery Australia)

Canberra > Albury-Wodonga

It’s about 330 kilometres from the ‘bush capital’ to Albury-Wodonga via the Hume. Along the way, say g’day to the Dog on the Tuckerbox in Gundagai or the submarine stranded inland in Holbrook, then rest up overnight in these twin towns on the NSW-Victoria border.

Albury-Wodonga has been an important meeting place and river crossing for thousands of years, so there's lots of history to explore. Get a quick lesson along the Albury Heritage Trail, which is graced with grand Victorian-era buildings such as the 1888 railway station, and less conspicuous traces of history like the tree marked by explorer William Hovell in 1824.

Alternatively, there might be time to visit Murray Art Museum Albury, the cool contemporary gallery better known as MAMA, or simply relax on or by the Murray River, from swimming and kayaking to a barbecue at one of the riverside reserves. Want to let someone else do the cooking while you raise a glass to the roadtrip’s first great day? Try the smart new Albury Brewhouse, or Miss Amelie, an award-winning modern European restaurant in Wodonga’s heritage train station.

Albury-Wodonga > Bendigo

Hit the Hume bright and early and you’ll soon be 280 kilometres away in the Victorian Gold Rush city of Bendigo, perhaps pausing in the old High Country town of Wangaratta along the way. Hop on a vintage 'talking tram' for a pleasant introduction to Bendigo’s rich heritage, including the Central Deborah Gold Mine, a Joss House used by 19th century Chinese miners, and an ostentatious Victorian-era fountain.

Or check out what’s on at Bendigo Art Gallery, one of Australia's best regional galleries. It’s developed a reputation for hosting major historic fashion exhibitions, and also has a fine permanent collection that includes works by the likes of Fredrick McCubbin and contemporary Australian art star Patricia Piccinini. Lunch at the gallery, at restaurant-bar Wine Bank on View, which is just down the street in a beautiful old bank, or try Melbourne-meets-country cafes like Old Green Bean or Percy and Percy.

Bendigo Tram (Image: Visit Victoria)
Bendigo Tram (Image: Visit Victoria)

Bendigo > Port Melbourne

It’s about 150 kilometres via the M79 to Spirit of Tasmania’s Melbourne port. You might want to take a break in pretty little villages like Kyneton or Macedon, but be sure to arrive in good time for departure. Next stop – Tassie!

Mount Macedon (Image: Visit Victoria)
Mount Macedon (Image: Visit Victoria)

Heading home after your island adventure

If you’re sailing back to the mainland overnight, you will likely disembark in Port Melbourne around 6.30am. That’s perfect for getting back to Sydney sooner rather than later, because you can beat the peak-hour traffic and be on the Hume Highway before long. The most direct route is about 880 kilometres to the centre of Sydney, so a good run will see you home in time for dinner – even with breaks in towns like Euroa and Glenrowan in Ned Kelly country, and Goulburn, where you can get a photo with the Big Merino.

Those with time up their sleeves have lots of options. While away a day or three in Melbourne, with a big show like Harry Potter and the Cursed Child, a match or tour at the MCG, and laneway cafe coffees. From here you could head to Sydney by the coast, including the Mornington Peninsula, Phillip Island, Wilsons Promontory, Lakes Entrance, Eden, Batemans Bay and Jervis Bay. Or go inland via historic towns like Echuca and Berrima, or take in the Great Dividing Range’s glory including the Great Alpine Road and Kosciuszko National Park.

National Sports Museum at the MCG (Image: Visit Victoria)
National Sports Museum at the MCG (Image: Visit Victoria)
{{booking.getDepartureDate(legOfJourney, 'D MMM').toUpperCase()}} {{booking.getDepartureDate(legOfJourney, 'h:mm A')}}
Arrive {{booking.getArrivalDate(legOfJourney, 'D MMM h:mm A')}}
Your {{legOfJourney.toLowerCase()}} ticket
{{legOfJourney}} ticket
Departing {{getSailing().getOriginName()}}
{{getSailing().origin}} to {{Utils.reverseLocationCode(getSailing().origin)}}
{{legOfJourney}}
  • Fares Change
    • {{passengerLine.displayOverride}} {{passengerLine.currentQuantity}} x {{passengerLine.displayName}} ${{getSelectedFareTypePassengerGroupPrice(passengerLine)}} $0 ${{getSelectedPassengerGroupPrice(passengerLine) || 'To be selected'}} ({{getPassengerNet(passengerLine) | money}})
    • {{booking.getPetCount(legOfJourney)}} x {{Utils.pluralize('Pet', booking.getPetCount(legOfJourney))}} $0
    • 1 x {{vehicle.getSummaryDisplay()}}
      • {{extra}}
      • {{vehicle.getTotalLength()}}
      ${{getVehiclePrice($index) || 'To be selected'}} ({{getVehicleNet($index) | money }})
    • {{getPushbikesCount()}} x {{Utils.pluralize('Bicycle', getPushbikesCount())}} ${{getPushbikesPrice() || 'To be selected'}}
  • Date Change
    • Departing {{booking.getDepartureDate(legOfJourney, 'dddd D MMMM')}} at {{booking.getDepartureDate(legOfJourney, 'h:mm A')}}
    • Arriving {{booking.getArrivalDate(legOfJourney, 'dddd D MMMM')}} at {{booking.getArrivalDate(legOfJourney, 'h:mm A')}}
  • Accommodation Change
    • {{getAppliedDealProduct().productName}} deal applied
    • To be selected
    • {{selectedAccommodationOption.quantity}} x {{selectedAccommodationOption.displayText}} ${{getSelectedFareTypeAccommodationOptionPrice(selectedAccommodationOption)}} ${{getSelectedAccommodationOptionPrice(selectedAccommodationOption)}} ({{getSelectedAccommodationOptionNet(selectedAccommodationOption) | money}})
    • Total {{legOfJourney.toLowerCase()}}
    • {{ getSailingTotalPriceText(legOfJourney) }} ({{getSailingTotalNet(legOfJourney) | money}})
{{booking.getDepartureDate(legOfJourney, 'D MMM').toUpperCase()}} {{booking.getDepartureDate(legOfJourney, 'h:mm A')}}
Arrive {{booking.getArrivalDate(legOfJourney, 'D MMM h:mm A')}}
Your {{legOfJourney.toLowerCase()}} ticket
{{legOfJourney}} ticket
Departing {{getSailing().getOriginName()}}
{{getSailing().origin}} to {{Utils.reverseLocationCode(getSailing().origin)}}
{{legOfJourney}}
  • Fares Change
    • {{passengerLine.displayOverride}} {{passengerLine.currentQuantity}} x {{passengerLine.displayName}} ${{getSelectedFareTypePassengerGroupPrice(passengerLine)}} $0 ${{getSelectedPassengerGroupPrice(passengerLine) || 'To be selected'}} ({{getPassengerNet(passengerLine) | money}})
    • {{booking.getPetCount(legOfJourney)}} x {{Utils.pluralize('Pet', booking.getPetCount(legOfJourney))}} $0
    • 1 x {{vehicle.getSummaryDisplay()}}
      • {{extra}}
      • {{vehicle.getTotalLength()}}
      ${{getVehiclePrice($index) || 'To be selected'}} ({{getVehicleNet($index) | money }})
    • {{getPushbikesCount()}} x {{Utils.pluralize('Bicycle', getPushbikesCount())}} ${{getPushbikesPrice() || 'To be selected'}}
  • Date Change
    • Departing {{booking.getDepartureDate(legOfJourney, 'dddd D MMMM')}} at {{booking.getDepartureDate(legOfJourney, 'h:mm A')}}
    • Arriving {{booking.getArrivalDate(legOfJourney, 'dddd D MMMM')}} at {{booking.getArrivalDate(legOfJourney, 'h:mm A')}}
  • Accommodation Change
    • {{getAppliedDealProduct().productName}} deal applied
    • To be selected
    • {{selectedAccommodationOption.quantity}} x {{selectedAccommodationOption.displayText}} ${{getSelectedFareTypeAccommodationOptionPrice(selectedAccommodationOption)}} ${{getSelectedAccommodationOptionPrice(selectedAccommodationOption)}} ({{getSelectedAccommodationOptionNet(selectedAccommodationOption) | money}})
    • Total {{legOfJourney.toLowerCase()}}
    • {{ getSailingTotalPriceText(legOfJourney) }} ({{getSailingTotalNet(legOfJourney) | money}})
Your {{LegOfJourney.Return.toLowerCase()}} ticket
{{LegOfJourney.Return}} ticket
No {{LegOfJourney.Return}} Trip
No {{LegOfJourney.Return}} Trip
{{LegOfJourney.Return}}
{{ getChosenSoFarAmount() }} See breakdown
Trip total
$AUD
  • Outbound{{ getSailingTotalPriceText(LegOfJourney.Outbound) }} ({{getSailingTotalNet(LegOfJourney.Outbound) | money}})
  • Return{{ getSailingTotalPriceText(LegOfJourney.Return) }} ({{getSailingTotalNet(LegOfJourney.Return) | money}})
  • Travel Insurance${{booking.getTravelInsurancePrice()}}
  • Credit card fees{{ booking.getCreditCardFeePrice() | money }}
  • Total{{ getBookingTotalPriceText() }} ({{ booking.totalNet() | money }})
You're ready to get started building your fare.
Along the way you'll add passengers, any vehicles and accommodation.
Let's get started!
Select vehicle
{{vehicleOptions.getDisplay()}}
Including: {{vehicleOptions.getExtrasDisplay()}}
Change Remove Editing
Or use one from a recent search:
{{vehicleOptions.getDisplay()}} Including: {{vehicleOptions.getExtrasDisplay()}} Add Remove
{{IbpCms.vehiclesBookMotorhomeAsCarError}}
Total length cannot exceed {{getVehicleMaxTotalLength()}} metres.
Please call 1800 884 305 to complete your booking.
Please ring 1800 634 906 to make this booking.

Your model of vehicle is up to {{getEditableVehicleOptions().vehicle.heightInMetres | number: 2}}m high.

Carrying anything on the roof?

How high is the cargo on your roof?

Towing a caravan or trailer?

{{IbpCms.vehiclesFifthWheelerNotice}}

Towing a caravan or trailer?

{{IbpCms.vehiclesFifthWheelerNotice}}
loading
Select vehicle
{{vehicleOptions.getDisplay()}}
Including: {{vehicleOptions.getExtrasDisplay()}}
Change Remove Editing
Or use one from a recent search:
{{vehicleOptions.getDisplay()}} Including: {{vehicleOptions.getExtrasDisplay()}} Add Remove
{{IbpCms.vehiclesBookMotorhomeAsCarError}}
Total length cannot exceed {{getVehicleMaxTotalLength()}} metres.
Please call 1800 884 305 to complete your booking.
Please ring 1800 634 906 to make this booking.

Your model of vehicle is up to {{getEditableVehicleOptions().vehicle.heightInMetres | number: 2}}m high.

Carrying anything on the roof?

How high is the cargo on your roof?

Towing a caravan or trailer?

{{IbpCms.vehiclesFifthWheelerNotice}}

Towing a caravan or trailer?

{{IbpCms.vehiclesFifthWheelerNotice}}
loading
Select {{legOfJourney.toLowerCase()}} date

{{ IbpCms.fareTotalMinimumPrice.replace('%LEGOFJOURNEY%', legOfJourney.toLowerCase()) }} ${{getTotalMinimumPriceAdvice().totalMinimumPrice}}

{{ IbpCms.fareNotManyPlacesLeftAtThisPriceMessage }}
{{getNumberOfPeopleViewingText()}}
{{getDealAvailableText()}}
  • {{mode}}
loading loading loading loading loading
  • Previous day sailing {{Utils.dateFormat(getPrevDaySailingDate(), 'MMM DD')}}
    No day sailings during this period
    Next day sailing {{Utils.dateFormat(getNextDaySailingDate(), 'MMM DD')}}
  • {{Utils.dateFormat(date.date, 'ddd').toUpperCase()}} {{Utils.dateFormat(date.date, 'DD')}} {{Utils.dateFormat(date.date, 'MMM').toUpperCase()}}
    • No day
      sailing
    • {{Utils.dateFormat(sailingPriceSet.departureDateTime, 'h:mm A')}}
      {{getFareTotalPrice(sailingPriceSet)}}
      {{ getPriceDifferenceAmountText(sailingPriceSet) }}
      Day
      sold out
      Night
      sold out
      Special Fare
    • {{Utils.dateFormat(sailingPriceSet.departureDateTime, 'h:mm A')}}
      {{getFareTotalPrice(sailingPriceSet)}}
      {{ getPriceDifferenceAmountText(sailingPriceSet) }}
      Day
      sold out
      Night
      sold out
      Special Fare
    • No night
      sailing

Accommodation availability – {{booking.getDepartureDate(legOfJourney, 'dddd D MMMM')}} at {{booking.getDepartureDate(legOfJourney, 'HH:mm')}}

  • {{option.displayText}}
    AM only Pets only
    Sold out
    From ${{getCheapestPrice(option)}} per {{option.unitText}}
    Included
Spirit Tip
{{IbpCms.accommodationSpiritTipCotSoldOut}}

{{ getFareDescription() }}
{{ IbpCms.fareAdditionalDescription }}

Select {{legOfJourney.toLowerCase()}} date

{{ IbpCms.fareTotalMinimumPrice.replace('%LEGOFJOURNEY%', legOfJourney.toLowerCase()) }} ${{getTotalMinimumPriceAdvice().totalMinimumPrice}}

{{ IbpCms.fareNotManyPlacesLeftAtThisPriceMessage }}
{{getNumberOfPeopleViewingText()}}
{{getDealAvailableText()}}
  • {{mode}}
loading loading loading loading loading
  • Previous day sailing {{Utils.dateFormat(getPrevDaySailingDate(), 'MMM DD')}}
    No day sailings during this period
    Next day sailing {{Utils.dateFormat(getNextDaySailingDate(), 'MMM DD')}}
  • {{Utils.dateFormat(date.date, 'ddd').toUpperCase()}} {{Utils.dateFormat(date.date, 'DD')}} {{Utils.dateFormat(date.date, 'MMM').toUpperCase()}}
    • No day
      sailing
    • {{Utils.dateFormat(sailingPriceSet.departureDateTime, 'h:mm A')}}
      {{getFareTotalPrice(sailingPriceSet)}}
      {{ getPriceDifferenceAmountText(sailingPriceSet) }}
      Day
      sold out
      Night
      sold out
      Special Fare
    • {{Utils.dateFormat(sailingPriceSet.departureDateTime, 'h:mm A')}}
      {{getFareTotalPrice(sailingPriceSet)}}
      {{ getPriceDifferenceAmountText(sailingPriceSet) }}
      Day
      sold out
      Night
      sold out
      Special Fare
    • No night
      sailing

Accommodation availability – {{booking.getDepartureDate(legOfJourney, 'dddd D MMMM')}} at {{booking.getDepartureDate(legOfJourney, 'HH:mm')}}

  • {{option.displayText}}
    AM only Pets only
    Sold out
    From ${{getCheapestPrice(option)}} per {{option.unitText}}
    Included
Spirit Tip
{{IbpCms.accommodationSpiritTipCotSoldOut}}

{{ getFareDescription() }}
{{ IbpCms.fareAdditionalDescription }}

Select {{legOfJourney.toLowerCase()}} accommodation

{{booking.getDepartureDate(legOfJourney, 'dddd D MMMM')}} at {{booking.getDepartureDate(legOfJourney, 'h:mm A')}}

Spirit Tip
{{IbpCms.accommodationSpiritTipCotSoldOut}}
Deal applied
  • {{getDealDetails(getAppliedDeal()).title}} Details

    {{getDealDetails(getAppliedDeal()).shortDescription}}

    Nice! Now it's time to add your cabin to the package.
    Remove
{{Utils.pluralize('Deal', numDealsOnSailing())}} available
  • {{getDealDetails(code).title}} Details

    {{getDealDetails(code).shortDescription}}

    Deal available
    Remove
loading
Accommodation available
  • Pet Kennels
    Twin Bed Four Bed

    {{option.displayText}} Details

    {{IbpCms.accommodationDayTicketsFlavourText}}
    {{IbpCms.accommodationPetKennelsFlavourText}}
    • 2 4 2 4 {{feature.displayName}}
     
    ${{getOptionUnitPrice(option)}}
    per {{option.unitText}}
    ${{getSelectedFareTypeOptionUnitPrice(option)}} Original Price
    {{getOptionQuantity(option)}} or fewer {{Utils.pluralize(option.unitText, getOptionQuantity(option))}} available
    {{option.tooltipText}} {{IbpCms.accommodationTypeDescriptionSharedMale2Berth}} {{IbpCms.accommodationTypeDescriptionSharedMale4Berth}} {{IbpCms.accommodationTypeDescriptionSharedFemale2Berth}} {{IbpCms.accommodationTypeDescriptionSharedFemale4Berth}}
    Sold out
    For this sailing
    Find availability
    {{IbpCms.accommodationNotEnoughPeople}}
    {{option.displayText}}s not available with this deal.
    Remove Deal
    {{IbpCms.accommodationNoDayTicketsForNightSailings}}
    Kennels are available for pets only.
loading
loading
Book the same accommodation on your return? Return accommodation price is {{ getReturnPriceForSameSelection() | money }}
loading
Select {{legOfJourney.toLowerCase()}} accommodation

{{booking.getDepartureDate(legOfJourney, 'dddd D MMMM')}} at {{booking.getDepartureDate(legOfJourney, 'h:mm A')}}

Spirit Tip
{{IbpCms.accommodationSpiritTipCotSoldOut}}
Deal applied
  • {{getDealDetails(getAppliedDeal()).title}} Details

    {{getDealDetails(getAppliedDeal()).shortDescription}}

    Nice! Now it's time to add your cabin to the package.
    Remove
{{Utils.pluralize('Deal', numDealsOnSailing())}} available
  • {{getDealDetails(code).title}} Details

    {{getDealDetails(code).shortDescription}}

    Deal available
    Remove
loading
Accommodation available
  • Pet Kennels
    Twin Bed Four Bed

    {{option.displayText}} Details

    {{IbpCms.accommodationDayTicketsFlavourText}}
    {{IbpCms.accommodationPetKennelsFlavourText}}
    • 2 4 2 4 {{feature.displayName}}
     
    ${{getOptionUnitPrice(option)}}
    per {{option.unitText}}
    ${{getSelectedFareTypeOptionUnitPrice(option)}} Original Price
    {{getOptionQuantity(option)}} or fewer {{Utils.pluralize(option.unitText, getOptionQuantity(option))}} available
    {{option.tooltipText}} {{IbpCms.accommodationTypeDescriptionSharedMale2Berth}} {{IbpCms.accommodationTypeDescriptionSharedMale4Berth}} {{IbpCms.accommodationTypeDescriptionSharedFemale2Berth}} {{IbpCms.accommodationTypeDescriptionSharedFemale4Berth}}
    Sold out
    For this sailing
    Find availability
    {{IbpCms.accommodationNotEnoughPeople}}
    {{option.displayText}}s not available with this deal.
    Remove Deal
    {{IbpCms.accommodationNoDayTicketsForNightSailings}}
    Kennels are available for pets only.
loading
loading
Book the same accommodation on your return? Return accommodation price is {{ getReturnPriceForSameSelection() | money }}
loading
Your trip summary

Your {{legOfJourney.toLowerCase()}} ticket {{legOfJourney}} ticket Departing {{getSailing().getOriginName()}} {{getSailing().origin}} to {{Utils.reverseLocationCode(getSailing().origin)}}

{{getDealName(legOfJourney)}} deal applied See details
Date
  • Departing {{booking.getDepartureDate(legOfJourney, 'dddd D MMMM, YYYY')}} at {{booking.getDepartureDate(legOfJourney, 'h:mm A')}} Change
  • Arriving {{booking.getArrivalDate(legOfJourney, 'dddd D MMMM, YYYY')}} at {{booking.getArrivalDate(legOfJourney, 'h:mm A')}}
  • Disembarking from {{booking.getDisembarkTime(legOfJourney, 'h:mm A')}}
Fares
  • Details Change
  • {{passengerLine.displayOverride}} {{passengerLine.currentQuantity}} x {{passengerLine.displayName}} ${{getSelectedFareTypePassengerGroupPrice(passengerLine)}} $0 ${{getSelectedPassengerGroupPrice(passengerLine) || 'To be selected'}} ({{getPassengerNet(passengerLine) | money}})
  • {{booking.getPetCount(legOfJourney)}} x {{Utils.pluralize('Pet', booking.getPetCount(legOfJourney))}} $0
  •  
    {{ IbpCms.fareNotManyPlacesLeftAtThisPriceMessage }}
Vehicles
  • Details Change Update Rego
  • No vehicles
  • 1 x {{vehicle.getSummaryDisplay()}} ${{getVehiclePrice($index) || 'To be selected'}} ({{getVehicleNet($index) | money }})
    • {{extra}}
    • {{vehicle.getTotalLength()}}
  • {{getPushbikesCount()}} x {{Utils.pluralize('Bicycle', getPushbikesCount())}} ${{getPushbikesPrice() || 'To be selected'}}
Accommodation
  • Details Change
  • {{getAppliedDealProduct().productName}} deal applied
  • To be selected
  • {{option.quantity}} x {{option.displayText}} ${{getSelectedFareTypeAccommodationOptionPrice(option)}} ${{getSelectedAccommodationOptionPrice(option)}} ({{getSelectedAccommodationOptionNet(option) | money}})
Pets & Kennels
  • Details Change
  • {{getSailing().selectedAccommodation.getExtra(ExtrasCode.Kennel).quantity}} x {{Utils.pluralize("Pet", getSailing().selectedAccommodation.getExtra(ExtrasCode.Kennel).quantity)}} with {{Utils.pluralize("kennel", getSailing().selectedAccommodation.getExtra(ExtrasCode.Kennel).quantity)}} ${{getSelectedFareTypeAccommodationOptionPrice(getSailing().selectedAccommodation.getExtra(ExtrasCode.Kennel))}} ${{getSelectedAccommodationOptionPrice(getSailing().selectedAccommodation.getExtra(ExtrasCode.Kennel))}}
  • No pets travelling
Passengers & Allocation
  • Full Name Change
  • {{passenger.passengerDetails.firstName}} {{passenger.passengerDetails.lastName}}
    {{passenger.passengerDetails.firstName}} {{passenger.passengerDetails.lastName}}
    In a {{getAccommodationDisplayName(allocation.categoryCode, allocation.categorySpecificationCode)}}
Cancel this sailing
Refund due: {{ getSailing().refundableAmount | money }}
  • {{ fee.description }}: {{ fee.price | money:false }}

Your {{legOfJourney.toLowerCase()}} ticket {{legOfJourney}} ticket Departing {{getSailing().getOriginName()}} {{getSailing().origin}} to {{Utils.reverseLocationCode(getSailing().origin)}}

{{getDealName(legOfJourney)}} deal applied See details
Date
  • Departing {{booking.getDepartureDate(legOfJourney, 'dddd D MMMM, YYYY')}} at {{booking.getDepartureDate(legOfJourney, 'h:mm A')}} Change
  • Arriving {{booking.getArrivalDate(legOfJourney, 'dddd D MMMM, YYYY')}} at {{booking.getArrivalDate(legOfJourney, 'h:mm A')}}
  • Disembarking from {{booking.getDisembarkTime(legOfJourney, 'h:mm A')}}
Fares
  • Details Change
  • {{passengerLine.displayOverride}} {{passengerLine.currentQuantity}} x {{passengerLine.displayName}} ${{getSelectedFareTypePassengerGroupPrice(passengerLine)}} $0 ${{getSelectedPassengerGroupPrice(passengerLine) || 'To be selected'}} ({{getPassengerNet(passengerLine) | money}})
  • {{booking.getPetCount(legOfJourney)}} x {{Utils.pluralize('Pet', booking.getPetCount(legOfJourney))}} $0
  •  
    {{ IbpCms.fareNotManyPlacesLeftAtThisPriceMessage }}
Vehicles
  • Details Change Update Rego
  • No vehicles
  • 1 x {{vehicle.getSummaryDisplay()}} ${{getVehiclePrice($index) || 'To be selected'}} ({{getVehicleNet($index) | money }})
    • {{extra}}
    • {{vehicle.getTotalLength()}}
  • {{getPushbikesCount()}} x {{Utils.pluralize('Bicycle', getPushbikesCount())}} ${{getPushbikesPrice() || 'To be selected'}}
Accommodation
  • Details Change
  • {{getAppliedDealProduct().productName}} deal applied
  • To be selected
  • {{option.quantity}} x {{option.displayText}} ${{getSelectedFareTypeAccommodationOptionPrice(option)}} ${{getSelectedAccommodationOptionPrice(option)}} ({{getSelectedAccommodationOptionNet(option) | money}})
Pets & Kennels
  • Details Change
  • {{getSailing().selectedAccommodation.getExtra(ExtrasCode.Kennel).quantity}} x {{Utils.pluralize("Pet", getSailing().selectedAccommodation.getExtra(ExtrasCode.Kennel).quantity)}} with {{Utils.pluralize("kennel", getSailing().selectedAccommodation.getExtra(ExtrasCode.Kennel).quantity)}} ${{getSelectedFareTypeAccommodationOptionPrice(getSailing().selectedAccommodation.getExtra(ExtrasCode.Kennel))}} ${{getSelectedAccommodationOptionPrice(getSailing().selectedAccommodation.getExtra(ExtrasCode.Kennel))}}
  • No pets travelling
Passengers & Allocation
  • Full Name Change
  • {{passenger.passengerDetails.firstName}} {{passenger.passengerDetails.lastName}}
    {{passenger.passengerDetails.firstName}} {{passenger.passengerDetails.lastName}}
    In a {{getAccommodationDisplayName(allocation.categoryCode, allocation.categorySpecificationCode)}}
Cancel this sailing
Refund due: {{ getSailing().refundableAmount | money }}
  • {{ fee.description }}: {{ fee.price | money:false }}
Grand total: {{ getBookingTotalPrice() | money }} ({{ booking.totalNet() | money }})
loading
loading
{{getHeaderText()}}

{{ IbpCms.passengerDetailsIntro }} {{ IbpCms.vehicleRegoIntro }}

Oops, you must be travelling in order to make this booking
Adults
Remove {{detail.firstName}} {{detail.lastName}}

Pensioners (booked as adults)
Pensioner No. Expiry Date
Invalid Date Date must be in the future Required
Remove {{detail.firstName}} {{detail.lastName}}

Children
Date of birth
Required Invalid Date
{{IbpCms.validationChildAge}} change to infant fare {{IbpCms.validationChildAge}} change to adult fare
Remove {{detail.firstName}} {{detail.lastName}}

Infants
Date of birth
Required Invalid Date Date of birth is in the future.
{{IbpCms.validationInfantAge}} change to child fare
Remove {{detail.firstName}} {{detail.lastName}}

Vehicle Registrations{{getSailingDisplay(LegOfJourney.Outbound)}}
{{vehicle.getDisplay()}} With Extras: {{vehicle.getExtrasDisplay()}}

Vehicle Registrations{{getSailingDisplay(LegOfJourney.Return)}}
{{vehicle.getDisplay()}} With Extras: {{vehicle.getExtrasDisplay()}}

loading
Review where everyone's staying

We've assigned accommodation automatically – feel free to re-arrange

Your {{legOfJourney.toLowerCase()}} accommodation

{{room.sectionName}}

  • {{Utils.convertNameCase(passenger.passengerDetails.title)}} {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} {{Utils.convertNameCase(passenger.passengerDetails.lastName)}}
    Bed available
    Ticket available
    Move {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} Leave {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} here Swap with {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} Move {{Utils.convertNameCase(getActiveSwapPassenger().passengerDetails.firstName)}} here {{passenger.message}}
  • {{Utils.convertNameCase(passenger.passengerDetails.title)}} {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} {{Utils.convertNameCase(passenger.passengerDetails.lastName)}}
    Cot space available No cot space available Infant ticket available
    Move {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} Leave {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} here Swap with {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} Move {{Utils.convertNameCase(getActiveSwapPassenger().passengerDetails.firstName)}} here {{passenger.message}}
loading
{{IbpCms.cabinAllocationBookSameForReturn}}

We've assigned accommodation automatically – feel free to re-arrange

Your {{legOfJourney.toLowerCase()}} accommodation

{{room.sectionName}}

  • {{Utils.convertNameCase(passenger.passengerDetails.title)}} {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} {{Utils.convertNameCase(passenger.passengerDetails.lastName)}}
    Bed available
    Ticket available
    Move {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} Leave {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} here Swap with {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} Move {{Utils.convertNameCase(getActiveSwapPassenger().passengerDetails.firstName)}} here {{passenger.message}}
  • {{Utils.convertNameCase(passenger.passengerDetails.title)}} {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} {{Utils.convertNameCase(passenger.passengerDetails.lastName)}}
    Cot space available No cot space available Infant ticket available
    Move {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} Leave {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} here Swap with {{Utils.convertNameCase(passenger.passengerDetails.firstName)}} Move {{Utils.convertNameCase(getActiveSwapPassenger().passengerDetails.firstName)}} here {{passenger.message}}
loading
{{IbpCms.cabinAllocationBookSameForReturn}}
{{getPaymentHeading()}}

{{IbpCms.paymentIntro}}

Total due: {{getBookingTotalPriceBeforeVouchers()}}

Applied vouchers

  • #{{voucher.voucherNumber}}:  ${{voucher.value}}
Total now due: {{getBookingTotalPriceAfterVouchers()}}
Your voucher(s) will cover the cost of your booking. Please fill in the remaining details below. Add another voucher or use another payment method.
{{giftVoucherResult.message}}

You are cancelling the following sailing(s):
{{ sailing.getOriginName() }} to {{ LocationCode.getLocationName(Utils.reverseLocationCode(sailing.origin)) }} departing {{ Utils.dateFormat(sailing.getDate(), 'dddd D MMMM, YYYY') }}
Card # must match type Required
Visa, Mastercard, American Express, Diners, JCB
Card # must match type Required
Expiry date
{{IbpCms.validationCreditCardExpiry}} Required

Travel insurance

{{IbpCms.paymentTravelInsuranceFlavourText}}
Get travel insurance

{{payment.insurance.quote.label}} - Travel insurance premium = {{ payment.insurance.quote.price | money}}

View Details Remove
{{IbpCms.paymentNoTravelInsuranceWithGiftVouchers}}


Agency details

Show/hide net value ${{ getBalanceToBePaid() }}

You must agree to the following Terms and Conditions: Conditions of Carriage, Tasmanian Quarantine Conditions, Privacy Policy, Refund Policy, and the full terms and conditions of each fare linked below.

View our Privacy Statement regarding the personal information we have collected

Outbound fare summary
See full Terms & Conditions
Return fare summary
See full Terms & Conditions
loading
Booking updated

Dear {{ getCancelledBookingFirstName() }}

Your cancellation has been successful. {{ getPartialCancellationMessage() }}

Kind regards,

The team at Spirit of Tasmania

Cancellation successful

Dear {{ getCancelledBookingFirstName() }}

Your cancellation has been successful. We hope you book with us again soon.

Kind regards,

The team at Spirit of Tasmania

Booking confirmed!

Your booking reference is {{getBookingReference()}}.

Your travel insurance was successfully processed. Your policy number is {{getInsurancePolicyNumber()}}. Documentation will be sent to your specified email address.

Your travel insurance purchase was not successfully processed. To add travel insurance to your existing booking, please login to 'Manage my booking'.

Request

{{IbpCms.bookingConfirmedTextRequest}}

Insurance

{{IbpCms.bookingConfirmedTextInsurance}}

Sailors Club

{{IbpCms.bookingConfirmedTextSailorsClub}}

Show/hide net value {{ Utils.formatCurrency(getAgentActualPaymentAmount()) }}

Internet Banking Details


Bank Receipt Number: {{getInternetBankingDetails().bankReceiptNumber}}; Poli Transaction Reference Number: {{getInternetBankingDetails().transactionReferenceNumber}}
Completed At: {{getInternetBankingDetails().completedDateTime}}; Amount Paid: ${{getInternetBankingDetails().amountPaid}}; Status: {{getInternetBankingDetails().status}}