Skip to content

Pending booking approvals

The Pending Approvals screen is an admin queue listing every pending booking in the syndicate, that is, bookings members have requested that no admin has yet approved or rejected. Each booking appears as an expandable card headed by the aircraft name, the member, and the time range, with a PENDING badge. Expanding a card reveals the full detail (member, start, end, duration, any notes) and the Approve and Reject actions.

The queue only fills when the syndicate has Require booking approval switched on in Booking policy. When the setting is off, member bookings confirm immediately and this queue stays empty; the Pending workbench does not show a Bookings section at all while the workflow is off.

  • Admins: full access. The screen is gated; non-admins cannot use it.
  • Members: do not see this screen. Members see the status of their own booking on the booking detail and calendar.

In the app:

  1. Open the syndicate.
  2. Go to the Admin tab and open Pending (or tap the approvals badge at the top of the syndicate screen, which opens the same Pending workbench).
  3. On the Pending screen, tap the Bookings row or its Review button.

Route: /syndicates/:syndicateId/approvals.

Each card in the queue shows:

Field Notes
Aircraft Card title.
Member The member who requested the booking.
Time range Start and end, in your timezone; a single-day booking shows the date once with both times.
Start / End / Duration Full timestamps and duration, shown when the card is expanded.
Notes The member’s booking notes, if any.
Approve Primary action. Confirms the booking after a confirmation dialog.
Reject Secondary action. Requires a reason, which is shown to the member.
  • Only pending bookings appear here. Tentative, confirmed, cancelled, and rejected bookings never enter the queue. Admins’ own bookings skip approval entirely, so they never appear either. See Booking policy.
  • Approval re-checks for conflicts. A confirmed booking or a scheduled maintenance booking may have taken part of the slot since the member submitted. If so, approval is blocked with a conflict message; the admin can reject instead or ask the member to rebook.
  • Rejection requires a reason. The Reject button in the dialog stays disabled until a non-empty reason is entered. The reason is recorded against the booking and shown to the member.
  • The member is notified either way. Approval sends a booking approved notification; rejection sends a booking rejected notification carrying the reason.
  • Approvals work offline. The decision is queued on the device and syncs to the server (and to the member’s notification feed) when the connection returns.
  • The queue is live. Cards disappear as this or another admin acts on them, and new requests appear as members submit them. If someone else acted first, your action fails with Only pending bookings can be approved (or rejected).
  • Empty state. When nothing is waiting, the screen reads “All caught up!” with “No bookings pending approval”.