-
Notifications
You must be signed in to change notification settings - Fork 8
Home
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.
- 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 viaBookingReference. 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 assistant —
AgentLoopplus 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 fromAgentContract.
- 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 (
OPEN→USED), deferred revenue calculation, interline settlement (SIS proration), multi-dimensional financial reporting, decimal-safe currency arithmetic viadecimal.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 platform —
EventStorewith 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.
-
A fare intelligence engine — ATPCO Categories 1–20 parsing, branded-fare shopping, fare construction (NUC × ROE with
DomainInputRequiredwhen ROE is missing, EMS mileage surcharge formula, HIP/BHC/CTM checks gated on intermediate-point fare lookup data),OfferEvaluatorAgentwith 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.
-
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.
| 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 |
All 15 @otaip/* packages are published to npm:
npm install @otaip/core @otaip/agents-booking @otaip/connect @otaip/adapter-duffel @otaip/cliOther 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 | 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 |
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 packagesSee Getting Started for the full walkthrough.
-
Language: TypeScript (
strict: true, plusnoUncheckedIndexedAccess,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
- GitHub repository
- Telivity — commercial layer built on OTAIP