Quotin

AI Quoting and Booking Platform for Travel Agencies and DMCs

Client Snapshot

  • Industry: Travel (agencies and DMCs)
  • Client: Quotin
  • Headquarters: Monterrey, Mexico
  • Timeline: October 2025 to launch in September 2026
  • Team: 1 AI Architect · 2 Backend Engineers · 1 Frontend Engineer · 1 DevOps Engineer · 1 Project Manager
  • Services: AI Solutions · Platform Development · Travel Integrations · Cloud/DevOps
  • Stack: Claude (Anthropic) · Ruby on Rails 8 · Python/FastAPI · PostgreSQL + pgvector · React · Next.js · Sabre GDS · Amadeus · Terraform · AWS
  • Traction: About 320 quotes from 6 active agencies in the 90 days to October 2026


The Problem

Every quote meant copying rates from supplier PDFs and spreadsheets, checking availability in another system and converting currencies by hand.

The hard part wasn't finding a hotel. It was turning scattered supplier data into a quote a client says yes to.

  • Supplier data in every format: rate sheets and brochures in PDF, Excel, Word and images, no two alike.
  • Inventory in separate systems: hotels and flights in Sabre, tours and activities in Amadeus, local suppliers in their own files.
  • Duplicate products: the same hotel or tour comes from several suppliers under different names and prices.
  • Multi-currency selling: clients pay in MXN, USD or EUR, and exchange rates move every day.
  • The quote is the sales pitch: it has to look like the agency, not like a spreadsheet.

‍

The Solution

We treated Quotin as a data problem first: get every supplier's catalog into one clean structure, then let AI and live inventory build the quote on top.

AI-First Architecture

  • Tiered model routing: Claude Haiku 4.5 runs extraction and tool calls; Claude Sonnet 4.6 writes the final answer. Cost is tracked per model.
  • Vision extraction: Claude reads rate sheets and brochures straight from PDFs and images, so nobody retypes prices.
  • Ingestion pipeline: infers each file's structure, extracts with the LLM, maps it to a proprietary product ontology, removes duplicates and keeps one canonical product with its variations.
  • Semantic search: pgvector over the catalog with OpenAI embeddings, so agents search the way they talk.
  • AI agent with tool calling: a conversational itinerary assistant and an AI itinerary planner work on top of the catalog and live inventory.

Platform Development

  • Core API: Rails 8 in API mode with role-based access for agency admins, agents, operators and clients, documented in OpenAPI.
  • Separate AI service: Python and FastAPI for AI and ingestion, deployed and scaled on its own.
  • Two interfaces: a React dashboard for agents and operators, and a Next.js admin panel for the catalog.

Travel Integrations

  • Sabre GDS: hotel search, availability, rates, media, booking, status checks and cancellation, plus flights and Virtuoso amenities.
  • Amadeus: tours and activities with live pricing.
  • Pluggable OTA adapters: a registry ready for Viator and GetYourGuide.
  • Quote delivery: live exchange rates with a stored fallback, branded PDF quotes and itineraries, transactional email.

‍

AI Core

Rate sheet reader

Claude vision reads supplier PDFs and images and turns them into structured products, ready to quote.


Itinerary assistant

A conversational agent with tool calling that plans itineraries from the catalog and live inventory.


Product ontology

One canonical record per product, with anchors and variations, however many suppliers sell it.

______
‍

Infrastructure

Infrastructure as code

Terraform modules, one AWS account per environment, and keyless OIDC deploys from Bitbucket.


Live travel connections

Sabre GDS and Amadeus behind one adapter layer, ready for new OTAs.

______
‍

Product

Branded quotes

Quotes and itineraries in the agency's brand, in MXN, USD or EUR.

‍

Results

  • Supplier catalogs, structured: rate sheets become searchable, quotable products without retyping.
  • Live inventory in every quote: Sabre hotels and Amadeus tours priced at the moment of quoting.
  • Quotes that sell: branded PDF quotes and itineraries in three currencies.
  • AI cost under control: simple work goes to the smaller model, and spend is tracked per model.
  • Built to grow: new OTAs plug in as adapters; Viator and GetYourGuide are ready to connect.
  • In use: about 320 quotes from 6 agencies in the 90 days to October 2026.

‍

KPIs

2 Claude models — Haiku for extraction and tool calls, Sonnet for the final answer, with cost tracked per model

~320 quotes — Generated by 6 agencies in the 90 days to October 2026

2 live inventories — Sabre GDS for hotels and flights, Amadeus for tours and activities

‍

Tech Stack

  • AI: Claude Sonnet 4.6 and Claude Haiku 4.5 via OpenRouter, Claude vision, OpenAI text-embedding-3-small, pgvector
  • Backend: Ruby 3.3, Rails 8 (API), PostgreSQL 16, Solid Queue; Python 3.12, FastAPI, SQLAlchemy 2
  • Frontend: React 18, TypeScript, Vite; Next.js 14 admin with Tailwind CSS and Radix UI
  • Integrations: Sabre GDS, Amadeus, Google Places, OpenStreetMap, PDFMonkey, SendGrid
  • Cloud: AWS (EC2, RDS, S3, CloudFront, ACM), one account per environment
  • DevOps: Terraform, Docker, Bitbucket Pipelines with keyless OIDC to AWS, SSM deploys, Sentry
  • Quality: RSpec, Vitest, Testing Library, Playwright, Brakeman, RuboCop

‍

Team & Delivery Model

A six-person senior squad:

AI Architect / Tech Lead

Model routing, ingestion pipeline and overall AI system design.


Backend Engineers (×2)

Rails API, travel integrations and the FastAPI AI service.


Frontend Engineer

Agent dashboard and admin panel.


DevOps Engineer

Terraform, AWS accounts, CI/CD and monitoring.


Project Manager

Scope, milestones and client communication.


Operating Model

Agile, milestone-driven delivery with iterative releases.

‍

Claude Partner Network · Anthropic Services Partner Directory · Claude Certified Architect. Built on Claude by a Claude Partner Network team.

Border

I'm impressed by Axented's accompaniment throughout the process.

Mohamed Ghouali, COO & Founder, Quotin
Border
Ready when you are

Tell us which process you'd like to fix.

Thirty minutes with a founder or a senior engineer, not a sales rep, booked straight into their calendar in your time zone. No pitch deck: if none of our services fit, we'll say so.

WhatsApp is answered Monterrey hours, Monday to Friday, in Spanish or English, usually within the hour.
Or write to bernardo@axented.com.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.