The platform

The ontology your whole operation runs on.

Aerandil sits above your PMS, POS, RMS, and CRM. It turns their data into one typed, governed model — objects, links, actions, and events — that staff, software, and AI all operate through.

  • 01 Objects
  • 02 Links
  • 03 Actions
  • 04 Events
Why a model

Most software rebuilds the hotel. Aerandil models it once.

Every PMS, POS, and spreadsheet invents its own guest, reservation, and folio. Integrations move data between them, but they never agree on what it means. Aerandil makes the meaning the product: one declared model the whole operation shares, governs, and extends.

The modelFour primitives

From typed noun to immutable fact.

Every operation Aerandil runs reduces to four primitives — each one governing the next, from the nouns of the business to the append-only record of what changed.

01Typed nouns

Objects

Every real thing — a property, reservation, person, folio, charge — is a typed object with a declared schema. Defined once, not reinvented inside every application.

  • Property
  • Reservation
  • Folio
  • Charge
02Typed relationships

Links

Objects connect through declared link types. A reservation belongs to a person; a folio holds charges; a stay occupies a room. The graph is the model — not a join you have to remember.

  • Reservation → Person
  • Folio → Charge
  • Stay → Room
03Governed change

Actions

State only moves through actions: permissioned, validated, idempotent. The same governed contract for staff, software, and agents — no privileged back doors into the database.

  • check_in
  • post_charge
  • settle_folio
04Immutable record

Events

Every committed action emits an append-only event. The operation's history is a fact you can query and replay — never edited after it happened.

  • reservation.created
  • charge.posted
  • folio.settled
The graph73 types · 186 link types · two hops

The graph is the model — drawn live from the registry.

Two hops out from one reservation sit the guest, the room, the folio, the rate plan — and the workflows, fraud checks, and forecasts that govern them. Explorer renders it from the same registry the API serves, so the picture can't drift from the contract.

The Explorer ontology graph — 73 object types and 186 link types within two hops of a reservation, coloured by domainThe Explorer ontology graph — 73 object types and 186 link types within two hops of a reservation, coloured by domain
IngestionSource systems → one model

Getting the data in is the product, not a project.

Aerandil ships an ingestion fabric: connectors extract from the systems a property already runs, land every vendor record verbatim, and fold it into the ontology through the same governed actions as everything else. No side doors into the database — not even for us.

  1. 01 · tap

    Ecosystem extractors pull from the vendor's API — Opera, Lightspeed, Deputy, and the long tail.

  2. 02 · raw

    Records land verbatim in a staging schema. The original is never thrown away.

  3. 03 · mapping@version

    A versioned, reviewable mapping declares how vendor rows become ontology operations.

  4. 04 · action engine

    Every record folds in through the same validated, idempotent, audited actions as any operator.

The Explorer connectors dashboard — registered connectors with schedules, mappings, and audited run historyThe Explorer connectors dashboard — registered connectors with schedules, mappings, and audited run history

Every sync run opens and closes as an audited object in the same ontology it feeds — trigger, counts, and failures included.

MetricsConformed · USALI-aligned

Occupancy, ADR, RevPAR — defined once, cited, live.

The metrics hotels actually run on come from a governed catalogue, not a BI team's folklore. Each definition is USALI-aligned, carries its citation and version, and computes from live events — booking pace included — so every consumer reads the same number.

The Explorer analytics view — the ADR metric definition with its USALI citation and a live computed chartThe Explorer analytics view — the ADR metric definition with its USALI citation and a live computed chart
adr

Σ net rooms revenue ÷ Σ rooms sold — USALI 12th Revised Edition, Rooms: ADR statistic.

revpar

Rooms revenue per available room, computed from the same posted-ledger facts as the folio.

booking_pace

Rooms on the books by lead time — one property × one arrival date, snapshotted continuously.

Open foundations

Open by construction.

No proprietary store, no lock-in. Aerandil speaks the formats your team already trusts — and generates the rest from one source of truth.

Vanilla PostgresThe durable store is plain Postgres. Runs identically on local Docker, Neon, RDS, or Aurora.
OpenAPIEvery route is described by a spec, not tribal knowledge. Contracts you can read and test.
JSON SchemaObject, link, and action shapes are declared schemas — validated at the edge and the core.
MCPEvery registered action is exposed as a typed Model Context Protocol tool for agents.
Generated SDKsPython and TypeScript clients are generated from the same source of truth, never hand-drifted.
Append-only eventsAn immutable event log underneath every change — the audit trail is the architecture.

Build on it

Build on the foundation
hospitality is missing.

Aerandil is in private development. The next milestone is working with design partners who operate complex, multi-system hospitality businesses.

Design partner channel coming soon.