Live demo

Cruise booking API

Cruises API for agencies: sailings, cabins and payment schedules

A cruise API lets your website show live sailings, price cabin categories and create cruise bookings with the cruise line. This page explains what the data looks like, how cabins and payments work, and the two ways to put cruise inventory on your own PHPTRAVELS site.

  • Sailings and itineraries
  • Cabin categories and deck plans
  • Deposits and final payment
  • Custom cruise integrations

What a cruise API returns

One sailing, described in data

A cruise is sold as a sailing: one ship, one itinerary, one departure date. Every cruise API, whatever its format, is built around that unit.

A search sends a region, a month or date range, a duration and the number of guests. The response is a list of sailings, each with the ship, the cruise line, the embarkation and return dates, the ports of call with their times, the days at sea and a lead price per person for each cabin category still open.

From there, further calls price a chosen category for the real guests, list the cabins you can pick, place a booking and take payments against it. Line names and formats differ, so a platform maps every source to the same sailing, cabin and booking model before a guest sees it.

Cruise line

Your partner line

Partner ship · 7 nights

Open
Embarks
2027-05-15
Returns
2027-05-22

Itinerary

  1. D1Southampton--:-- · 17:00
  2. D2At sea
  3. D3Bruges (Zeebrugge)08:00 · 18:00
  4. D4Amsterdam09:00 · 19:00
  5. D5At sea
  6. D6Copenhagen07:00 · 17:00
  7. D7Oslo09:00 · 16:00
  8. D8Southampton07:00 · --:--
Lead priceper person, two sharingEUR 899

Illustrative record, not any one cruise line's format.

One cruise booking platform receiving sailings, cabin categories and prices from a cruise line system

Cabin categories

Four steps up the ship: inside, ocean view, balcony, suite

Under each sailing, a cruise API lists cabin categories. They are the main price driver, and each one moves several things at once.

  1. 01InsideNo window

    The entry price of the sailing. Lines often split it into several categories by deck and position, each with its own code.

    Price level
  2. 02Ocean viewWindow or porthole

    A step up for natural light. Some categories have an obstructed view, which the API marks in the category description.

    Price level
  3. 03BalconyPrivate veranda

    A private outdoor space, with categories that change by deck height and midship or aft position.

    Price level
  4. 04SuiteBalcony and living area

    The top of the price list, often with extras attached to the fare, and the categories most likely to be sold as a specific cabin.

    Price level

Category codes and fare codes

Each category has a code, and each sailing can be sold under several fare codes: standard fares, promotional fares and group or agency rates. The same cabin can carry different prices and conditions depending on the fare code.

Guarantee or specific cabin

With a guarantee booking, the guest buys a category and the line assigns the cabin later, at that category or better. A specific cabin booking fixes the cabin number at the time of booking. Many lines price the two differently.

Cabin selection

Pick the cabin on the deck plan

When a line allows specific cabin booking, the API returns the cabins still available in the chosen category, with deck, position and how many guests each one sleeps.

Deck 9

Select a cabin

ForwardAft
0814
242636
29
011119
  • Inside
  • Ocean view
  • Balcony
  • Suite
  • Not available

Cabin 9110

Inside

Interior cabin, the lowest price on this deck. Sold as a specific cabin or as a guarantee.

Ocean view

Window cabin at the bow, where the hull curves. The API returns its view note with the category.

Balcony

Midship balcony cabin. Position on the deck is often a separate category with its own price.

Suite

Aft-facing suite with a larger balcony. Usually booked as a specific cabin, not a guarantee.

  1. 1.List the cabinsAfter the guest picks a category, the platform asks the line for the open cabins in it and draws them on the deck.
  2. 2.Hold the cabinMany cruise APIs let you hold the chosen cabin for a short time while the guest enters names and pays.
  3. 3.Book itThe booking confirms the cabin number, the guests and the fare code, and the line returns its booking reference.

In the PHPTRAVELS Cruises, ships carry their decks and cabin categories and guests choose with the facts in front of them, whether the cabins are yours or come from a connected line.

Payment schedule

Deposit now, the rest before sailing

Cruises are booked months ahead and paid in stages. The cruise line sets the dates and amounts for each sailing and fare, and the API returns them with the booking.

  1. 01

    Booking and deposit

    The guest pays a deposit set by the line, per person or per booking, to confirm the cabin.

  2. 02

    Final payment due

    The balance is due by a date the line sets before departure. Unpaid bookings can be cancelled by the line after it.

  3. 03

    Documents

    Once paid in full, the line releases the cruise documents and the guest completes check-in details.

  4. 04

    Sailing day

    The guest embarks. Changes after this point are handled on board or under the line's rules.

