🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

Amadeus to WhatsApp, hotel rate moves explained

Lisa Granqvist Partner Workflow Automation Expert

Your comp set moves, your pickup shifts, and suddenly you’re staring at three tabs, two spreadsheets, and a “why did this happen?” message from leadership. The worst part is not the rate change. It’s the scramble to explain it.

This hits Revenue Managers first, but GMs and Sales leads feel it fast too. With Amadeus WhatsApp alerts, you get decision-ready briefs in WhatsApp, plus a way to ask follow-up questions without opening a dashboard.

Below, you’ll see how the workflow watches competitor rates, checks event context, writes an executive summary, and then turns WhatsApp into your “on-demand analyst” for pricing calls.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: Amadeus to WhatsApp, hotel rate moves explained

The Problem: Competitor moves show up late (and without context)

Rate shopping sounds simple until you do it every day. You check Amadeus, compare a handful of hotels, note which dates moved, and then try to figure out if it’s real demand or just noise. Meanwhile, the market doesn’t wait. A concert announcement, a convention calendar update, or one aggressive competitor can reshape your next 30 nights before your morning coffee is done. And if you miss the move, you’re reacting, not pricing.

It adds up fast. Here’s where the friction usually turns into real cost.

  • Manual rate checks eat about 1–2 hours a day once you include notes, screenshots, and “sanity checks.”
  • You see the price change, but not the reason, so your pricing call becomes guesswork and debate.
  • Spreadsheets drift, which means your “latest” snapshot often isn’t actually the latest.
  • Leadership wants an executive summary, and you end up rewriting the same explanation over and over.

The Solution: Hourly market checks that brief you in WhatsApp

This workflow runs on a schedule and pulls hotel offers from Amadeus for your hotel and your competitor set across a forward-looking window (commonly 30 days). It turns that raw pricing into a clean “current snapshot,” then compares it against the prior snapshot stored in your database, so you’re not eyeballing changes manually. When it detects a significant competitor move, it doesn’t stop at the number. It also scrapes your local event source (like a convention center calendar), extracts event metadata, and merges that context into the analysis. Finally, an AI Agent reviews the gaps, competitor behavior, and event signals, then writes a clear executive summary and sends it straight to WhatsApp.

There’s a second branch too. When someone replies in WhatsApp with a question, the bot retrieves saved summaries, historical rates, and event schedules, then answers like an analyst who remembers what happened last week.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you track 1 property plus 6 competitors across the next 30 nights. Manually, even a “quick” check is maybe 10 minutes per hotel once you log changes and write a recap, which is about 70 minutes a day. With this workflow, you spend about 5 minutes setting the comp set once, then you only get pinged when a move crosses your threshold; the WhatsApp brief arrives automatically, and follow-up questions happen in the same chat. Most teams get an hour back on quiet days, and much more when the market is volatile.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Amadeus to fetch hotel offers and rates.
  • WhatsApp to deliver briefs and handle Q&A.
  • OpenAI API key (get it from the OpenAI dashboard).

Skill level: Intermediate. You’ll connect accounts, set parameters, and lightly adjust an event-scraping source.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

A scheduled market check kicks it off. n8n runs hourly (or a few times per day) and uses Amadeus authentication to pull rates for your hotel and your competitor list across a forward window like 30 days.

Snapshots are generated and compared. The workflow normalizes the Amadeus response, builds a “current snapshot,” retrieves the last saved snapshot from storage, then calculates rate changes and the size of the gap for the exact dates that matter.

Only meaningful moves turn into alerts. An “is this significant?” check filters noise based on your sensitivity settings. When it qualifies, the workflow merges competitor rates with your own rates, then pulls event pages and extracts event metadata so the alert includes plausible demand drivers.

WhatsApp becomes the briefing channel (and the analyst desk). An AI Agent writes a concise executive summary and dispatches it via WhatsApp. Later, if someone replies with a question, the WhatsApp trigger retrieves stored history and summaries, and the assistant responds with context instead of generic advice.

You can easily modify the monitoring window (like 14 vs 30 days) and the significance threshold to match your market and your tolerance for alerts. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Schedule Trigger

This workflow runs scheduled market checks multiple times per day to capture rate changes.

  1. Add and open Scheduled Market Check.
  2. Set the schedule cronExpression rules to 0 0 9 * * *, 0 0 15 * * *, and 0 0 21 * * *.
  3. Confirm that Scheduled Market Check outputs to Setup Parameters.
