Unit groups (multi-unit widgets)
Show rooms, boats, vehicles, or trailers in one widget instead of embedding one widget per unit.
A unit group combines several of your calendars into one embeddable widget. Create groups from the dashboard under Rentals - Unit groups: name the group, tick the rentals that belong to it, and optionally give each unit a shorter display label. Groups need at least 2 calendars, so they are available on plans with multiple rentals.
Group availability calendar
The group calendar has two views, and you choose which one to embed - there are no runtime tabs for visitors to fiddle with. The default is the combined view: it looks and behaves exactly like a normal single-rental calendar, but a date only shows as booked when everyunit is taken. As long as one unit is free, the date stays open - perfect for "do you have anything available?". Embed it with just your group ID:
<script src="https://rentalbeam.com/api/rentalbeam-calendar.js" async></script>
<div class="rentalbeam-calendar" data-group-id="YOUR_GROUP_ID"></div>Prefer to show each unit on its own row? Add data-view="timeline" for the all-units grid - one row per unit, one column per day, with a per-day count of how many units are open:
<script src="https://rentalbeam.com/api/rentalbeam-calendar.js" async></script>
<div class="rentalbeam-calendar" data-group-id="YOUR_GROUP_ID" data-view="timeline"></div>data-view into the copied code for you, and the live preview updates to match.Group booking form
The group booking form shows a unit picker above the regular booking form. The visitor picks a unit, then books it exactly as they would on a single-unit form - pricing, custom fields, and payment settings all come from the selected unit's own booking settings. Every request belongs to exactly one unit; the widget never silently assigns a unit for the guest.
<script src="https://rentalbeam.com/api/rentalbeam-booking-form.js" async></script>
<div class="rentalbeam-booking-form" data-group-id="YOUR_GROUP_ID"></div>You choose how units are picked with data-picker: cards (a tappable card per unit) or dropdown (a compact select menu) both let the guest choose the unit themselves, while auto (the default) shows no picker. In auto the date picker reflects the whole group's availability - a night is open when any unit is free - and the dates the guest chooses resolve to the first unit that is free for that entire rangeand meets that unit's own minimum stay. That unit's name is shown above the form, and it is the one priced and booked. The Install screen has a Unit picker toggle that writes this for you.
auto pairs with "Use the same settings for every unit". When that is on, every unit shares pricing, fields, and payment, so the price shown always matches the booked unit. When it is off, auto hides pricing and collects a plain request for the resolved unit (the host confirms and prices it). Either way the server re-checks availability and rules for the booked unit.<script src="https://rentalbeam.com/api/rentalbeam-booking-form.js" async></script>
<div class="rentalbeam-booking-form" data-group-id="YOUR_GROUP_ID" data-picker="cards"></div>Requesting several units at once
The group booking form shows an "Also request these units for the same dates" section on every flow. The visitor fills the form once, ticks extra units, and each ticked unit becomes its own booking request with its own pricing and availability check - you review and bill each one as usual. Custom-field answers carry over to extra units when the field label and type match (which is the normal case when your units share the same fields), checkbox fees are applied to each unit's own price, and uploaded files are stored privately per unit. If an extra unit is unavailable or missing a required answer, the visitor is told exactly which units could not be requested.
On pay-in-widget forms, the inline card payment covers the selected unit only. Extra units are submitted as booking requests after the payment succeeds, and a note in the widget tells the guest you will confirm them and arrange their payment separately - there is never one card charge spanning units.
How units stay independent
A group is a display layer, not a merge. Each unit keeps its own iCal sources, blocked dates, pricing, booking rules, and bookings. Changing a group never changes any unit's configuration, and deleting a group never deletes calendars or bookings.