Booking EngineThe guest booking flow

How guests find and book on your engine

The whole direct booking, from the search bar to the confirmation: what the rooms list is really counting, where taxes appear, which fields a guest must fill in, and what each step is reading from your settings.

Where to find it
Booking EngineDashboardGo to Booking Engine
Last checked
August 18, 2026

The booking engine is the only screen in Prostay your guests use. Everything it shows is read from decisions you made somewhere else: rates, availability, taxes, cancellation policies, add-ons and the settings screen. This article walks the whole funnel in the order a guest meets it, and says which screen each thing came from, so that when a guest tells you something is wrong you know where to go.

The address, and the bar above the page

Your engine lives at a fixed public address made from two keys: your group's and your property's. You will find it on the booking engine dashboard, in a chip you can click to copy. It is the link to put on your website, in your email signature, on your Google Business profile and in your social profiles. It never changes.

If your account holds more than one property, the same address shortened to your group's key lists all of them and lets the guest choose. That, and the four things you can add to either address so a link opens with the dates already filled in, are in sending guests to the right property.

The booking engine header bar, showing the brand Marlowe Hospitality Group on the left and, on the right, a Manage booking link, an EN language chip with a flag and a USD currency chip.
The bar above the header. Everything on the right of it is switched on or off in Settings.
  1. Your group's name. The partner account the property belongs to, not the hotel. A single-property account will see the same name twice.
  2. Manage booking. The way back in for a guest who has already booked. It only appears when you have switched Manage Booking on. See letting guests manage their own booking.
  3. The language chip. Only appears when Enable language translation is ticked, and only lists the languages you selected.
  4. The currency chip. Only appears when Enable currency conversion is ticked. See currencies on the booking engine.

The dark strip under the bar is your custom header, a block of your own markup that you write on the Customisation screen. It is the only part of the page above the search bar that you can put arbitrary text into, which makes it the natural home for a direct-booking incentive or a phone number.

The top of The Marlowe Hotel booking engine: a dark banner reading "Book direct and park free. Call +1 310 555 0142.", then a deep blue header carrying the eyebrow "Direct booking - Best rate guaranteed", the heading The Marlowe Hotel and the location Santa Monica, United States, over a white search bar holding Check-in Date 10 Sept 2026, Check-out Date 13 Sept 2026, Guests 2 adults, 0 Children and a blue Check availability button.
The first screen a guest sees. Three fields and a button, over your own header image.

The heading is your property's name and the line under it is your city and country, both taken from your property record. The image behind them, the eyebrow above them and the shape of the whole block come from the Customisation screen.

A guest arriving with no dates gets today and tomorrow already filled in, so the page always has something to show. When you send someone a link you can pre-fill the search by adding the dates to the address, which is what a "check availability" button on your own website should do.

The Guests popover open under the search bar, with an Adults row hinted "Ages 13 or above" set to 2 and a Children row hinted "Ages 2-12" set to 0, each with a minus and plus stepper.
Two counts, two age bands. They decide which rooms come back and what the extra-person prices add.

Adults and children are counted separately because they are priced separately. The occupancy you set on each accommodation type decides whether a room is offered at all, and the extra adult and extra child figures on the rate interval decide what the additional heads cost. A family of four searching a property whose largest room holds three will be told there is nothing available, on dates that are in fact wide open.

What "6 rooms available" is counting

The results header on the rooms list, reading "6 rooms available" with the dates 10 Sept 2026 - 13 Sept 2026 and "3 nights" underneath, and a Sort by dropdown set to "Price: low to high".
The count is accommodation types with something left to sell, not rooms.

Six here means six accommodation types, not six rooms. A property with 120 rooms across six types shows 6 when every type has at least one unit free and a price for those dates. Both conditions matter: a type with plenty of rooms but no rate interval covering the dates does not appear, and neither does a type that is fully sold.

The dropdown offers two orders, Price: low to high and Price: high to low, and it opens on the first of them. Both sort on the cheapest rate for the whole stay, so a type whose flexible rate is expensive but whose non-refundable rate is cheap sorts on the cheap one.

Reading a room card