Cancellation penalties by window

Deposit windowPenalty growsHighest penalty

The closer to sailing, the more of the fare is kept on cancellation. The windows and percentages belong to each line and fare, so a cruise API sends them with the booking and your platform shows them to the guest before payment.

When you sell your own contracted sailings, the Cruises works the same way: you set the deposit and the balance due date per sailing, and outstanding balances are tracked in the admin until they are paid.

Pricing in cruise

How a cruise price is built

Cruise prices read differently from hotel or flight prices. A cruise API returns the parts separately, and your booking engine has to put them together the same way the line does.

On top of the line's price, PHPTRAVELS applies your markups and commissions by ship, sailing or channel, and agents in the B2B travel portal see their own net fares.

  • Per person, not per cabin

    Cruise fares are quoted per guest. A cabin for two costs twice the per-person fare, and the API prices each guest by age and position in the cabin.

  • Based on double occupancy

    Lead prices assume two guests sharing. Third and fourth guests usually pay a lower fare, and a guest sailing alone pays a single supplement.

  • Taxes, fees and port charges

    Government taxes, fees and port charges are added per person on top of the cruise fare. Show them as their own lines so the total holds no surprises.

  • Onboard credit and extras

    Some fares include onboard credit, a drinks package or gratuities. The API returns these as fare inclusions, and they are a reason two fares for one cabin differ.

How to get cruise inventory

Your own contracts or a cruise line API

There are two routes to cruises on your site. Many agencies start with the first and add the second when volume justifies it.

Ready in the Cruises module

Load your own cruise contracts

Enter the sailings you contract in the admin: ships, decks, cabin categories, port-by-port itineraries, departure dates, per-person fares, seasons, deposits and balance dates. Cruise partners can be given a supplier login to keep their own sailings up to date.

  • Group space and allocations you hold
  • Commission per cruise line
  • Net fares for B2B agents
  • Live from the day you install
Custom integration

Connect a cruise line or consolidator API

There is no ready cruise connector in the PHPTRAVELS integration list. Because every plan includes the full source code, a cruise line or cruise consolidator API is connected as a Custom API integration, mapped to the same sailings, cabins and bookings the module already shows.

  • You sign with the cruise line or consolidator
  • You receive and keep the API credentials
  • The connector maps sailings, categories and cabins
  • Bookings, payments and cancellations follow the line's rules

Looking for suppliers? The Travel XML API suppliers list lists cruise lines that distribute through APIs, and What is API integration explains how a connection like this is built.

See the cruise booking flow working

Open the live demo to search sailings, compare cabin categories and book with a deposit, then compare plans on Pricing.

FAQ

Cruises API questions

Talk to sales

A cruise API is a set of web services a cruise line or cruise consolidator opens to travel sellers. Your system uses it to search sailings, read itineraries, price cabin categories, list available cabins, place bookings and take deposit and final payments.

No. The Cruises module is built around inventory you manage yourself: ships, cabin categories and sailings you contract. A connection to a specific cruise line or consolidator is developed as a custom integration on the included source code.

You apply to the cruise line or a cruise consolidator as a travel seller. Access terms differ by line and market. You sign the agreement and receive the credentials yourself; PHPTRAVELS never provides supplier credentials.

A guarantee booking secures a cabin category at a set price, and the cruise line assigns the actual cabin later, at that category or higher. A specific cabin booking fixes the cabin number at the time of booking.

The cruise line sets them per sailing and fare, and its API returns them with the booking. For sailings you load yourself, you set the deposit and the balance due date per sailing in the admin.

Cruise fares are quoted per guest, usually based on two guests sharing a cabin. Third and fourth guests pay their own fares, a solo guest pays a single supplement, and taxes, fees and port charges are added per person.

Yes. Agents book in the B2B portal with their own net fares and commissions and pay from their agent wallet, from the same installation as your public site.

The Enterprise plan includes the PHPTRAVELS REST API and webhooks with documentation, and every plan includes the full source code, so your developers can extend the cruise booking engine or connect it to other systems.

Start with the sailings you already contract, loaded into the Cruises module, and see how they sell. When a cruise line partnership or volume makes it worth it, add that line's API through a custom integration.