Let guests request a discovery flight without an account
Turn on public booking under Settings → Booking links, configure each public page under More → Booking links, and approve guest requests from the same Booking requests queue. Guests confirm by email first. Members keep booking as they do today.
For owners, admins and dispatchers
Turn on public booking under Settings → Booking links, configure each public page under More → Booking links, and approve guest requests from Calendar → Booking requests. Guests confirm by email first. Members still book with Solo, Dual, Ground and the rest; offerings do not replace reservation types.
What guests get#
A public page at /book/{your-slug}/{offering-slug}. The guest picks an open time,
enters name, email, and phone, and submits a request. AerScheduler emails them a
confirmation link. After they confirm, the request appears in the same queue as
member approval requests.
This is not instant booking. The front desk still approves or declines it. Offerings are guest-only: dual, solo, and rental stay on the member Book flow.
If the offering lets the guest pick an aircraft, that tail is held until the request expires, is declined, or you approve it, and it shows on the Calendar like a pending slot offer. The hold paints as Guest (awaiting email) until they confirm; the API does not include their name or email on that row. Confirming the email fails if that tail was taken in the meantime. Without pick-aircraft, the desk assigns the plane at approval. Those unlabeled times are not reserved for the guest; once as many pending requests as free tails already cover a slot, the public page stops offering it, and later confirmation links expire instead of overfilling the slot. Unconfirmed unlabeled requests do not consume that capacity until the guest confirms.
Turn it on#
WebSettings → Booking links- Flip Allow public requests. If you have not set a link slug yet, AerScheduler fills one from the school name.
- Open More → Booking links. A Discovery flight offering is already there (60 minutes, guest type, desk assigns the plane). Add or confirm eligible aircraft, then edit name, price, or duration if you want. You can add more offerings later.
- Copy the public link from the offering's menu (Copy public link), or choose Open public link to see the guest page in a new tab. Only Active offerings get a link.
Calendar visibility for Guests (public booking) still decides how much of the schedule the guest sees when picking times. Open slots only is the usual choice. That setting stays on Booking links.
Settings → Booking links also has a Configure booking links button that opens the same Booking links page.
Public booking lives on the web console only. There is nothing to configure in the mobile app.
What the guest does#
They open the link. Day view is the default: a month calendar plus start times for the day they pick (8:00 AM, not a range). On a computer they can switch to a week calendar or a week of start-time buttons. They can change 12-hour vs 24-hour and the time zone.
On a phone there is only day view: the month sits above the start times, with large tap targets, and the window scrolls as one page. After they pick a time, the name and email form appears. Phone is required so the desk can call. Copy on the page says the school must approve it, and links AerScheduler's privacy policy. They then click Confirm this request in email.
To put the same page on your website, first add your site under Websites that may
embed (one host per line, like www.yourschool.com). www.yourschool.com and
yourschool.com are different websites: list both if both serve your pages. Then use
the offering menu on WebMore → Booking links:
Open public link, Copy public link, Copy embed code (inline iframe), or Copy modal
embed (a button that opens the page over your site). Open public link is the same page
guests get. Leave that
list empty to keep the share link only: other websites cannot put the page in a frame.
AerScheduler can still open the link in its own tab. Do not inject your own CSS or
scripts into the frame. The embed does not set AerScheduler analytics or advertising
cookies, and it does not show a cookie banner.
The snippet sets a parentOrigin so height and "request submitted" messages reach your
page even when the browser hides the parent origin. That value does not decide who may
embed: only the list under Websites that may embed (and the browser's frame policy) does.
The iframe HTML still includes src so a CMS that strips scripts can show the picker;
resize and overlay close need the script. The iframe starts about 640px tall and shrinks
or grows with the form. A modal overlay closes when the request is sent (the guest still
confirms by email). Paste into an HTML/code block if an "embed" field strips tags.
Safari and iframe-heavy hosts can still block a frame if the host you listed is not the
exact origin serving the page.
If they never confirm, the request never reaches the desk. Unconfirmed requests expire after 24 hours, or sooner if the requested time has already passed. Expired, declined, and cancelled public requests that never became a reservation have the guest's name, email, phone, and notes removed.
Approve or decline#
Same place as member requests: WebCalendar → Booking requests. Guest rows show the name they entered rather than a member account. Approve creates a reservation (usually a guest on the flight). Decline emails them and closes the request.
If the offering lets the guest pick an aircraft, that tail stays occupied (same as a pending slot offer) until you approve, decline, or the request expires, and the Calendar paints the hold. You can pick a different eligible aircraft or instructor when you approve. Aircraft and instructors have to be on the offering. Without pick-aircraft, another booking can still take a plane while you decide, unless that slot already has as many pending unlabeled requests as there are free tails. Approve still runs the same conflict checks as a normal booking.
After you approve a public guest, the queue keeps them for 30 days with Invite as student and Invite as renter. That sends a normal invitation to the email they used. The reservation already exists.
Package price#
An offering can use Charge a package price when booked, the same collection
style as a staff calendar booking. Approval copies those fields onto the
reservation and Stripe invoices the package amount. It is not a percentage
deposit, and it is not a checkout that exists only on /book. See
Charge a package price when booked.
Guest page look#
Under the public booking card you can set an accent color, light/dark/system, comfortable or compact density, and rounded or sharp corners. The school logo is already the header. There is no custom CSS or scripts.
What can go wrong#
| What they see | What it means |
|---|---|
| This page is not available | Public requests are off, the offering is paused, or the slug in the URL is wrong. |
| No open times this week | Guest visibility hides occupied times, or org notice/horizon/buffers leave no window. Try another week, or loosen guest calendar visibility. |
| Check your email | The request is waiting on confirmation. It is not in the desk queue yet. |
| This page cannot be shown here | The page is in a frame on a site that is not listed under Websites that may embed. Add that exact host. www and the bare domain are not the same listing. |
The public demo sandbox cannot send guest requests. That is on purpose.
Related#
The same queue for students and renters who must request before they fly.
Notice, horizon, buffers, and the other calendar rules guest slots still follow.
Invoice a fixed amount when the reservation is created, on the calendar or from an offering.
Common questions
- Do I have to create an offering before guests can request a flight?
- No. Every school starts with a Discovery flight offering. Open More → Booking links, add aircraft if the list is empty, turn on Allow public requests under Settings → Booking links, and share the link. You can edit, pause, or add more offerings.
- Does this replace Solo, Dual, and the other booking types for members?
- No. Members still book the way they always have. Offerings and public links are for guests who do not have an account.
- Does submitting a request hold the aircraft?
- Only when the offering lets the guest pick an aircraft. That tail is held until the request expires, is declined, or you approve it, and it shows on the Calendar. Without pick-aircraft, the desk assigns a plane at approval. Unlabeled times are not reserved one-for-one; once as many pending requests as free tails cover a slot, guests stop seeing it.
- Why is phone required on the guest form?
- So the front desk can call about the request. Expired, declined, and cancelled public requests that never became a reservation have the guest's name, email, phone, and notes removed.
- When does the front desk see a guest request?
- After the guest confirms the email link. Unconfirmed requests stay off the pending queue and expire after 24 hours.
- Can I invite a public guest as a student or renter?
- Yes, after you approve the request. Calendar → Booking requests keeps approved public guests for 30 days with Invite as student and Invite as renter. That sends a normal invitation to the email they used.
- Can the public page charge a discovery price?
- Yes, by using the same Charge a package price when booked style as a calendar booking. Set it on the offering. It is not a separate checkout only for /book, and it is not a percentage deposit.
- Can I embed the request page on our school website?
- Yes. Add your site under Websites that may embed on Settings → Booking links, then use Copy embed code or Copy modal embed from the offering menu on More → Booking links. Open the public link from that menu to see the same page guests get. List both www.yourschool.com and yourschool.com if both serve the site. An empty list keeps the share link only. If a CMS embed block strips scripts, paste into an HTML block or use the public link. The embed does not set AerScheduler analytics or advertising cookies, and it does not show a cookie banner. Guests still confirm by email, and the desk still approves. This is not instant booking.
- How do I see what guests will see before I share the link?
- On More → Booking links, open the offering menu and choose Open public link. That is the same page guests get. You can also copy the link and paste it into a new tab. Turn on Allow public requests first under Settings → Booking links.
Related
- Require approval before members bookStudents, renters, or instructors in selected roles or groups submit booking requests. Staff approve or decline from the calendar or Home, and approval creates the reservation. Undecided requests expire when the requested time passes.
- Booking rules: the settings that change how booking worksFlying day, multi-day trips, payment-method gate, cancel/edit lock, late-cancel fee, max upcoming bookings, max reservation length, minimum notice, booking horizon, start interval, fixed duration, buffers, and account-ledger book/dispatch gates. What each does and where it lives.
- How much of the schedule guests and members seeCalendar visibility under Booking links sets how much of the schedule each audience sees when picking a time. It does not change the staff Calendar. Open slots only is the usual guest setting.
- Charge a package price when the booking is createdStaff invoice a fixed package amount when a reservation is created. The guest can pay any time. Instructors see Collect payment until it is paid. Close-out records Hobbs and does not bill the hop twice.
Still stuck on this?
Email support@aerscheduler.com and tell us what you were trying to do. We answer.