Skip to content
Dusan Milicevic edited this page Apr 24, 2026 · 3 revisions

OTAIP — Open Travel AI Platform

75 agents. 6 distribution adapters. 3,092 tests. 15 packages published to npm.

OTAIP is an open-source agent orchestration platform for the travel industry. It covers the full lifecycle — search, price, book, ticket, change, refund, settle — across GDS, NDC, LCC, aggregator, and hospitality channels.

What You Can Build on OTAIP

End-user products

  • A full-service OTA — search across multiple suppliers in parallel, evaluate offers against traveler context, book, take payment, issue tickets, retrieve bookings, void, cancel, exchange, refund. Multi-channel fallback (NDC → GDS → direct) when the primary supplier fails.
  • A complete TMC — everything an OTA does, plus traveler profiles with loyalty, SSRs, and document storage; corporate account policies (cabin ceilings, fare limits, advance-purchase thresholds, blocked carriers, negotiated fares); mid-office automation (pre-ticketing validation, queue management); duty of care (locate travelers by airport and time); corporate reporting; BSP and ARC reconciliation.
  • An airline distribution platform — NDC Offers & Orders retailing (AIDM 24.1 OrderCreate / OrderRetrieve / OrderChange / OrderCancel) coexisting with GDS PNR via BookingReference. Offer construction with fare rules, taxes, and ancillaries. Ticketing with ETR plus EMD-A and EMD-S.
  • A hotel booking platform — HAIP adapter, property deduplication (Jaro-Winkler + Levenshtein + Haversine), content normalization, rate comparison with parity detection, California 24-hour cancellation rule, CRS-to-PMS confirmation verification.
  • A travel AI assistantAgentLoop plus pipeline validator with six gates that prevent LLM hallucinations (no fabricated offer IDs, no destination drift mid-flow, no ticketing without approval). Auto-generated Claude MCP tool definitions, OpenAI function-calling schemas, and standalone JSON Schema catalogs, all derived from AgentContract.

Operational platforms

  • A BSP/ARC reconciliation system — HOT file parser (EDI X12 plus fixed-width ASCII), IAR parser (X12 / CSV / XML), agency-to-BSP matching with discrepancy detection, commission management (overrides, tiers, effective dates, net remit), ADM dispute tracking with 15-day windows and 5-day warnings, ACM processing.
  • A revenue accounting system — coupon lift (OPENUSED), deferred revenue calculation, interline settlement (SIS proration), multi-dimensional financial reporting, decimal-safe currency arithmetic via decimal.js.
  • An IRROPS response engine — caller-supplied carrier-specific delay thresholds, EU 261/2004 compensation via the published-law module in @otaip/core (distance bands €250/€400/€600, 3-hour delay trigger, Article 7(2) 50% rerouting reduction, 14-day cancellation safe harbour, extraordinary-circumstances exemption). US DOT 14 CFR §250.5 denied-boarding compensation (200% / 400% multipliers, $1,075 / $2,150 caps, effective 2025-01-22). Alliance and interline reprotection, waitlist management.
  • A compliance and audit platformEventStore with full audit trail, PII redaction, 2555-day retention (IATA / PCI), 1095-day GDPR retention, right-to-erasure, per-event aggregation with p50 / p95 / p99 percentiles.
  • A governance dashboard — performance audit (latency percentiles, error rates, degraded-agent detection with configurable thresholds), routing audit (per-channel success rates, fallback frequency), deterministic recommendation engine, alert agent with separate GDS and NDC thresholds.