Use multiple cron expressions to capture morning, afternoon, and evening pricing windows without creating multiple schedules.

Step 2: Configure the WhatsApp Trigger

This path lets stakeholders ask questions via WhatsApp and receive analysis summaries.

  1. Add and open WhatsApp Incoming Trigger.
  2. Credential Required: Connect your whatsAppTriggerApi credentials.
  3. Set Updates to include messages.
  4. Ensure WhatsApp Incoming Trigger flows to Filter Incoming Texts.
⚠️ Common Pitfall: The Filter Incoming Texts condition compares the sender ID to [YOUR_ID]. Replace this placeholder with your WhatsApp sender ID.

Step 3: Connect Amadeus and Build the 30-Night Windows

This section configures the parameters, authenticates to Amadeus, and generates hotel/date windows used for pricing checks.

  1. Open Setup Parameters and set: currency to CAD, adults to 2, roomQuantity to 1, thresholdPct to 0.1, and daysAhead to 30.
  2. Set competitors to [{ "name": "VANCOUVER MARRIOTT PINNACLE", "hotelId": "MCYVRDTM" }] and ourHotel to { "name": "WESTIN BAYSHORE VANCOUVER", "hotelId": "WIYVRBAY" }.
  3. Open Amadeus Auth Token and provide client_id and client_secret in the form body for the Amadeus API.
  4. Confirm Amadeus Auth Token outputs to Create 30-Night Windows.
  5. Verify Create 30-Night Windows uses $('Setup Parameters').first().json and $('Amadeus Auth Token').first().json.access_token as in the code.

Step 4: Retrieve and Normalize Hotel Offers

This path retrieves offers from Amadeus, normalizes the results, and builds the current snapshot.

  1. Open Retrieve Hotel Offers and confirm query values use expressions like {{$json.checkInDate}}, {{$json.checkOutDate}}, and {{$json.currency}}.
  2. Ensure the Authorization header is Bearer {{$json.access_token}}.
  3. Verify Create 30-Night Windows outputs to both Merge 30-Day Rates and Retrieve Hotel Offers in parallel.
  4. Confirm Merge 30-Day Rates flows into Normalize Amadeus Data, then into Generate Current Snapshot.
The workflow uses multiple code nodes for normalization and mapping. Keep the provided JavaScript intact to preserve schema consistency.

Step 5: Manage Rate Snapshots and Significant Changes

These nodes compare current and prior rates, calculate changes, and decide when to alert.

  1. Check that Generate Current Snapshot outputs to both Merge New vs Prior Rates and Fetch Prior Rates in parallel.
  2. Confirm Fetch Prior Rates filters by {{$json.rateKey}} and feeds Previous Snapshot Map.
  3. Verify Merge New vs Prior Rates outputs to Update Latest Rates, Calculate Rate Change, and Insert Rate History in parallel.
  4. Open Check Significant Competitor and confirm conditions use expressions for {{$json.hotelRole}}, {{$json.isSignificant}}, {{$json.prevExists}}, and {{$json.outcome}}.

Step 6: Merge Competitor, Our Rates, and Event Context

This step merges competitor changes with your hotel’s rates and enriches the alert with VCC event context.

  1. Confirm Check Significant Competitor outputs to both Fetch Our Hotel Rates and Merge Competitor & Our Rates in parallel.
  2. In Fetch Our Hotel Rates, verify the rateKey filter uses {{$node["Setup Parameters"].json.ourHotel.hotelId}}|{{$json.checkInDate}}.
  3. Ensure Label Our Hotel Fields maps fields like {{$json.bestTotal}} to ourHotelBestTotal.
  4. Verify Merge Competitor & Our Rates outputs to both Assemble VCC URLs and Merge Rates with Events in parallel.
  5. Open Get VCC Month HTML and ensure the URL uses {{$json.vccUrl}}, then flow into Extract Event Metadata and Parse Event Items.
⚠️ Common Pitfall: The HTML selectors in Extract Event Metadata are specific to the VCC site. Changes to the website may require updating the CSS selectors.

Step 7: Set Up AI Analysis and Q&A

