Live demo

Ferry booking API

Ferries API for agencies and OTAs: sailings, vehicles and tickets

A ferries API lets your website show real sailings between ports and sell the ticket in the same visit. This page explains what a ferry API returns, why a ferry booking asks for more than names and dates, how tickets and check-in work, and how PHPTRAVELS turns a ferry connection into a booking engine on your own domain.

  • Timetables and availability
  • Vehicles, cabins and pets
  • E-tickets and check-in
  • Island hopping

What it is

A ferry API describes a network of ports, not a list of products

Flights have airport codes and hotels have addresses. Ferries have ports, the lanes between them and the operators that sail each lane on given days. A ferry API exposes that network first, then the sailings on it.

Example route

  1. PiraeusMainland portLeg 1 · several operators
  2. NaxosIsland hubLeg 2 · seasonal sailings
  3. SantoriniIsland
  • 01Ports

    The stops travellers search from and to, with the port's name and country. Some cities have more than one terminal, so the API returns the exact port.

  • 02Routes

    The lanes that connect two ports. Your search form only offers pairs that a connected operator actually sails, so travellers never search a crossing that does not exist.

  • 03Sailings

    The dated departures on each route, with vessel, times and the space left on board. This is the part that changes by the minute.

A route line linking a mainland port to two islands, with ferry sailings, vehicles and tickets passing between a booking platform and the ferry operators

Behind the scenes, the ferries module keeps the network in one place: routes from connected operators sit next to routes you load yourself, and lanes that share a port link up into longer trips. See how it works on the Ferries page.

Timetable and availability

Two calls fill the departures board

A ferry search is really two questions: which sailings run on this route and date, and is there still room for these passengers and this vehicle. Suppliers answer them separately, and your site needs both before it shows a price.

Departures · PiraeusFri 14 Nov
DepartsToVesselCrossingAvailability
07:00NaxosFast ferry3 h 35 minOn saleSeats only, no vehicles
07:25NaxosRo-Pax ferry5 h 40 minOn saleSeats and car space
07:30MykonosRo-Pax ferry5 h 15 minLast placesSeats and car space
13:00ParosCatamaran3 h 10 minOn saleSeats only, no vehicles
17:30SantoriniRo-Pax ferry7 h 50 minLast placesLast cabins
21:00HeraklionCruise ferry9 h 00 minFullNext sailing offered

Illustrative data, simplified

  1. Timetable

    Which sailings run

    Route, date and time window in; departures, arrivals, vessel and crossing time out. Timetables change with the season, so they are read live or refreshed often, never typed in by hand.

  2. Availability

    Is there room on board

    Deck places, seats, cabins and vehicle lanes are separate capacities. A sailing can have seats left and no car space, so the check is made for the exact party and vehicle.

  3. Price

    What this party pays

    The fare depends on passenger types, the class chosen on board and the vehicle's size. It is priced again just before payment, because the last cabin may have gone.

What makes ferries different

A ferry booking carries people, vehicles and a place to sleep

An airline needs names and dates. A ferry operator also needs to know who is travelling by age band, what is being driven onto the vehicle deck, where everyone sits or sleeps, and whether an animal comes along. Each answer changes the price and the space left.

Piraeus → Naxos · Fri 14 Nov · 07:25Why the API needs it

01Passengers by type

  • Adult2
  • Child1
  • Infant0
  • Senior0

Operators price adults, children, infants and seniors differently, and each sets its own age bands. Some routes add resident or student fares. The API tells you which types a route accepts.

02Vehicle

CarMotorbikeCamper
Length
Up to 5 m
Height
Under 2 m

Vehicle space is sold by type and size. Length decides how much lane the vehicle uses; height matters because tall vehicles such as campers and vans may need a different deck. Wrong dimensions can mean a surcharge at the port.

03On board

  • DeckOpen seating
  • Reserved seatNumbered
  • CabinBerths, per cabin

Deck places, reserved seats and cabins are separate classes with their own capacity. Seats are priced per passenger, cabins usually per cabin, which matters on overnight crossings.

04Pets

1 dog, travelling in a kennel

Rules differ by operator and vessel: kennels, pet-friendly cabins or none at all. A pet is an extra with its own price and limited places, so it is booked with the ticket.

Total for this party–Port taxes and fees included

Illustrative form, simplified

After the booking

Ticketing and check-in

