intermediate
bookings
group
multi-rider

Group Bookings

Reserve multiple vehicles under one booking, one payer, and one waiver with N signers

Levy Fleets TeamMay 18, 20266 min read

Group Bookings

A group booking is a single reservation that covers multiple riders sharing a start time, end time, and pickup location, with one person paying for the whole group and a multi-rider waiver collecting signatures from each rider.

Common examples:

  • A family of four renting beach cruisers for the afternoon.
  • A bachelor party renting 8 e-bikes for a tour.
  • A corporate retreat renting 12 fat-tire bikes for a team activity.
  • A private buy-out of an existing tour departure.

How a group booking is modeled

A group booking creates one reservation row with quantity > 1 (or links N child reservations to a parent, depending on the operator's configuration). The single row records:

  • The payer's contact info and card.
  • The total cost (price-per-rider × quantity, plus add-ons).
  • The pickup location and time.
  • A guest_party_size field tagging how many riders the group includes.

The multi-rider waiver creates N signature records linked back to the parent reservation. Each rider gets their own copy of the signed agreement by email, but the booking is paid once.

Customer flow

From the hosted booking page or widget:

  1. Customer picks a model.
  2. Quantity selector appears (1-12 riders by default; configurable per widget).
  3. The price updates live as they change quantity.
  4. Customer info — for the payer only.
  5. Multi-rider waiver.
    • The payer signs once for themselves.
    • The payer enters the name + email of each other rider.
    • The system emails each rider a one-tap link to sign their own waiver. Riders can also sign in person on the iPad on the day of pickup.
  6. Payment — single charge to the payer's card.
  7. Confirmation — ICS attachment, QR pickup code, and a roster of every rider with their signature status.

The booking is only confirmed once payment succeeds. The waiver status of individual riders does not block confirmation — the operator can chase missing signatures right up to pickup.

Operator flow

In Dashboard > Reservations, group bookings show with a small badge (Group · 8). Open the detail:

  • Roster panel — every rider's name, email, and waiver status (signed, pending, unsigned at pickup).
  • Send waiver link button next to any unsigned rider to re-send.
  • Add rider to expand the group last-minute (charges incremental seat).
  • Remove rider to shrink the group (refunds the difference).

On the iPad POS, the Pickup Queue shows group bookings with the roster expanded. At pickup, staff:

  1. Open the group reservation.
  2. Verify each rider's waiver is signed (any unsigned rider can sign on the iPad in person).
  3. Assign N specific vehicles, either by QR-scanning each one or by tapping Auto-assign to grab the first N available of the booked model.
  4. Tap Unlock all to release all assigned vehicles.

At-pickup vehicle assignment

The recommended subaccount setting for group bookings is assign at pickup, not assign at booking. With assign-at-pickup:

  • The booking holds inventory at the model level via model_inventory_caps.
  • Specific vehicles are only chosen when the group physically arrives.
  • This matches FareHarbor behavior for tour operators and is the most forgiving for charging, prep, and last-minute swaps.

You can override per-widget if your operation needs specific vehicles locked at checkout (B2B fleet, prepaid corporate, etc.).

Pricing

Group bookings use the same pricing tier as solo bookings, multiplied by the quantity. You can also configure:

  • Group discount tier — a separate pricing tier triggered when quantity ≥ N. For example, "$45/rider for ≤4 riders, $40/rider for 5-12 riders."
  • Bundles — pair group bookings with shared add-ons ("$25 group helmet bundle").
  • Promo codes with a min_quantity constraint so a "GROUP10" code only applies to bookings of 4+ riders.

Refunds and partial cancellations

Common scenarios:

  • Whole group cancels. Standard refund flow against the reservation — full, partial, or no refund per your policy.
  • One rider drops out. Open the reservation, click Remove rider, pick whether to refund the seat in full or apply the same partial-refund policy you use for solo bookings.
  • Group splits across two departures. Cancel the group booking, rebook as two separate groups.

All refunds flow through the reservation. Never credit the wallet directly — it corrupts net_deposited and partner payouts.

B2B group bookings

If the booking is for a B2B / corporate account, see B2B Corporate Accounts — those bookings skip card payment and roll into a monthly NET-30 invoice instead.

Group bookings on tour schedules

When a customer books multiple seats on a recurring tour departure, each seat is a reservation linked to that departure. The capacity counter decrements by N. The multi-rider waiver flow runs the same way — one payer, N signers.

Reporting

In Dashboard > Bookings > Calendar and the standard reservations view, group bookings count as one booking but multiple riders. Most operators want both lenses (bookings count and rider-day count) — both are available in the analytics export.