AI nodes generate structured analysis and allow follow-up questions over WhatsApp.

  1. Open AI Analyst Agent and keep the input expression {{ "Analyze this JSON bundle and return ONLY valid JSON in the required schema.\n\nINPUT:\n" + JSON.stringify($json) }}.
  2. Credential Required: Connect your openAiApi credentials in OpenAI Chat Model A (language model for AI Analyst Agent).
  3. Ensure Structured Output Decoder is attached as the output parser for AI Analyst Agent; add credentials to OpenAI Chat Model A, not the parser.
  4. Open AI Assistant Q&A and keep the input {{ $('Normalize WhatsApp Text').item.json.chatInput }}.
  5. Credential Required: Connect your openAiApi credentials in OpenAI Chat Model B (language model for AI Assistant Q&A).
  6. Confirm Conversation Memory and Retrieve Rate History are connected to AI Assistant Q&A; add credentials on the parent model node, not these tools.

Step 8: Configure Output and Alerts

This step sends alerts and stores the executive summary for future Q&A.

  1. Ensure AI Analyst Agent outputs to both Dispatch WhatsApp Alert and Merge Summary and Alert in parallel.
  2. Credential Required: Connect your whatsAppApi credentials in Dispatch WhatsApp Alert and Send Q&A Response.
  3. In Dispatch WhatsApp Alert, set textBody to {{ $json.output.executiveSummary }}, and replace [YOUR_ID] / [YOUR_PHONE].
  4. In Send Q&A Response, set textBody to {{ $json.output }} and replace [YOUR_ID] / [YOUR_PHONE].
  5. Check Upsert Price Alerts maps {{ $json.output.executiveSummary }} and {{ $json.vccEventsSummary }} into the Hotel_Price_Alert table.
This workflow includes multiple dataTable, code, and merge nodes; keep table schemas aligned with the mapped fields to avoid data mismatches.

Step 9: Test and Activate Your Workflow

Validate both the scheduled pricing run and the WhatsApp Q&A path before enabling automation.

  1. Manually execute Scheduled Market Check to trigger the full pricing intelligence chain.
  2. Confirm successful execution produces rows in Update Latest Rates and Insert Rate History, and that Dispatch WhatsApp Alert sends a message.
  3. Send a test WhatsApp message to the connected number and verify Send Q&A Response returns a reply from AI Assistant Q&A.
  4. When satisfied, toggle the workflow to Active for production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • Amadeus credentials can expire or need specific permissions. If things break, check your Amadeus app/client credentials and token response first.
  • If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
  • WhatsApp message templates and sender permissions can block delivery. If alerts stop arriving, check your WhatsApp Business approval status and recent message logs inside n8n.

Frequently Asked Questions

How long does it take to set up this Amadeus WhatsApp alerts automation?

About 60–90 minutes if you already have credentials and a WhatsApp sender set up.

Do I need coding skills to automate Amadeus WhatsApp alerts?

No. You’ll mostly connect accounts and edit a few config values. The only “techy” part is adjusting the event source scraper, and you can copy the existing pattern.

Is n8n free to use for this Amadeus WhatsApp alerts workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in OpenAI API usage (often a few cents per day for brief summaries) and any WhatsApp messaging fees.

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

Can I customize this Amadeus WhatsApp alerts workflow for a different alert threshold and a shorter window?

Yes, and that’s one of the best tweaks to make early. Update the Config node to change the daysAhead window (like 14 instead of 30), then adjust the Significant Competitor Change logic so alerts only fire when moves are meaningful for your market. You can also swap the event scraping nodes (the VCC fetch and parse parts) to point at your local events site, a tourism board calendar, or even an internal Google Sheet of events.

Why is my Amadeus connection failing in this workflow?

Most of the time it’s an expired or mis-scoped token from the Amadeus Auth Token request. Regenerate your Amadeus credentials, confirm the token call succeeds in n8n, then re-run the Retrieve Hotel Offers request. If it still fails, check rate limits and confirm your hotel IDs match what Amadeus expects. Finally, make sure your server clock is correct, because OAuth-style token validation can be picky about time drift.

How many rate checks can this Amadeus WhatsApp alerts automation handle?

A lot, as long as your Amadeus limits and your hosting can keep up.

Is this Amadeus WhatsApp alerts automation better than using Zapier or Make?

Often, yes, frankly. This workflow does more than pass data from A to B: it builds snapshots, compares history, merges multiple sources (rates plus events), and then runs two AI agents (one for proactive summaries, one for Q&A). n8n is a better fit for that kind of branching logic and “store + retrieve + reason” pattern, especially if you self-host and run hourly checks without worrying about per-task costs. Zapier or Make can still work if you only need a basic alert on a single condition and you don’t care about history. If you’re unsure, Talk to an automation expert and describe your comp set size and alert cadence.

You get the move, the context, and a recommendation in the same place your team already communicates. Set it up once, then let the market explain itself.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal