Unlimited Automations Guide

The Contactless Checkin plan unlocks unlimited guest automations beyond the 3-automation limit of the Guest Messaging plan. Create custom scheduled jobs, event triggers, key management, and room automations.

Overview

Plan

Automations Available

Guest Messaging

3 pre-configured (Pre-Stay, In-Stay, Post-Stay)

Contactless Checkin

Unlimited custom automations + Triggers


What's Included with Unlimited Automations

Message Automations (Unlimited)

Create any number of scheduled message automations:

Capability

Description

Custom Audiences

Target guests by arrival, departure, mid-stay, or custom conditions

Flexible Timing

Schedule at any time of day

Multiple Channels

SMS, Email, WhatsApp

Custom Schedules

Daily, weekly, or specific days

Liquid Conditions

Advanced filtering with custom logic

Key Automations

Automate smart lock access code management:

Automation

Description

Issue Keys

Generate access codes on arrival

Send Keys

Deliver codes via SMS with room info

Revoke Keys

Deactivate codes on departure/cancellation

Room Automations

Schedule housekeeping tasks automatically:

Automation

Description

Daily Clean

Assign cleaning for stayovers

Departure Clean

Schedule checkout turnovers

Conditional Tasks

Different tasks based on stay length

Import Room Data

Sync status from PMS

Event Triggers

React instantly to guest lifecycle events:

Event

Example Action

Booking Confirmed

Send welcome message

Guest Checked In

Issue access keys

Guest Checked Out

Set room to dirty

Payment Received

Send confirmation

Pre-Checkin Complete

Welcome message with keys


Accessing Automation Settings

  1. Go to Automation (top navigation)

  2. Choose the automation type:

Tab

Purpose

Scheduled Jobs

Time-based automations

Triggers

Event-based automations


Creating Custom Scheduled Jobs

Step 1: Choose Automation Type

Go to Automation > Scheduled Jobs and select the tab:

Tab

Creates

Messages

Guest communication automations

Keys

Smart lock code automations

Rooms

Housekeeping task automations

Step 2: Click New Automation

Click New Scheduled Job to create a new automation.

Step 3: Configure the Automation

Field

Description

Name

Descriptive identifier

Audience

Which guests/rooms to target

Send Time

Time of day to execute (property timezone)

Check

Additional condition (optional)

Action

What happens when triggered

Status

Active or Inactive

Step 4: Save and Activate

  1. Click Create Scheduled Job

  2. Toggle Active to enable


Audience Conditions

Target specific guests based on their stay status:

Arrival-Based

Condition

Matches

Arriving Today

Guests with check-in today

Arriving Tomorrow

Guests with check-in tomorrow

Arriving in X Days

Guests arriving in specified days

Departure-Based

Condition

Matches

Departing Today

Guests with check-out today

Departing Tomorrow

Guests with check-out tomorrow

Departing within X Days

Guests leaving within specified days

Departed Yesterday

Guests who left yesterday

Departed X Days Ago

Guests who left specified days ago

In-Stay

Condition

Matches

Arrived Yesterday

First full day guests

In-House (Mid-Stay)

All currently staying guests


Custom Conditions with Liquid

Add advanced filtering using Liquid template logic.

How to Use

  1. Select Custom Condition from the Check dropdown

  2. Enter Liquid code that returns true or false

  3. Only guests matching true receive the automation

Available Variables

Variable

Type

Description

guest_stay.arrival_today

Boolean

Arriving today?

guest_stay.departure_today

Boolean

Departing today?

guest_stay.instay

Boolean

Currently in-house?

guest_stay.stay_day_number

Integer

Day of stay (0 = arrival)

guest_stay.nights

Integer

Total nights

guest_stay.payment_received

Boolean

Payment captured?

guest_stay.agreement_signed

Boolean

Agreement signed?

guest_stay.id_verified

Boolean

ID verified?

guest_stay.guest_type

String

Guest type/tier

guest_stay.booking_source

String

Booking channel

Example Conditions

VIP Guests Only:

{% if guest_stay.guest_type contains 'VIP' %}true{% else %}false{% endif %}

Long Stays (7+ nights):

{% assign nights = guest_stay.nights | plus: 0 %}
{% if nights >= 7 %}true{% else %}false{% endif %}

Direct Bookings Only:

{% if guest_stay.booking_source == 'Direct' %}true{% else %}false{% endif %}

Day 3 of Stay:

{% if guest_stay.stay_day_number == 3 %}true{% else %}false{% endif %}

Payment Received and Arriving Today:

{% if guest_stay.payment_received and guest_stay.arrival_today %}true{% else %}false{% endif %}

Message Automation Examples

Pre-Arrival Sequence

Create multiple touchpoints before arrival:

7 Days Before (for long-lead bookings):

Setting

Value

Name

Booking Confirmation

Audience

Arriving in 7 Days

Time

10:00 AM

Snippet

Post-Booking

2 Days Before:

Setting

Value

Name

Pre-Check-in Reminder

Audience

Arriving in 2 Days

Time

2:00 PM

Snippet

Pre-Checkin Request

Day Before:

Setting

Value

Name

Arrival Day Prep

Audience

Arriving Tomorrow

Time

4:00 PM

Snippet

Pre-Arrival with Guidebook

Mid-Stay Check-In

Setting

Value

Name

Day 2 Check-In

Audience

Arrived Yesterday

Time

10:00 AM

Check

Custom - Day 2 only

Snippet

Mid-Stay Satisfaction

Post-Departure Sequence

Day of Checkout:

Setting

Value

Name

Thank You

Audience

Departing Today

Time

2:00 PM

Snippet

Post-Checkout Thanks

Day After Checkout:

Setting

Value

Name

Review Request