The Standard Double card on the rooms list: a photograph, the name, the description "Queen bed, city outlook, walk-in shower", a "From USD 211.00 / night" price, badges reading Up to 3 guests, 24 square metres and Free cancellation, and two rate rows. Best available rate at USD 720.00 with "Free cancellation until 48 hours before arrival", and Non-refundable at USD 633.00 with "Save 12% when you book today". A View details link and a greyed-out Select room button sit at the foot.
One card per accommodation type, one row per rate plan you have opened to the engine.
  1. The "From" price. The cheapest rate plan on the card, divided by the number of nights. It is a headline, not something a guest can book: nothing on the card costs exactly this.
  2. The first rate row. One row per rate plan available for these dates. The price is the whole stay, before tax.
  3. The second rate row. Same room, different conditions. The sentence under the name is the rate plan's own description, published verbatim.
  4. Select room. Greyed out until a rate row is chosen, because the engine cannot add a room to the cart without knowing which rate it was sold on.

The photograph, the name, the description, the occupancy and the room size all come from the accommodation type. The green Free cancellation badge is derived from the rates on the card and appears only when at least one of them is refundable, so a type you sell on a single non-refundable rate does not carry it. View details opens a panel of the type's amenities, and appears only when you have given the type amenities to show.

Per night or per stay

The / night under the "From" price is a setting, not a convention. Booking Engine → Settings offers Show Lowest Sales Price, which divides by the nights as above, and Show Accommodation Total Price for Stay, which shows what the whole stay costs and labels it with the night count.

Per night reads cheaper and is what guests are used to comparing against an OTA. Per stay is honest about the number on the credit card and cuts the drop-off between the rooms list and the cart. Properties with a two-night minimum at the weekend usually do better with per stay, because the per-night headline is a price no guest can actually buy.

The cart, and where the tax comes from

The Your stay panel after one room is selected, showing 3 nights, the dates 10 Sept 2026 to 13 Sept 2026, a Standard Double line on Best available rate at USD 720.00 with a remove cross, a Subtotal of USD 720.00, VAT 9% at USD 64.80, Service Charge 5% at USD 36.00, City Tax at USD 12.00, a Total of USD 832.80, and a Continue to checkout button.
The running total. Taxes appear here as separate lines, not folded into the room price.

Your stay follows the guest down the page and through every step after this one. Each selected room is a line with a cross that removes it; selecting the same type twice turns the button on the card into a quantity stepper instead of adding a second line.

LineWhere it comes from
Subtotal Every room line added together, at the rate plan price for the whole stay. Extras chosen on the next step are added here too.
Percentage taxes Taxes you have defined as a percentage, worked out on the subtotal. VAT 9% and Service Charge 5% above are both of these.
Per-night and per-person taxes Fixed charges multiplied out by nights, by guests, or by both. City Tax above is USD 2 per person per night: two guests, three nights, USD 12.00.
Total Subtotal plus every tax line. This is the figure that reaches the folio when the reservation lands in the PMS.

Only taxes you have marked as applying to the booking engine appear here, and a tax that works out at nothing on this booking is left out rather than printed as a zero. A tax you have restricted to add-ons will therefore be invisible until the guest buys one.

The extras step

The Extras step, headed "Enhance your stay" over the line "Add optional extras to make your stay even better. You can skip this step." A card headed Available extras, hinted "Pick the add-ons you would like for your stay", lists Breakfast Buffet at USD 18.00 · Per guest / night and Airport Shuttle at USD 35.00 · Per reservation, each with a minus button, a quantity of 0 and a plus button. The Your stay panel on the right shows 3 nights, 24 Sept 2026 to 27 Sept 2026, a Standard Double on Best available rate at USD 720.00, and a Total of USD 832.80. Back to rooms and Continue to guest details sit at the foot.
The one step a property can be without. Each extra carries the price and what it is multiplied by.

Continue to checkout goes to extras, not to the form. Each add-on carries its price and, next to it, what that price is multiplied by: Per guest / night on the breakfast above turns USD 18 into USD 108 for two guests over three nights, while Per reservation on the shuttle charges USD 35 once however long they stay. This is the one place a guest sees that basis stated, so an add-on priced per night and described as if it were per stay is read wrongly here first.

