Hotel-Agents.ai · KC Hotel San José · 27 September 2026

Closing the 18 asks on Xiomara's list

Xiomara sent 18 capabilities she expects from Aira, plus one condition: everything must show its impact in numbers. This is the order we build them in, what each stage needs from KC, and the number Xiomara will see when a stage is done.

Audited against the code live on 27 Sept One stage per work session Shipped to KC's console the same way every time: pull request → production → approve

Where the 18 asks stand today

2done: knowledge base, open integrations
10partly built, missing the part KC named
6not built: inventory, reviews, forecast, reconciliation, corporate, impact metrics

Metrics first. Stage 1 is the impact dashboard, because every later stage is judged on a number it shows.

KC decides when Aira acts alone. Suggestions-only stays the default. The Auto-send switch is theirs, per thread and per feature.

Nothing changes on KC's live account unless KC asks. Each stage ships as a feature they turn on in their console.

Cost stated before each stage starts. Sizes below are work sessions, not promises of dates.

The order

1Impact dashboard: the numbers Xiomara asked forM · 2–3 sessions
2Unhappy-guest detection and emergency protocolsM · 2 sessions
3Reviews and reputationL · 4 sessions
4Upselling by guest profile, direct bookings, paymentsL · 5 sessions
5Housekeeping priority and maintenance upgradesM · 3 sessions
6CRM, preferences and return campaignsM · 2 sessions
7Occupancy forecast and deeper revenue managementL · 4 sessions
8Back office: reconciliation, inventory, corporate accountsXL · 8+ sessions
S one session
M two or three
L four to six
XL eight or more, split further

Stage 1 · Impact dashboard

M · 2–3 sessions · no dependency
18 Impact metrics11 Management dashboard
Exists
Revenue report with occupancy, ADR, RevPAR, direct vs OTA and estimated OTA commission. Every conversation, escalation, task and offer is already stored with timestamps.
We build
  • One management screen: occupancy, ADR, RevPAR, revenue, direct vs OTA, open incidents, and Aira's own numbers.
  • Aira's numbers: share of guest questions resolved without a person, median first-reply time, escalations per week, upsell revenue accepted, incidents closed before check-out, hours saved (messages handled × a labour rate KC sets).
  • Weekly email of the same numbers to management, in Spanish.
Done when: Xiomara opens one screen and reads what Aira produced or saved this week, in USD and hours.

Stage 2 · Unhappy-guest detection and emergency protocols

M · 2 sessions · no dependency
6 Guest recovery16 Safety and emergencies
Exists
Aira raises a guest-emergency alert and hands a thread to a person when the guest asks for one. On-call staff get alerted. The shift report lists escalations.
We build
  • Annoyance detection on every guest message in any language: complaint words, repeated asks, threats to review. Flags the thread and alerts a person while the guest is still in the hotel.
  • Protocol table in Settings: situation → who gets it (reception, security, maintenance, management) → how (console alert, WhatsApp, call) → time limit. Aira follows the table instead of a fixed rule.
  • Recovery follow-up: after the person closes the case, Aira checks in with the guest once.
Done when: the dashboard shows incidents detected, minutes to a human, and how many were closed before check-out.

Stage 3 · Reviews and reputation

L · 4 sessions
5 Reputation and reviews
Exists
The post-stay automated message can ask a satisfied guest for a review. Booking, Expedia, Agoda and Despegar already reach us through KC's Channex account.
We build
  • Review feed: Google Business Profile plus the OTA reviews Channex exposes, in one Reviews tab.
  • Negative-review alert to management within minutes, with the guest's stay and conversation attached.
  • Drafted reply in the guest's language, sent only after a person approves. Auto mode is KC's switch, as with messages.
  • Review request goes only to guests whose stay had no open incident.
Needs from KC
Google Business Profile access for KC Hotel San José, and consent to turn on Channex's Reviews feature on their account.
Done when: the dashboard shows average rating per platform by month, reviews answered, and review requests sent vs reviews received.

Stage 4 · Upselling by profile, direct bookings, payments

L · 5 sessions
1 Smart upselling8 Direct bookings
Exists
Offers and automated messages by trigger. Booking engine, availability quote and hold-with-payment-link are in the code but switched off. Folio and the Tilopay payment driver are merged, untested against a real Tilopay account.
We build
  • Offer rules by profile: room type booked, party size, length of stay, channel, weekday, repeat guest. Upgrades, breakfast, late check-out, transport, tours, romantic setup, spa. KC writes the catalogue and prices.
  • Payment through Tilopay for upsells and deposits, with a link the guest pays on their phone.
  • Direct booking on: Aira quotes dates and prices from KC's own rates, holds the room, sends the deposit link, confirms.
