Skip to main content

Ferry Flights

Backoffice path: backoffice/occ/ferry-flights

Available to roles: System Administrator, Administrator; Operations Staff has full access

Overview

Ferry flights are staff-created, non-revenue operations used to move aircraft along specific routes. Unlike automatic repositioning bounties, ferry flights give operations staff full control over routing, timing, pilot assignments, and rewards. They are ideal for planned fleet movements, seasonal repositioning, or situations where the automatic bounty system cannot find a suitable route.

Creating a Ferry Flight

To create a new ferry operation, staff specifies the following:

FieldDescription
AircraftThe aircraft to be ferried.
DescriptionA public description visible to pilots, explaining the purpose of the ferry (e.g., "Seasonal repositioning to winter hub").
LegsAn explicit route defined as a sequence of airports (departure and arrival for each leg).
Flight numbersA flight number assigned to each leg of the ferry.
Points per legThe Points reward a pilot earns for completing each individual leg.
Time window per legThe maximum time allowed to complete each leg (default: 24 hours).
NotesInternal staff notes, not visible to pilots.
Pilot assignmentsA priority queue of pilots assigned to the ferry. The system works through the queue in order if the primary pilot is unavailable or their window expires.

Defining Legs

Each ferry operation consists of one or more legs. A leg represents a single flight segment from one airport to another. For a multi-stop repositioning (e.g., moving an aircraft from KJFK to KLAX via KORD), you would define two legs:

  1. KJFK to KORD
  2. KORD to KLAX

Each leg has its own flight number, Points reward, and time window.

Pilot Assignment Queue

Pilots are assigned to a ferry in a priority queue. The first pilot in the queue is the primary assignee. If that pilot's time window expires without completion, the assignment cascades to the next pilot in the queue. This ensures ferry operations are not stalled by a single unavailable pilot.

When a pilot is added to a leg that is currently waiting for a pilot (Assigned status with no active window), and the new pilot is first in the queue, they are automatically given an active window and notified immediately.

Time Window Management

Every 5 minutes, the system checks for expired time windows on active ferry legs. When a window expires:

  1. The current pilot's assignment is removed, freeing the slot so the pilot can re-apply later if needed.
  2. The next pilot in the priority queue is activated.
  3. Notifications are sent to both the departing and incoming pilots.

Protection for active flights: If a pilot is actively flying a ferry leg and has submitted position reports, the system protects that leg from expiry. The time window is not enforced while the flight is in progress.

Pilot Notifications

Pilots receive notifications at each stage of the ferry lifecycle:

EventNotification
AssignedPilot is notified they have been assigned to a ferry operation.
Window openPilot is notified their time window has begun.
Window expiredPilot is notified their window has expired and the assignment has moved to the next pilot.
DelayedPilot is notified of a delay in the ferry operation.
CompletedPilot is notified the ferry operation (or their leg) has been completed.

Leg Completion

Ferry legs are completed at flight submission time, as soon as the pilot's ACARS client submits the flight data. Completion does not wait for the PIREP to be reviewed (approved, warned, or rejected). This ensures ferry operations continue smoothly and the next leg can be activated immediately, since the aircraft has physically moved to its destination.

Points and Rewards

Upon completion of a ferry leg, the assigned pilot is awarded Points with the transaction type "ferry". The amount is the per-leg Points value configured when the ferry was created. Points are awarded individually per leg, so a pilot completing multiple legs of the same ferry earns rewards for each.

Managing Legs After Creation

Staff can manage ferry legs after initial creation:

  • Edit pending legs — Change airports, flight numbers, distance, points, or window hours for any leg still in Pending status.
  • Add new legs — Append additional legs to ferries that are Pending or In Progress. New legs are added at the end of the sequence.
  • Remove pending legs — Remove legs that are still in Pending status and have no active pilot assignments. Remaining legs are automatically resequenced.

Monitoring Ferry Operations

The ferry flights page displays all ferry operations with their current status. Staff can:

  • View the overall progress of each ferry (how many legs are complete).
  • See which pilot is currently assigned to the active leg.
  • Monitor time window status for each leg.
  • Track the full assignment history, including expired windows and cascaded assignments.
  • Create new ferry operations as needed.
  • Edit the public description at any time from the expanded ferry view.