Which add-ons appear depends on three things you set when you created them: whether the add-on is active, whether one of its intervals overlaps the guest's stay, and whether that interval names the accommodation type in the cart. Note that it is the stay that is tested, not today: an add-on whose interval runs to the end of September is offered to somebody booking in January for a September stay, and withheld from somebody booking in September for October. A restriction by accommodation type is the one that surprises people, because it makes the step's contents depend on which room the guest picked rather than on the property.

When the guest has booked more than one room, the extras are grouped into one card per room, headed with that room's name and the line Extras for this room, and a stepper on one card adds nothing to another. The exception is a per-reservation extra: added against two rooms it is still charged once, which is what per reservation means. A single room gets the one card above, headed Available extras. An add-on you have marked as included in the rate appears with an Included chip and no stepper, so a guest can see they are getting it without being able to buy it twice.

Guest details

The Guest details step, with the progress strip reading Rooms, Extras, Details, Payment and Details active. A "Who is checking in?" card holds First name, Last name, Email, Phone and Date of birth, each marked with an asterisk, then Estimated arrival time and Company name unmarked. A Postal address card holds Street address, Apt suite floor, City, State or region, Postal code and Country. The Your stay panel on the right repeats the total.
Five compulsory fields, then whatever else you have ticked under Guest Information Fields.

Four fields are always compulsory: first name, last name, email and date of birth. The phone number is compulsory only when you have ticked Require telephone number to book. Every compulsory field carries an asterisk, and Continue stays greyed out until all of them hold something.

Everything below those is drawn only because you asked for it on Booking Engine → Settings. The property above asks for an arrival time, a company name and a postal address, so the guest gets three extra blocks. Each one you tick is a field between a guest and their booking, and the engine is the one place in Prostay where an extra field costs you money rather than saving you time. Ask for the passport number at check-in; ask for the arrival time here only if you actually staff differently because of the answer.

Special requests is always shown and never compulsory. It reaches the reservation as a note, where your front desk will see it. Anything you have added as a guest custom field appears in its own card under this one.

Payment and terms

Which options a guest sees is decided by what you have connected, not by anything on the booking engine screens, and the list is assembled as the page loads. Credit / debit card is always offered and charges through Prostay Pay. A property that has connected its own card processor gets a second card option, named after that processor, which charges its own account instead. PayPal appears once PayPal is enabled, Pay at property unless you have switched it off, and Bank Transfer once you have set it up as a payment method. Pay at property takes no money and confirms the booking anyway.

The card fields belong to the processor and are drawn inside the page, so the security code is part of the card itself and is always asked for. They take a moment to arrive: until the payment is prepared the option says so and Confirm booking will not fire, and a property whose card payments have never been configured sees that stated in the same place, which is the quickest way to catch a half-finished Prostay Pay setup. A card the bank declines leaves the guest on this page with the reason rather than losing the booking.

Bank Transfer asks more of the guest than most properties expect. Your instructions are printed, and under them the guest has to attach a file before they can confirm: JPG, PNG or PDF, up to 5MB. It is compulsory rather than an invitation, so a guest who cannot produce a screenshot or a receipt of their transfer cannot finish on this option at all. Setting the method up and writing the instructions are two separate acts, and only the first one puts the option in front of a guest, so a method set up with nothing written against it offers an upload box above an empty space and no account to pay into. Write the instructions completely enough that the proof is worth having, and expect checking those files to become part of your arrivals routine.

Under the options, a tick box reading I accept the Terms & Conditions appears when your property requires acceptance, with the words linking to a panel holding your terms verbatim. Confirm booking stays disabled until it is ticked. Any reservation custom field you have opened to the booking engine appears here too, and a required one blocks the button in the same way.

A property that requires acceptance but has never written its terms publishes an empty panel and asks the guest to agree to it. Write the terms before you publish the engine address, because this box is the one place your cancellation terms become contractual.

The confirmation

The confirmation page: a blue tick, the heading Booking confirmed, the line "We've sent a confirmation email to r.whitfield@example.com" and a chip reading Confirmation #BE-205318. A card lists Check-in 1 Oct 2026 · from 15:00, Check-out 4 Oct 2026 · until 11:00, Room Standard Double · Best available rate, and Total USD 832.80. A second card holds Check your inbox, Bring a valid ID, and "Need to make a change?" with the line "Manage your booking online any time to view, edit or cancel your stay." Manage your booking and Book another stay buttons sit at the foot.
The last screen of the funnel, and the last thing a guest reads before your email arrives.

