Blog/Use Cases

WhatsApp API for Hotels: Automate Guest Communication and Bookings

Use WhatsApp API to automate hotel guest communication — booking confirmations, check-in instructions, concierge requests, and checkout reminders. Rapiwa API ($5/month) for hospitality.

by Julfiker
WhatsApp API for Hotels: Automate Guest Communication and Bookings

WhatsApp API for hotels lets properties automatically send booking confirmations, pre-arrival instructions, check-in details, concierge messages, and checkout reminders to guests via WhatsApp. Using Rapiwa API ($5/month, no per-message fees), hotels increase guest satisfaction scores, reduce front desk workload by 30–40%, and capture more direct bookings through WhatsApp-based pre-arrival upsells.

Why Hotels Are Moving to WhatsApp

Hotel guests increasingly expect communication via messaging apps — not emails that get buried or phone calls that interrupt. WhatsApp is the dominant messaging platform in most of hotels' key source markets (South Asia, Southeast Asia, Middle East, Europe).

  • 98% message open rate vs 20% for email booking confirmations
  • Guests reply on WhatsApp — room upgrade requests, early check-in queries, and special requests come back via the same channel
  • No app download needed — guests already have WhatsApp
  • Cost: $5/month flat (Rapiwa) — no per-message fees

Top 7 WhatsApp Automation Use Cases for Hotels

1. Booking Confirmation

The problem: Booking confirmation emails go to spam, causing "I didn't get my confirmation" calls.

The solution: WhatsApp booking confirmation within 30 seconds of reservation.

curl -X POST https://app.rapiwa.com/send-message \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "number": "8801234567890",
    "message": "Booking Confirmed! 🏨\n\nHi Sarah,\n\nYour reservation at The Grand Hotel is confirmed:\n\n🔖 Booking Ref: BK-2026-4521\n🛏️ Room: Superior Double, Ocean View\n📅 Check-in: July 15, 2026\n📅 Check-out: July 18, 2026\n👥 Guests: 2\n💰 Total: $450\n\nNeed anything before your arrival? Just reply here!\n\nWe look forward to welcoming you. 🌟"
  }'

Expected response:

{
  "status": "success",
  "messageId": "msg_hotel_abc123",
  "timestamp": "2026-07-10T10:30:00Z"
}

2. Pre-Arrival Information (48 Hours Before)

The problem: Guests arrive unprepared — not knowing check-in time, parking, or what to bring.

The solution: WhatsApp pre-arrival guide 48 hours before check-in.

import requests

def send_pre_arrival_message(guest: dict, api_key: str) -> dict:
    message = (
        f"See you in 2 days, {guest['name']}! 🏨\n\n"
        f"Here's everything you need for your stay at {guest['hotel_name']}:\n\n"
        f"📅 Check-in: {guest['checkin_date']} from 3:00 PM\n"
        f"🔑 Early check-in: Available for $25 (reply EARLY to request)\n"
        f"🅿️ Parking: Free valet parking at the main entrance\n"
        f"📍 Address: {guest['hotel_address']}\n"
        f"🗺️ Directions: {guest['maps_url']}\n\n"
        f"Special requests? Reply here and we'll arrange it!\n\n"
        f"See you soon! — {guest['hotel_name']} Team"
    )
    
    return requests.post(
        'https://app.rapiwa.com/send-message',
        headers={'Authorization': f'Bearer {api_key}'},
        json={'number': guest['phone'], 'message': message}
    ).json()

3. Check-In Instructions (Morning of Arrival)

The problem: Guests ask the same check-in questions repeatedly — "what time?", "where's parking?", "do I need ID?"

The solution: WhatsApp check-in instructions sent the morning of arrival.

"Good morning, Sarah! 🌅 Check-in day is here!

Your room will be ready from 3:00 PM. Here's how to find us:

📍 The Grand Hotel, 12 Sea View Drive
🗺️ Google Maps: https://maps.google.com/...
🅿️ Valet parking at the entrance — hand your keys to our team

Documents needed at check-in:
📋 Your booking reference: BK-2026-4521
🪪 A valid government-issued ID

Can't make it by 9 PM? Let us know and we'll arrange late check-in.

We can't wait to welcome you! 🎉"

4. In-Stay Concierge Requests

The problem: Guests want to request room service, towels, or restaurant recommendations but don't want to call the front desk.

The solution: Open a WhatsApp concierge channel during the stay.

(Sent on Day 1 of the stay)
"Welcome to The Grand Hotel, Sarah! 🏨

Your room is ready — Room 412, 4th floor.

For anything during your stay, just message us here:
🍽️ Room service
🛎️ Extra towels, toiletries
📞 Concierge recommendations
🌅 Restaurant bookings
🚗 Taxi arrangements

We're available 24/7 — just send a message! 🙏"

Incoming webhook processing:

