Ground transportation API
Transport API for agencies: transfers, rail and ferries, door to door
A trip does not end when the plane lands. A transport API lets your website sell the airport transfer, the train, the bus and the ferry that get the traveller from the arrivals hall to the hotel door. This page explains what each kind of ground transport API needs, how they differ, and how PHPTRAVELS sells every leg as one trip.
- Airport transfers
- Rail, bus and ferry
- Flight-aware pickups
- One trip, one payment
Door to door
Six legs, six different questions for the API
Follow one traveller from touchdown to check-in. Every leg is a different product with its own supplier, and each supplier API asks for something different before it can quote a price.
01
Flight lands
The anchor of the trip. Its flight number, airport, terminal and arrival time feed every leg that follows.
02
Airport transfer
API needs
Pickup airport or address, drop-off address, date and time, passengers, luggage and the flight number.
03
Train
API needs
Origin and destination stations, date, departure window, passenger ages and any rail pass held.
04
Bus
API needs
From and to cities or stops, travel date, passengers, then a boarding point and a seat from the layout.
05
Ferry
API needs
Departure and arrival ports, sailing date, passenger types, and any vehicle by type and length or a cabin.
06
Hotel door
The hotel address and check-in date close the chain and become the drop-off point of the last leg.

Most agencies already sell the flight and the room. The legs in between are where travellers book elsewhere, and where a missed connection costs the most. A transport API closes those gaps, so the transfer, the train, the coach and the crossing are booked, paid and documented by you.
There is no single ground transportation API that covers every mode. Transfer suppliers, rail suppliers, bus operators and ferry operators each publish their own. What the traveller sees as one journey is, behind the scenes, several suppliers that your platform has to search, price and confirm together. The Airport transfer technology page covers the transfer side in detail.
Compare the modes
Transfers, rail, bus and ferry APIs side by side
The search inputs, the unit being priced and the document the traveller receives all change from one mode to the next. These are the differences that matter when you connect them.
| Private transfer | Shared transfer | Rail | Bus | Ferry | |
|---|---|---|---|---|---|
| Search inputs | Pickup and drop-off points, date, time, passengers, luggage | Airport, destination zone or hotel, date, time, passengers | Stations, date, time window, passenger ages, rail pass | Cities or stops, date, passengers | Ports, date, passenger types, vehicle, cabin |
| What is priced | The vehicle, by route or distance, whatever the head count | Each seat on a shuttle that serves several hotels | Each seat, by fare type and class, per leg or as a through fare | Each seat, often by stop pair, seat type or berth | Each passenger and class, plus vehicles by type and length, or a cabin |
| Ticket or voucher | Voucher with the meeting point, driver contact and waiting time | Voucher with the shuttle pickup window and stop | E-ticket with a QR code, coach and seat for each leg | M-ticket with the PNR, seat and boarding point | Boarding pass with the sailing, seats or cabin and vehicle |
| Changes | Time or address changes usually allowed up to a cut-off before pickup | Similar cut-offs, with less flexibility on pickup time | Set by the fare: saver, semi-flex or flex conditions | Refund tiers by hours before departure, per operator | Set by the operator's fare rules and the sailing's check-in deadline |
| Common pitfalls | Flight delays and a driver who cannot find the traveller at arrivals | Waiting for other flights and longer rides with several drop-offs | Connections too tight to make and seat reservations that are compulsory | The wrong boarding point, or a seat sold twice without a hold | Weather cancellations and vehicles booked with the wrong length |
Each mode has a module of its own in PHPTRAVELS: Cars & transfers for transfers, Rail for international journeys and passes, Trains for national networks, Buses for coach seats, and Ferries for sailings.
Flight-aware transfers
The flight number is the most important field in a transfer booking
An airport transfer booked for the scheduled landing time fails the moment the flight is late. Transfer APIs ask for the flight number so the pickup can follow the real arrival.
Flight number and arrival time
Captured with the booking, or carried over from the flight sold on the same trip, so the traveller does not type them twice.
Pickup follows the landing
The arrival time from the flight number sets the pickup, so a delay does not mean a missed driver or a waiting charge.
Free waiting time
Waiting time is counted from the actual landing, not the booked time. It is printed on the voucher so the traveller knows the rule.
Meet and greet
A name board, the meeting point and the driver's phone number go on the voucher and on the driver's job sheet.
Transfers sell best next to Flights API: the flight is already in the booking, so the transfer form is half filled before the traveller sees it.
- 09:20Transfer bookedFlight number and scheduled arrival saved with the pickup.
- 12:40Flight delayedNew arrival time received for the flight number.
- 12:41Pickup movedDriver dispatched for the new time, no action from the traveller.
- 15:18Flight landsFree waiting time starts from the actual landing.
- 15:34Meet and greetDriver waits at arrivals with a name board.
- 16:22Hotel drop-offRide completed, booking closed in the admin.
Illustrative times, simplified
Ready in PHPTRAVELS
Ground transport suppliers, grouped by mode
These transfer, rail and ferry suppliers are already connected to PHPTRAVELS. You sign with each supplier, enter your own credentials in the admin and go live. The lists come from our live integrations directory.
Transfers2
Rail1
HKINT
Buses and local operators
Load your own coaches and routes, let partner operators manage their trips, or connect an operator's system through a Custom API integration.
Every mode also takes your own inventory: your vehicles and fixed route prices, your rail allotments, your crossings and coaches. See the full Travel XML API suppliers list.
Sell it as one trip
Several suppliers behind the scenes, one booking in front
Travellers do not want five confirmations from five companies. A booking platform bundles every leg into one itinerary, one checkout and one set of documents, while each supplier still receives its own booking.
- Flight · arrivalConfirmed
- Private transfer · airport to stationConfirmed
- Train · second class, seats reservedConfirmed
- Ferry · deck seats, one carConfirmed
- Hotel · three nightsConfirmed
- Paid in one checkout
- Vouchers, tickets and invoice in one email
- 01
Search each leg
Flights, transfers, trains, buses and ferries share the same site and the same checkout.
- 02
Check the connections
Ferry legs must leave after the previous one arrives, and rail changes respect the time set for each station.
- 03
Take one payment
The traveller pays once through your gateway; agents pay from their B2B agent wallet.
- 04
Book with each supplier
Every leg is confirmed with its own supplier and keeps its own reference, conditions and voucher or ticket.
- 05
Manage it as one trip
Changes, cancellations and revenue for every leg are tracked in one admin, with your markups on each.
Building your own app or partner channel? On the Enterprise plan, the PHPTRAVELS REST API and webhooks expose bookings from every connected supplier in one format. Compare plans on Pricing or read the developer documentation.
Book a transfer, a train and a ferry in the live demo
See how ground transport sits next to flights and hotels, then tell us which transport suppliers you plan to sign.
Other travel APIs: Travel APIs or Flights API.
A transport API is a set of web services from a ground transport supplier that lets a travel website search, price and book transfers, train journeys, bus seats or ferry sailings in real time, and receive the voucher or ticket for the traveller.
An airport transfer API returns private and shared transfer options between an airport and an address, hotel or zone, with a price per vehicle or per seat. Booking it creates a pickup with a driver, a meeting point and a voucher.
No. Transfers, rail, buses and ferries are usually sold by different suppliers, each with its own API. A booking platform connects several of them and presents the legs as one trip.
When the flight number is part of the booking, the pickup can follow the real arrival time and the free waiting time starts from the actual landing. The exact policy depends on the transfer supplier, so show it on the voucher.
A private transfer is priced per vehicle and takes one party directly to its address. A shared transfer is priced per seat and carries several parties, so it is cheaper but slower, with more stops.
Transfer suppliers such as Mozio and KiwiTaxi, the rail supplier HKINT and the ferry supplier Kikoto Ferries are connected today, and the integrations directory lists every other one. The lists on this page are loaded live from that directory.
No. You sign with each supplier and enter your own credentials in the admin. PHPTRAVELS provides the booking platform and the ready connectors.
Yes. Each module takes your own inventory next to supplier APIs: your cars and fixed route prices, your coaches and seat layouts, your rail allotments and your ferry routes.
Yes. Agents book every leg from the B2B portal with their own prices and commissions, pay from a wallet or credit line, and receive the same vouchers and tickets.
Keep exploring
More from the platform
- Airalo API integrationSell Airalo eSIMs on your travel website, ready connector
- Airport transfer technologySell airport and hotel transfers with Kiwitaxi
- Cars & transfersRentals and airport transfers
- RailRail networks and routes
- FerriesSea crossings
- Ferry booking softwareSell ferry tickets as an operator or agency