Audience

Departed Yesterday

Time

10:00 AM

Snippet

Review Request


Key Automation Examples

Standard Key Flow

Issue Keys on Arrival Day:

Setting

Value

Name

Issue Arrival Keys

Audience

Arriving Today

Time

3:00 PM

Check

Payment Received

Action

Issue & Send Key

Revoke Keys on Checkout:

Setting

Value

Name

Revoke Departure Keys

Audience

Departing Today

Time

11:00 AM

Action

Revoke Key

Early Access Keys

For guests with early arrivals:

Setting

Value

Name

Early Access Keys

Audience

Arriving Today

Time

12:00 PM

Check

Custom - early arrival confirmed

Action

Issue & Send Key


Room Automation Examples

Daily Housekeeping

Stayover Clean:

Setting

Value

Name

Daily Clean

Audience

Mid-Stay Guests

Time

6:00 AM

Action

Set Cleaning Task: Clean

Every 3rd Day Clean (for extended stays):

Setting

Value

Name

Day 3 Deep Clean

Audience

Mid-Stay Guests

Time

6:00 AM

Check

Custom - guest_stay.stay_day_number % 3 == 0

Action

Set Cleaning Task: Deep Clean

Departure Turnovers

Setting

Value

Name

Checkout Turnover

Audience

Departing Today

Time

6:00 AM

Action

Set Default Cleaning Task


Event Triggers

Triggers fire immediately when guest events occur, unlike scheduled jobs that run at set times.

Creating a Trigger

  1. Go to Automation > Triggers

  2. Click New Trigger

  3. Configure:

Field

Description

Name

Descriptive identifier

Event

What triggers it

Condition

Filter (optional)

Action

What happens

Delay

Seconds to wait

Common Trigger Examples

Walk-in Key Issue (immediate key for same-day bookings):

Setting

Value

Event

Guest Booking Confirmed

Condition

Booking: Past Check-in Time

Action

Issue & Send Key

Delay

0

Post-Payment Confirmation:

Setting

Value

Event

Guest Payment Received

Condition

Guests Arriving Today

Action

Send Post-Checkin Snippet

Delay

300 (5 min)

Cancellation Key Revoke:

Setting

Value

Event

Booking Cancelled

Condition

In-Stay Guests

Action

Revoke Key

Delay

0

See Triggers for complete trigger documentation.


Combining Scheduled Jobs and Triggers

Use both automation types together for comprehensive coverage.

Example: Complete Check-in Flow

Scheduled Jobs:

  1. 2 days before: Send pre-check-in request

  2. Day before: Send reminder if incomplete

  3. Arrival morning: Final reminder

Triggers:

  1. On pre-check-in complete: Confirmation message

  2. On payment received: Issue access keys

  3. On PMS check-in: Welcome message

Example: Checkout and Turnover Flow

Triggers:

  1. On checkout: Set room to dirty, notify cleaner

Scheduled Jobs:

  1. Morning of checkout: Assign cleaning task

  2. After checkout: Thank you message

  3. Day after: Review request


Per-Stay vs Per-Guest Messaging

Control how messages are sent to guests with multiple reservations.

Per-Guest (Default)

  • One message per guest, regardless of number of stays

  • Uses first matching stay for variables

  • Best for general communications

Per-Stay

  • Separate message for each matching stay

  • Variables reflect each individual stay

  • Best for stay-specific information (room numbers, dates)

Enable Per-Stay:

  1. Create the automation

  2. Toggle Per-Stay option on

  3. Save


Preview and Testing

Before activating automations, preview which guests match.

Using Preview

  1. Create automation in Inactive status

  2. Click Preview

  3. View list of guests that would match

  4. Verify the list is correct

  5. Activate when ready

Testing Tips

  1. Start with automations Inactive

  2. Use Preview to verify targeting

  3. Enable for a single day to test

  4. Monitor results before full activation


Automation Message Hours

Restrict when message automations can send.

Setting Message Hours

  1. Go to Admin > Settings > Messaging

  2. Configure Automation Message Hours:

    • Start Time (e.g., 8:00 AM)

    • End Time (e.g., 9:00 PM)

  3. Save settings

Messages scheduled outside these hours will not send.


Best Practices

Message Frequency

Guideline

Recommendation

Maximum per stay

3-4 messages

Pre-arrival

1-2 messages max

Mid-stay

1 message (if needed)

Post-stay

1 message

Timing Recommendations

Automation Type

Best Time

Pre-arrival (2+ days)

2:00 PM - 4:00 PM

Day-before

10:00 AM - 2:00 PM

Morning of

8:00 AM - 10:00 AM

Mid-stay

9:00 AM - 11:00 AM

Post-checkout

2:00 PM - 4:00 PM

Review request

10:00 AM next day

Avoid Common Mistakes

Mistake

Better Approach

Too many messages

Limit to 3-4 per stay

Wrong timing

Match guest journey

Generic content

Use personalization variables

No testing

Always preview first

Overlapping automations

Review all active automations


Troubleshooting

Automation not firing

Possible Causes:

  • Automation is inactive

  • Condition doesn't match any guests

  • Time hasn't arrived yet

Solutions:

  • Verify automation status is Active

  • Use Preview to check matching guests

  • Confirm send time and timezone

Wrong guests receiving messages

Possible Causes:

  • Audience condition too broad

  • Custom condition logic error

  • Overlapping automations

Solutions:

  • Review audience settings

  • Test custom Liquid conditions

  • Audit all active automations

Keys not issuing

Possible Causes:

  • Smart lock not configured

  • Room not mapped to lock

  • Payment condition not met

Solutions:

  • Verify smart lock integration

  • Check room-lock mapping

  • Review payment status


Related Articles