def handle_concierge_request(phone: str, message: str, guest_name: str) -> None:
    """Process incoming guest requests via webhook."""
    # Forward to hotel operations team
    notify_hotel_staff(
        channel='concierge',
        message=f"Guest {guest_name} ({phone}) requests: {message}"
    )
    
    # Send acknowledgment to guest
    requests.post(
        'https://app.rapiwa.com/send-message',
        headers={'Authorization': f'Bearer YOUR_API_KEY'},
        json={
            'number': phone,
            'message': f"Got it, {guest_name}! Our team will take care of it right away. 🙏"
        }
    )

5. Room Upgrade Offer (Day Before Check-In)

The problem: Hotels have empty upgraded rooms but don't offer them systematically to guests who might upgrade.

The solution: WhatsApp upgrade offer to selected guests the day before arrival.

"Hi Sarah! Exclusive offer just for you 🌟

We have a limited availability upgrade for your stay:

From: Superior Double, Ocean View
To: Deluxe Suite, Private Balcony + Ocean View

Upgrade fee: Only $75 for your entire 3-night stay (vs $150 at check-in)

Interested? Reply YES before 6:00 PM today and we'll upgrade your room!"

Revenue impact: Hotels typically achieve 20–35% upgrade conversion via WhatsApp vs 5–10% via email.

6. Checkout Reminder

The problem: Guests miss checkout time, causing room turnaround delays.

The solution: WhatsApp checkout reminder on the morning of departure.

"Good morning, Sarah! 🌅

Today is your checkout day (July 18, 2026).

Checkout time: 11:00 AM
Late checkout (12 PM): Available for $30 — reply LATE to add

Luggage storage: We can hold your luggage until 6 PM — reply STORAGE to arrange

Taxi to airport: We can arrange — reply TAXI for details

It's been a pleasure having you! 🙏
— The Grand Hotel Team"

7. Post-Stay Review Request

The problem: Only 5–10% of satisfied guests leave reviews without being asked.

The solution: WhatsApp review request 24 hours after checkout.

def send_post_stay_review_request(guest: dict, api_key: str) -> dict:
    message = (
        f"Hi {guest['name']}! 🏨\n\n"
        f"Thank you for staying at {guest['hotel_name']}! "
        f"We hope you had a wonderful stay.\n\n"
        f"Would you take 2 minutes to share your experience?\n\n"
        f"⭐ TripAdvisor: {guest['tripadvisor_url']}\n"
        f"⭐ Google: {guest['google_url']}\n\n"
        f"Your feedback means the world to us and helps future guests. 🙏\n\n"
        f"We hope to welcome you back soon!"
    )
    
    return requests.post(
        'https://app.rapiwa.com/send-message',
        headers={'Authorization': f'Bearer {api_key}'},
        json={'number': guest['phone'], 'message': message}
    ).json()

How to Set Up WhatsApp for Hotels with Rapiwa

Step 1: Create Your Rapiwa Account

Sign up at rapiwa.com — 3-day free trial, no credit card.

Step 2: Connect Your PMS (Property Management System)

Most PMS systems (Opera, Cloudbeds, Mews, Hotelogix) support webhooks or API exports. Use n8n to:

  1. Trigger on new reservation → send booking confirmation
  2. Trigger on check-in date approach → send pre-arrival info
  3. Trigger on checkout date → send departure reminder

Step 3: Create the Message Automation

import schedule

def run_hotel_whatsapp_automation():
    today_arrivals = get_guests_arriving_today()
    for guest in today_arrivals:
        send_checkin_instructions(guest, api_key='YOUR_API_KEY')
    
    departures_tomorrow = get_guests_departing_tomorrow()
    for guest in departures_tomorrow:
        send_checkout_reminder(guest, api_key='YOUR_API_KEY')
    
    pre_arrival_48h = get_guests_arriving_in_48_hours()
    for guest in pre_arrival_48h:
        send_pre_arrival_message(guest, api_key='YOUR_API_KEY')

schedule.every().day.at("08:00").do(run_hotel_whatsapp_automation)

Results You Can Expect

  • 30–40% reduction in front desk calls (pre-arrival information WhatsApp)
  • 20–35% upgrade conversion (WhatsApp upgrade offers vs 5–10% email)
  • 3–5x more reviews (WhatsApp review requests vs no outreach)
  • 95%+ open rate on booking confirmations (vs 20% email)

FAQ

Does Rapiwa work with international guest phone numbers? Yes. Rapiwa supports all international phone numbers in international format. Bangladesh guest: 8801234567890. UK guest: 447700900123.

Does Rapiwa charge per guest message? No. Rapiwa charges $5/month flat with no per-message fees. A hotel sending 500 messages/day (check-ins, check-outs, confirmations) pays $5/month total.

Can guests reply to WhatsApp messages and reach our team? Yes. Set up a Rapiwa webhook to receive incoming messages. Route them to a shared WhatsApp Business inbox or your team's Slack channel via n8n.

What PMS systems work with this setup? Any PMS with API/webhook support works: Cloudbeds, Mews, Opera PMS, Hotelogix, Hostaway (for vacation rentals), and more. n8n acts as middleware.

Is this suitable for small boutique hotels as well as large chains? Yes. At $5/month flat, even a 10-room boutique hotel can afford professional WhatsApp guest communication. The ROI from a single upgrade upsell covers months of Rapiwa fees.