> For the complete documentation index, see [llms.txt](https://docs.phptravels.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.phptravels.com/modules/stays.md).

# Stays

PHPTRAVELS stays module docs: calendar pricing per room and rate plan, plus hotel API guides for Ratehawk, Hotelbeds, Agoda, Amadeus, Travelport and Stuba.

The PHPTRAVELS stays module is the hotel booking engine for travel agencies. Guests search bedbanks and your direct contracts in one list, see the best rate for each room after your margin, and receive a voucher when the booking is confirmed.

Product overview: [Hotel booking engine](https://phptravels.com/features/stays).

### What the module covers

* **One search** -- Bedbank APIs, hotels in your supplier extranet and your own contracted rooms are queried together and shown as one clean list.
* **Rate comparison** -- When several suppliers offer the same room, the engine can match duplicates and show the winning sell price after your markup rules.
* **Room types and rate plans** -- Boards (room only, breakfast, half board and so on), refundable vs non-refundable labels and free-cancellation deadlines.
* **Hotel extranet** -- Contracted hotels manage allotments, stop-sell, release days and day/seasonal pricing in a calendar.
* **Vouchers** -- Confirmation number, supplier reference, dates, guests, board and policy are emailed on confirmation.

### Which supplier to choose

Use the guide that matches the contract you already hold. Credentials and commercial terms always come from the supplier, not from PHPTRAVELS.

| Supplier   | Typical role             | Notes                                          |
| ---------- | ------------------------ | ---------------------------------------------- |
| Ratehawk   | Wholesaler / bedbank API | Live rooms and rates with your own credentials |
| Hotelbeds  | Wholesaler / bedbank API | Live rooms and rates with your own credentials |
| Agoda      | Hotel API inventory      | Connect with your Agoda credentials            |
| Amadeus    | GDS / hotel content      | Use your Amadeus account settings              |
| Travelport | GDS / hotel content      | Use your Travelport account settings           |
| Stuba      | Wholesaler API           | Live content with your credentials             |

Other hotel connections may appear in the [integrations directory](https://phptravels.com) (for example Booking.com, Hotelston, TBO Holidays, Wanderbeds). Open each child page under Stays for credential fields and test steps.

**Short choice guide:** start with the bedbank or GDS you already have a contract with; add your highest-margin direct hotels in the extranet so they compete in the same search.

### Calendar pricing for your own hotels

For hotels you contract yourself:

1. Load the property, room types and rate plans in the admin or extranet.
2. Set allotment per night in the availability calendar.
3. Use stop-sell to close a room, date range or whole hotel.
4. Set release days so unsold allotment returns to the hotel before arrival.
5. Price by weekday, weekend, season and event rates per room type.

API inventory sits beside this calendar inventory in the same guest search. Your markups and margin floor decide which rate wins when rooms match.

### Turn suppliers on

1. Enable **Stays** in the Admin Panel.
2. Open each supplier guide under this section and enter API credentials.
3. Test search and book in sandbox / test mode.
4. Configure markups per supplier, city, star rating or channel.
5. Go live only after vouchers and supplier references look correct.

### Channels

Public website, B2B agents and corporate accounts can each see different prices. Agents book in the B2B portal with their rates and can pay from wallet balance. Prepaid and pay-at-hotel flows follow the rate and supplier rules on the booking.
