loading
Retrieving sailings…
There was an error retrieving our updated time table. Please try again later.
There are currently no scheduled sailings in the next 3 days.

Melbourne to Devonport (MEL to DPO)

Scheduled sailing Check-in Departure Arrival
{{sailing.departureDateTime | date: 'd MMM yyyy - h:mma'}} {{sailing.checkInStart | date: 'h:mma'}} - {{sailing.checkInEnd | date: 'h:mma'}} {{sailing.estimatedDepartureDateTime | date: 'h:mma'}} {{sailing.departureDateTime | date: 'h:mma'}} {{sailing.estimatedArrivalDateTime | date: 'h:mma'}} {{sailing.arrivalDateTime | date: 'h:mma'}}

Devonport to Melbourne (DPO to MEL)

Scheduled sailing Check-in Departure Arrival
{{dpoMelSailing.departureDateTime | date: 'd MMM yyyy - h:mma'}} {{dpoMelSailing.checkInStart | date: 'h:mma'}} - {{dpoMelSailing.checkInEnd | date: 'h:mma'}} {{dpoMelSailing.estimatedDepartureDateTime | date: 'h:mma'}} {{dpoMelSailing.departureDateTime | date: 'h:mma'}} {{dpoMelSailing.estimatedArrivalDateTime | date: 'h:mma'}} {{dpoMelSailing.arrivalDateTime | date: 'h:mma'}}

Melbourne Sports Events

Melbourne

Overview

Stylish and cosmopolitan, Melbourne is rightfully regarded as Australia’s cultural capital. Its cityscape is a blend of old and new, comprising elegant Victorian architecture and an array of modern skyscrapers—and with ever-present trams rattling through the streets it’s easy to see why Melbourne is called the country’s most European city.

Sport-mad Melbourne

Victorians and their sport… it’s kind of like a ‘kids in a candy shop’ scenario. And with something on seemingly every weekend, no matter the sport, the size of the ball or the surface on which it’s played, locals simply can’t get enough of the action.

What to watch

Australian Open

January in Melbourne is all about the tennis—over the course of two thrilling weeks, tensions and temperatures run high on court as players vie for the title of the year’s first grand slam tournament. Due largely to the sheer passion of the spectators, The Australian Open has been affectionately dubbed the Happy Slam. The atmosphere is electric, especially towards the tail-end of the tournament. There’s nothing quite like spending a warm summer’s evening inside a packed Rod Laver Arena cheering on your tennis idols. Live entertainment is also provided by a number of up-and-coming bands as they grace the ever-popular Heineken Live Stage.

Footy (AFL)

Melbourne is the birthplace of Australian rules football and is home to 9 of the 18 current clubs in the Australian Football League (AFL). Footy in this town is not merely a pastime—it’s a religion, a lifestyle, as much a part of Victorians as the blood running through their veins. To give you an idea of its popularity, it ranks fourth in the world with other sports in terms of average attendance per game. The primary venue for the AFL is the MCG—or Melbourne Cricket Ground—which swells to capacity (90,000+) for some games. The season culminates in the AFL Grand Final, traditionally held on the final Saturday in September or the first Saturday in October. The whole city comes together to celebrate the occasion, either with neighbourhood barbecues or drinks at the local pub—or of course at the G for those lucky enough to snag a ticket.

Melbourne Cup

Billed as the race that stops the nation, the Melbourne Cup is the biggest event on the Aussie horseracing calendar. Held at Flemington Race Course on the first Tuesday in November, the 3,200m race features 24 thoroughbreds aged three years and older—and what awaits at the finishing line is not only fame and glory but a total prize pool of over $6 million. The event is such a big deal in Victoria that the date is recognised as a public holiday for the state. Record crowds flock to Flemington in the hope of winning big—but as many would argue, it’s as much about the on-field fashion as it is about the race.

Motor racing

Right before the footy season kicks off, all sporting eyes turn to Albert Park for the Australian Grand Prix. Originally run at Phillip Island in 1928, and having been held in every state in Australia, the event is now well and truly a Melbourne institution. Part of the Formula 1 World Championship, the event draws over a 100,000 spectators on race day. Off the track, there’s plenty of entertainment to keep crowds enthused, with live bands and of course the stunning aerial acrobatics performed by the Australian Air Force.
{{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 {{legOfJourney.toLowerCase()}} 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()}} 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
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}}