A ferry sale is not finished at payment. The traveller still has to board, plans change, and the sea has a say. These are the parts a ferry API and your platform handle together.

  • E-ticket

    Many operators issue an e-ticket with a scannable code that the traveller shows on a phone or on paper. The platform emails it with the invoice and keeps it in the customer's account.

  • Boarding at the port

    Some routes still exchange the booking reference for a boarding pass at the operator's port office. The booking confirmation tells the traveller which applies and where to go.

  • Check-in deadlines

    Vehicles usually check in earlier than foot passengers, and international routes need passports. Online sales stop at the route's check-in deadline.

  • Changes

    Date, time, passenger or vehicle changes follow the fare's conditions and may cost a fee or a fare difference. The ticket is reissued after a change.

  • Weather cancellations

    Operators cancel or delay sailings for weather and sea conditions. Plan how affected travellers are told and moved to the next sailing or refunded, under the operator's terms.

  • Cancellations and refunds

    Each fare carries its own refund rule. Show it before payment, so the traveller knows what they bought, and settle refunds through the original payment.

Operators publish their own conditions; the platform shows them with each sailing. Compare how the Ferry booking software handles this for operators and agencies.

Ready in PHPTRAVELS

Ferry connectors you switch on with your own account

These ferry suppliers are already connected to the PHPTRAVELS ferries module. You agree terms with the supplier, enter your credentials in the admin and their sailings appear in your search. The list comes live from our integrations directory.

Other ways to fill the board

  • Allotments: seats, cabins and vehicle space an operator assigns to you, which stop selling when they run out.
  • Your own routes: crossings you run or contract yourself, with your own timetables and fares.
  • Another ferry operator's API: any documented API can be added, and the source code is yours. See Custom API integration.

Island hopping

Several legs, one trip, one payment

Island trips are rarely one crossing. A traveller flies in, transfers to the port, sails to one island and on to the next. Combining those legs is where a ferry API inside a full booking platform pays off.

  • Connection checksEach leg can only start after the previous one arrives, with a minimum gap you set, so no trip contains an impossible connection.
  • One checkoutEvery leg can come from a different operator and source, yet the customer pays once and gets a ticket for each leg.
  • Details carry overPassengers and the vehicle move from leg to leg, so nobody types the same details twice.

Add the flight leg through a Flights API connection and the port run with Airport transfer technology. All of them sit next to the other Travel APIs on one platform.

  1. Fly to AthensThe flight leg, from any flight supplier you connect.
  2. Airport to PiraeusA transfer from the airport to the ferry terminal.
  3. Piraeus → NaxosFirst crossing, with the car and two adults on board.
  4. 3 nights on NaxosThe hotel stay between the two crossings.
  5. Naxos → SantoriniSecond crossing, possibly with a different operator.

Put a ferry API to work on your own site

Search sailings and book a crossing in the live demo, then tell us which routes and operators you plan to sell.

Building your own apps? The REST API and webhooks come with the Enterprise plan. Compare Pricing or read the developer documentation.

FAQ

Ferries API: questions agencies ask

Talk to sales

A ferries API is a set of web services from a ferry operator or a ferry booking platform that lets a travel website read ports, routes and timetables, check availability for passengers and vehicles, create bookings and receive tickets in real time.

Ferry bookings add vehicles priced by type and size, on-board classes such as deck places, seats and cabins, and pets. Availability is counted separately for each of these, and check-in deadlines differ for foot passengers and vehicles.

Yes, where the operator carries vehicles on that sailing. The booking sends the vehicle type and dimensions, and the fare includes its space on the vehicle deck.

Yes, when the vessel offers them. Cabins are a separate class with their own capacity and are usually priced per cabin rather than per passenger.

The ferry suppliers shown on this page come from our live integrations directory. PHPTRAVELS is the official technology partner of Kikoto Ferries, and other operators can be added through a custom integration.

No. You agree terms with each ferry supplier and enter your own credentials in the admin. PHPTRAVELS provides the booking platform and the ready connectors.

Yes. Customers add one leg after another, each leg is checked against the previous arrival, and the whole trip is paid in one checkout with a ticket for every leg.

Yes. Routes you run or contract yourself, operator allotments and API sailings appear in the same search, each with its own fares and markups.

Yes. B2B agents book in your agent portal with their own markups or commissions and pay from their wallet balance, on the same installation as your public website.