A confirmed booking lands on a page carrying the confirmation number, the dates, the rooms and the total. That number is the reservation number in the PMS: a guest reading it out on the phone is giving your front desk something it can search for directly. The check-in and check-out lines carry your property's times beside the dates, taken from your policies, so this page is the last chance to correct a check-in time a guest is about to plan a flight around.

Two settings change what happens here. When Manage Booking is on, the page offers a link into the guest's own booking. When Redirect on confirmation page is on, the guest is sent to an address of yours after the number of seconds you set, which is how you get a direct booking to register on your own site's conversion tracking. Set the delay long enough for someone to read the number: five seconds is short, ten is safer.

The block at the foot of the page

The Property Information block at the foot of the rooms page. A paragraph describes a 120-room independent hotel one block from the beach in Santa Monica, and below it a Cancellation Policy heading is followed by "Full Charge - Full Stay - If canceled within 2 days of arrival".
Your property description and your cancellation policy, published verbatim.

PROPERTY INFORMATION publishes the description on your property record. It is the only long-form text on the rooms page, and it is read by every guest who scrolls past the rooms, so it is worth more than the two lines most properties leave in it.

Under it, each cancellation policy you have marked for the booking engine is printed as one sentence built from its own settings: the charge, what the charge is applied to, and the notice period. A policy built from Full Charge and Full Stay with two days' notice means a guest who cancels inside 48 hours pays for the whole stay. A policy you have not marked for the engine is not shown here, even though it may still govern the booking, so check that the policy attached to your engine rates is the one the guest is being shown.

A map of your address sits below the policy unless you have ticked Hide Property Location Map in Settings.

When the engine shows nothing

An empty rooms list has a small number of causes, and they are worth checking in this order.

CheckWhy it empties the list
A base rate interval covering the dates The commonest cause by a distance. A type with no price for those nights is dropped from the list without comment.
Rooms actually free A type is dropped when nothing is left to sell, including anything held back by a channel allotment.
The allotment on Settings Quantity to Sell caps what the engine may sell independently of what is free. A zero there takes the type off the engine while leaving it bookable by your own staff.
Occupancy against the search A search for four guests only returns types that hold four.
The accommodation restriction When Allow guests to book specific accommodations is on, only the types you listed are ever offered.
Minimum stay A minimum length of stay on the interval turns away a shorter request without saying which rule refused it.

The fastest way to tell an availability problem from a pricing one is to search the same dates in the availability matrix. If the rooms are there and the engine says they are not, the problem is a rate or a setting, not the calendar.

Common questions

  • Can a guest book two rooms in one go?

    Yes, but one at a time. The guest selects a rate on the first room, presses Select room, then does the same on the second. Selecting the same accommodation type twice turns the button into a quantity stepper. There is no control that searches for a combination of rooms that together hold the party.

  • Why does the "From" price not match any of the rate rows?

    Because it is the cheapest rate on the card divided by the number of nights, and the rate rows show the whole stay. A card reading "From USD 211.00 / night" over a non-refundable rate of USD 633.00 for three nights is consistent. If you would rather advertise the stay total, switch the rooms list to Show Accommodation Total Price for Stay on Booking Engine → Settings.

  • A room type is bookable in the PMS but missing from the engine. Why?

    Almost always because no base rate interval covers those dates, which makes the type invisible to the engine without any warning. After that, check Quantity to Sell in the engine allotment, whether the type is in the list under Allow guests to book specific accommodations, and whether its occupancy covers the party that searched.

  • Can I show prices with tax included?

    Not from this screen. The engine always lists taxes as separate lines under the subtotal. A property that needs one all-in figure has to build that figure into the rate plan and mark its taxes as included in the price.

  • Does a booking made here reach the PMS immediately?

    Yes. A confirmed booking creates the reservation, the guest profile and the folio at once, and the confirmation number the guest is shown is the reservation number your front desk searches on.

Was this article helpful?

Related articles

Still stuck?

Support answers from inside the app as well, so if you are already signed in you will get a faster reply there. Otherwise send us the property name and what you were trying to do.