RevenuePilotby Foxes Technology
Read-only firstCreate account
The operating loop

One source in. Three decisions out. Nothing moves without you.

RevenuePilot runs a single closed loop: connect one source of truth, reconcile the economics you already own, receive three ranked and quantified decisions, act inside guardrails you set, and record the outcome so the next decision is better evidenced than the last.

  • Your booking system stays authoritative
  • Deterministic decisions
  • Execution gated by default
THE LOOP, END TO END
  • 01
    ConnectOne canonical source per organization, read through a scoped connector or an encrypted file.
  • 02
    ReconcileSeven canonical contracts, explicit timezones and flagged gaps instead of silent defaults.
  • 03
    DecideA deterministic engine returns a bounded queue of three quantified moves with receipts.
  • 04
    ControlObserve, Shadow, Assist and Autopilot are earned stages, not a switch you flip on day one.
  • 05
    MeasureEstimated, executed, verified and realized values stay separate so nothing is overclaimed.
The whole loop on one page

Five stages, each one inspectable

Every stage produces evidence the next stage depends on. If a stage cannot be evidenced, the loop stops there and says so rather than continuing on an assumption.

  1. Connect one source

    Your booking or reservation system stays the source of truth. RevenuePilot reconciles and reads back; it never takes silent ownership of your catalogue, your availability or your prices.

  2. Reconcile known economics

    Products, options, departures, bookings, cancellations, costs and commissions are reconciled into seven canonical contracts. Missing variable cost or commission produces a flagged cost-coverage gap rather than a default value.

  3. Produce three ranked decisions

    A deterministic engine derives booking pace and remaining capacity, compares them against historical lead-time cohorts, calibrates confidence from its own recorded hindcast error, and applies your guardrails as hard constraints.

  4. Act under operator control

    Every workspace starts in an advisory posture. Live price execution is disabled globally today, and enabling it for a connector is a certification and qualification process, not a preference toggle.

  5. Record the outcome

    What was estimated, what was executed, what was verified against the source and what was realized are kept as four separate values, so the next decision inherits measured reality instead of an optimistic summary.

Stage one — connect

Your system stays the source of truth

RevenuePilot reads. It reconciles what it reads against its own canonical model, and it reads back after any write it is ever permitted to make. There is no path where your catalogue quietly becomes ours.

Paths into the workspace

The Generic API and CSV are the universal paths and are available now. A controlled pilot connector exists for Egypt Excursions Online, the Foxes Booking Engine is a read connector, and Rezdy and Bókun are certification-ready rather than certified.

  • Generic API and CSV available now
  • Rezdy and Bókun certification-ready
  • Unsupported channels stay marked not connected

Files encrypted before they leave the browser

CSV uploads are encrypted in the browser with AES-256-GCM, stored through signed private object storage against canonical templates, and validated asynchronously with partial-row reporting so a single malformed row does not discard the file.

  • AES-256-GCM applied client side
  • Partial-row validation reporting
  • Raw uploaded objects deleted after seven days

Scopes advertised truthfully

The Generic API connector advertises exactly what it uses: catalog_read, departure_read, booking_read and price_read. Inbound keys are organization-scoped and stored as hashes, so a key can be verified but never re-read.

  • Four read scopes, stated plainly
  • Organization-scoped hashed inbound keys
  • One canonical source connector per organization in v1
Stage two — reconcile

Seven canonical contracts, and an honest account of what is missing

Reconciliation is where most revenue tooling quietly guesses. RevenuePilot treats 'empty' and 'failed' as different states, and treats an unknown cost as unknown rather than as zero.

The seven canonical contracts and how gaps are handled
Canonical contractWhat it holdsHow a gap is handled
ProductsThe sellable catalogue as your source defines itUnreconciled products are excluded from decisions and listed
OptionsImmutable option identity beneath each productA missing option mapping blocks pricing lookup for that option
DeparturesExplicit timezone plus a UTC instant for every departureAn ambiguous departure time is rejected, never inferred
BookingsReconciled demand used to derive booking paceStale source data is surfaced as stale, not silently trusted
CancellationsNet demand after cancellation activityUnreconciled totals raise a reconciliation mismatch
CostsVerified variable cost per product or optionMissing cost produces a flagged cost-coverage gap
CommissionsChannel commission applied to contributionMissing commission withholds the margin view for that product
Stage three — decide

A deterministic engine, not a language model

The decision itself is arithmetic you can inspect. The AI surface explains that arithmetic; it has no route to create, alter or execute a decision.

How a move is derived

Pace and capacity against comparable history

The engine derives booking pace and remaining capacity from signed source data and compares them against historical lead-time cohorts. It persists its own hindcast error and coverage, then calibrates a confidence score from that record instead of asserting one.

  • Derived from signed source data
  • Compared against historical lead-time cohorts
  • Confidence calibrated from recorded hindcast error
How a move is bounded

Guardrails are hard constraints, applied before you ever see a proposal

Minimum confidence of 85, maximum movement of 5% per change, a cooldown of at least 24 hours, and your price floor and ceiling are evaluated in code. A proposal that violates any of them is rejected outright rather than clipped to fit and shipped anyway.

  • Violating proposals are rejected, not clipped
  • Ranked by contribution impact, urgency and operational pressure
  • The queue is bounded to three decisions so a review stays finishable