Specialized components

  • A fare intelligence engine — ATPCO Categories 1–20 parsing, branded-fare shopping, fare construction (NUC × ROE with DomainInputRequired when ROE is missing, EMS mileage surcharge formula, HIP/BHC/CTM checks gated on intermediate-point fare lookup data), OfferEvaluatorAgent with multi-dimensional scoring against traveler profiles.
  • An ancillary merchandising platform — baggage, seats, meals, lounge access, insurance, per-passenger and per-segment pricing, RFIC A–I classification, EMD-A and EMD-S issuance.
  • A corporate policy enforcement engine — cabin ceilings, advance-purchase thresholds, fare limits, blocked and preferred carriers, bypass workflows, negotiated-fare enforcement.
  • A document verification pipeline — passport regex per nationality, 6-month validity windows, APIS requirements by country, visa rules, pre-check-in readiness scoring.
  • A loyalty accrual calculator — class and status multipliers, OneWorld / SkyTeam / Star Alliance partner tables, mile conversion.
  • A multi-supplier search aggregator — parallel queries across GDS + NDC + LCC + aggregator adapters, source attribution per offer, per-adapter timeouts with partial-result handling, circuit-breaker-aware channel selection.

Infrastructure to extend

  • A plugin system — register third-party agents at runtime via PluginManagerAgent, semver validation, capability discovery.
  • A CLI for operations — list agents by stage (auto-discovered from source metadata), dry-run pipeline validation against any contracted agent, list adapters with health status, search / price / book from the terminal.
  • A reference OTA to fork — Fastify server, plain HTML/JS frontend, Duffel-or-mock adapter selection, multi-adapter search mode, complete booking-to-ticket flow in examples/ota/.

Every component is built from the same 75 typed agents and 6 supplier adapters — pick the ones you need.

Wiki Contents

Page What It Covers
Getting Started Clone, install, configure, run your first search
Architecture How agents, pipeline validator, capability registry, and adapters fit together
Agents All 75 agents across 12 operational stages
Adapters 6 supplier adapters: Amadeus, Sabre, Navitaire, TripPro, Duffel, HAIP
Pipeline Contract The AgentContract system — schemas, validators, confidence scoring, the six gates
Reference OTA The fork-and-go OTA example application
CLI Command-line interface for searching, booking, and inspecting agents
Offers and Orders AIDM 24.1 order operations coexisting with GDS PNR

npm scope

All 15 @otaip/* packages are published to npm:

npm install @otaip/core @otaip/agents-booking @otaip/connect @otaip/adapter-duffel @otaip/cli

Other packages: @otaip/agents-reference, @otaip/agents-search, @otaip/agents-pricing, @otaip/agents-ticketing, @otaip/agents-exchange, @otaip/agents-settlement, @otaip/agents-reconciliation, @otaip/agents-lodging, @otaip/agents-tmc, @otaip/agents-platform.

Adapter Coverage

Adapter Type Channel Auth Key Capabilities Tests
Amadeus GDS REST (Self-Service) OAuth2 Search, Price, Book, Status 83
Sabre GDS REST (BFM v5) OAuth2 ATK Search, Price, Book, Cancel, Status 101
Navitaire LCC REST (dotREZ v4.7) JWT Search, Price, Book, Ticket, Cancel, ONE Order certified 109
TripPro/Mondee Aggregator REST+SOAP (HTTPS) Dual static tokens Search, Price, Book, Cancel, Post-booking 73
Duffel NDC REST API token Search, Price, Book, Cancel, Ticket 32
HAIP Hospitality REST Bearer (empty in v1.0.0) Search, Book, Modify, Cancel 58

Quick Start

git clone https://github.com/telivity-otaip/otaip.git
cd otaip
pnpm install --frozen-lockfile
pnpm run data:download       # one-time: airport reference data
pnpm test                    # 3,092 tests
pnpm build                   # 16 packages

See Getting Started for the full walkthrough.

Tech Stack

  • Language: TypeScript (strict: true, plus noUncheckedIndexedAccess, noImplicitOverride, noPropertyAccessFromIndexSignature)
  • Runtime: Node.js >= 24.14.1
  • Package manager: pnpm (monorepo with 16 workspace packages; 15 published to npm)
  • Test framework: Vitest (3,092 tests)
  • Build: tsup (ESM + DTS)
  • Schema: Zod 4 for runtime validation and JSON Schema generation

Links

Clone this wiki locally