Needs from KC
Tilopay credentials (API user, password, key) and the upsell catalogue with prices. Without Tilopay, upsells can be offered and recorded but not charged.
Done when: the dashboard shows upsell revenue accepted and paid, and direct bookings closed by Aira, in USD per month.

Stage 5 · Housekeeping priority and maintenance upgrades

M · 3 sessions
3 Smart housekeeping2 Maintenance and reports
Exists
Room board with clean/dirty status and cleaner. Maintenance tasks with report photo, proof photo, assignee and a scheduler. Staff app on the phone. Audio transcription already runs for guest voice notes.
We build
  • Housekeeping queue ordered by today's check-outs, arrivals with early check-in, guests who asked for cleaning, then stay-overs. Time per room recorded from start to done.
  • Voice-note reports: staff or guest sends audio, Aira transcribes, opens the task, assigns by department.
  • Time limits per priority and history per room and per equipment (air conditioner, boiler, lock).
Needs from KC
Nothing to start. Real room status from their PMS still waits on the SiHoteles report sample; until then reception confirms the room at check-in.
Done when: the dashboard shows rooms ready before the guest arrives, average cleaning time, and maintenance tasks closed within their limit.

Stage 6 · CRM, preferences and return campaigns

M · 2 sessions
7 CRM and loyalty15 Multilingual
Exists
Guest records with stay history. Returning guests are recognised by identity. Automated messages by lifecycle trigger. Spanish, English, French and Greek in text with context kept per conversation.
We build
  • Preferences and important dates on the guest card, filled by Aira from the conversation (pillow, floor, birthday, anniversary) and by staff.
  • Return campaigns: a message N months after the stay, on the guest's important date, or when KC has low occupancy ahead, with a direct-booking link.
  • Voice IDs for Spanish (Latin American), French and Greek set in production. Five minutes of configuration.
Done when: the dashboard shows repeat-guest share and bookings that came from a campaign.

Stage 7 · Occupancy forecast and deeper revenue management

L · 4 sessions
10 Forecast9 Advanced revenue management
Exists
Price recommendations from occupancy, booking pace, lead time, day of week, season and a market factor, with a rate ladder across room types. KC's last six months of bookings are already in our database.
We build
  • Weekly and monthly forecast of occupancy and revenue for the next 90 days from KC's own pace and history, with a confidence band.
  • Cancellation rate and lead-time history per channel as inputs to the recommendation.
  • San José events calendar (conferences, holidays, concerts) as a demand input.
Decision
Competitor rates need a paid rate-shopper feed. Not in this plan until the subscription decision is taken.
Done when: the dashboard shows forecast vs actual for the past four weeks, and revenue from accepted price recommendations.

Stage 8 · Back office

XL · 8+ sessions, split in three
12 Billing reconciliation4 Inventory and purchasing13 Groups and corporate17 Integrations
Exists
The integration layer is already open: six OTA connectors, two PMS connectors, Channex, a payment driver and the booking engine share one driver pattern. Nothing yet for accounting, point of sale or locks.
We build
  • 8a Reconciliation first (money): match each booking to its charge, OTA commission, invoice and bank deposit; list the differences. Needs KC's bank statement export and OTA payout reports.
  • 8b Corporate accounts and groups: company profiles, negotiated rates, group blocks, receivables per company.
  • 8c Inventory and purchasing: amenities, linen, cleaning, minibar, food, with minimums and reorder suggestions. Decide first whether KC already runs this in another system; if so, connect it instead of rebuilding it.
Decision
8b and 8c are new products, not gaps in Aira. Confirm with KC that they want Aira to own them before building.
Done when: the dashboard shows money differences found per month and days outstanding per corporate account.
Resumen para Xiomara

Qué hay hoy y qué sigue

Hoy en KC: Aira recibe los mensajes de Booking, Expedia, Agoda y Despegar con nombre y teléfono del huésped, sugiere respuestas que recepción aprueba, conoce las políticas y servicios del hotel, gestiona tareas de mantenimiento con foto, y las 60 habitaciones tienen su número real de puerta.

Las próximas tres etapas:

Lo que necesitamos de KC para avanzar: acceso al perfil de Google Business del hotel, credenciales de Tilopay, el catálogo de upselling con precios, y un ejemplo del reporte de SiHoteles.

Cada etapa se activa desde la consola de KC. Aira sugiere; KC decide cuándo actúa sola.