How a move is defensible

Every recommendation carries a decision receipt

Source, economics, uncertainty, policy boundary and the required operator action travel with the recommendation. Generation is idempotent, keyed by organization, request key, request hash, source snapshot, policy and cycle, so a replay returns the existing recommendation and mismatched evidence raises a conflict.

  • Receipt records the boundary that applied
  • Replays return the original recommendation
  • Mismatched evidence fails loudly instead of forking the truth
Stage four — control

Autonomy is earned one stage at a time

The automation ladder exists in full, and it is deliberately gated. Live price execution is currently disabled globally and external writes are disabled by default; the machinery is built and held closed rather than shipped open.

The automation ladder and what each stage requires
StageWhat the workspace doesWhat it takes to reach it
ObserveReads and reconciles; produces the first Revenue Leak AuditA connected canonical source
ShadowGenerates recommendations and records them without actingReconciled economics and reviewed guardrail policy
AssistAn operator approves each individual change before it is appliedCertification, owner-approved costs and mappings, policy review
AutopilotApplies approved moves within policy without per-change approvalShadow qualification, a restricted one-tour canary and signed acceptance
≥85
Minimum confidence before a move is eligible
≤5%
Maximum movement permitted in a single change
≥24h
Cooldown before the same product can change again
≤10/day
Maximum writes per organization when execution is enabled
Stage five — measure

Four values that are never collapsed into one

Most revenue claims fail because an estimate and an outcome were reported as the same number. RevenuePilot keeps them apart on purpose, including when the separation is unflattering.

Estimated, executed, verified, realized

An estimate is what the engine projected. An execution is what was applied. A verification is what the source and the public quote confirmed afterwards. A realization is what the reconciled data later shows. These are stored as four distinct values, and the interface never quietly substitutes one for another.

  • Estimates are labelled as estimates
  • Verification compares machine and public quote
  • Realized values come from reconciled source data

Lift claims require a control

A contribution-margin lift claim requires a holdout or a matched control. Before-and-after arithmetic across a changing season, a changing channel mix and a changing catalogue is not causal proof, and RevenuePilot does not present it as one.

  • Holdout or matched control required
  • Before-and-after arithmetic is not causal proof
  • Bounded exposure is not a forecast or a guarantee
Getting started

What actually happens after you get access

No duration is promised here, because the honest answer depends on the state of your data. What is fixed is the order, and the fact that nothing in this sequence can change a price.

  1. Create the workspace and set roles

    Owner, admin, revenue manager, analyst and viewer are distinct roles with distinct permissions. High-impact actions require TOTP step-up, and the audit trail is append-only from the first action onward.

  2. Connect the canonical source

    Either a scoped connector or an encrypted CSV upload against a canonical template. Ingestion must match the single configured source, and validation reports which rows were accepted and which were not.

  3. Close the economics gaps

    Variable cost and channel commission determine whether the engine can rank on contribution rather than headline revenue. Where they are absent, the workspace shows a cost-coverage gap and withholds the margin view instead of estimating one.

  4. Read the first Revenue Leak Audit

    The audit is generated deterministically from what you connected. It is the first honest read of where the arithmetic says exposure sits, and it is non-executable by construction.

  5. Set guardrails and review the queue

    Floor, ceiling, movement cap, cooldown and confidence floor are your configuration. Once set, the workspace queue holds three quantified decisions at a time, each with its receipt, so a revenue review has a defined end.

  6. Stay in an advisory posture

    The loop is fully usable without any price ever being written. Moving beyond advisory is a separate, evidenced decision that involves certification, qualification and your explicit approval.

Common questions

What operators ask before connecting a system

Will RevenuePilot change my prices?

Not today. Live price execution is currently disabled globally and external writes are disabled by default. Enabling execution for a connector requires certification, shadow qualification of 14 consecutive days with at least 20 eligible recommendations, owner-approved costs and mappings, policy review, and a restricted one-tour canary with signed acceptance.

Does my booking system stop being the source of truth?

No. Your booking or reservation system remains authoritative. RevenuePilot reconciles what it reads into its own canonical contracts and reads back after any permitted write. It does not take silent ownership of your catalogue, availability or pricing.

What happens if my cost data is incomplete?

The workspace records a flagged cost-coverage gap and withholds the contribution view for the affected products. Empty and failed are treated as different states, and nothing is silently defaulted, because a zero-cost assumption produces a confident recommendation built on a number nobody supplied.

Can the AI change a price or a guardrail?

No. Revenue Copilot is advisory: it explains, compares and investigates. It cannot change a price or a guardrail, and those paths do not accept model output. The Model Context Protocol server shipped per workspace is read-only, with six read-only tools and zero execution routes.

How is my data isolated from other organizations?

Tenant isolation uses forced PostgreSQL row-level security, so scoping is enforced in the database rather than only in application code. Connector credentials are encrypted with AES-256-GCM and are never returned after storage. The audit trail is append-only, and audit CSV export is available on the Growth and Scale plans.

FOUNDING OPERATOR PROGRAM

Run the loop before you automate any part of it.

Plans are Starter at $49, Growth at $149 and Scale at $399 per month. Production card collection is currently disabled, so approved founding operators can create a verified account without being charged while the execution gates stay closed.