Reservation Fee Explainer

Reserving a home

One fee holds your home while the paperwork catches up

A reservation takes the home off the market the same day and fixes the price. From there you have 28 days to exchange, and the fee comes straight off your deposit.

Reservation fee

$0

What it does

  • Takes the home off the market the same day
  • Fixes the price for the whole build
  • Credited against your deposit on exchange
  • Refunded in full if the contract pack is not as described
  • Gives you first choice of finishes palette

What happens next

  1. Day 0

    Reservation

    You pay the fee at the sales suite or online, we issue the reservation agreement and the contract pack goes to your solicitor.

  2. Within 28 days

    Exchange of contracts

    Your solicitor finishes their enquiries and you exchange with a 10% deposit, less the reservation fee already paid.

  3. Spring 2027

    Completion

    The balance is paid, the keys are handed over at the sales suite and Arooj Aftab becomes your customer care contact.

Reserve a home

Reservations are taken in person with Jon Hopkins or online once you have viewed.

About this block

Reservation Fee ExplainerPRO

A reservation explainer for a development's sales page: on the left the reservation fee as a large figure that counts up in view, with a checklist of what the fee does under drawn hairlines; on the right a short vertical timeline (reservation, exchange within 28 days, completion) whose spine draws down and whose dots fill in order, followed by a reserve button and a short note.

Realestate38: Reservation Fee Explainer

A reservation explainer for a development's sales page: on the left the reservation fee as a large figure that counts up in view, with a checklist of what the fee does under drawn hairlines. On the right a short vertical timeline (reservation, exchange within 28 days, completion) whose spine draws down and whose dots fill in order, followed by a reserve button and a short note.

Upgrade to Pro

Pro blocks install through the shadcn CLI with your license key and ship their full source. Docs and live previews stay open to everyone, so you can read every block's details first.

Upgrade Now

Installation

Swap YOUR_EMAIL and YOUR_KEY for the email and license key on your account. Find your license key on your account page.

Radix flavor

bash
npx shadcn add "https://beste.dev/r/realestate38?email=YOUR_EMAIL&license_key=YOUR_KEY"

Base UI flavor

bash
npx shadcn add "https://beste.dev/r-base/realestate38?email=YOUR_EMAIL&license_key=YOUR_KEY"

This installs the block to components/beste/block/realestate38.tsx plus the badge24 rule eyebrow, the button25 quiet pill used for the reserve button, and the shadcn/ui button primitive behind it.

Quick start

The installed file exports realestate38Demo alongside the block: the exact props behind the preview above. Spread it to get a working section in one line.

tsx
import { Realestate38, realestate38Demo } from "@/components/beste/block/realestate38";

export default function Page() {
  return <Realestate38 {...realestate38Demo} />;
}

Then replace the demo with your own props. Written out, a trimmed setup looks like this:

tsx
import { Realestate38 } from "@/components/beste/block/realestate38";

export default function Page() {
  return (
    <Realestate38
      eyebrow="Reserving a home"
      heading="One fee holds your home while the paperwork catches up"
      description="A reservation takes the home off the market the same day and fixes the price."
      fee={5000}
      currency="USD"
      locale="en-US"
      covers={["Takes the home off the market the same day", "Fixes the price for the whole build", "Credited against your deposit on exchange"]}
      milestones={[
        { when: "Day 0", title: "Reservation", description: "You pay the fee and the contract pack goes to your solicitor." },
        { when: "Within 28 days", title: "Exchange of contracts", description: "You exchange with a 10% deposit, less the reservation fee." },
        { when: "Spring 2027", title: "Completion", description: "The balance is paid and the keys are handed over." },
      ]}
      labels={{ fee: "Reservation fee", covers: "What it does", timeline: "What happens next" }}
      button={{ label: "Reserve a home", href: "/reserve" }}
      note="Reservations are taken in person or online once you have viewed."
    />
  );
}

Props

PropTypeDefaultDescription
eyebrowstring–Short line above the heading, rendered through badge24.
headingstring–Section heading.
descriptionstring–Intro paragraph beside the heading on wide screens.
feenumber–The reservation fee, shown as the large figure.
currencystring–ISO currency code for the fee, USD when omitted.
localestring–Locale for number formatting, en-US when omitted.
coversstring[][]What the fee does, one line per row with a check mark.
milestonesMilestone[][]The timeline on the right, in order.
labelsLabels{}Captions above the fee, the checklist and the timeline.
button{ label: string; href: string }–Reserve button under the timeline.
notestring–Short note beside the button.
classNamestring–Extra classes merged onto the section.
ts
type Milestone = {
  when: string;
  title: string;
  description: string;
};

type Labels = {
  fee?: string;
  covers?: string;
  timeline?: string;
};

Behavior notes

  • The fee is a spring from 0 to the value that starts once the figure scrolls into view and is formatted with Intl.NumberFormat as a whole currency amount; with prefers-reduced-motion the final figure shows at once.
  • Checklist rows rise 0.1 s apart from 0.25 s and each draws its own hairline on top; a closing hairline draws after the last row so the list is bounded on both sides.
  • The timeline spine scales down from its top over 1.6 s, and each milestone rises with its dot growing from 0.6 to full size, 0.25 s apart, so the dots fill as the spine passes them.
  • The button and note rise last, after the final milestone, and only render when one of them is given.
  • The two columns stack on small screens with the fee and checklist first; on desktop they take five and six of twelve columns with a gap in between.

More Real Estate blocks

View all Real Estate
PRO

realestate40

Launch Offer with Countdown

PRO

realestate42

Mortgage Partner Rate Table

PRO

realestate71

Service Charge Breakdown

Get Pro