Auto Action examples

Copy these Auto Action setups for common tasks such as guest messages, payment requests, info codes, invoice items, flags, status changes and webhooks. Open an example to see the settings for each tab of the Auto Action. Values marked "for example" are placeholders for your own values.

To create an Auto Action, go to Settings > Guest Management > Auto Actions and click Add New Action. For how triggers and actions work, see Auto Actions.

Table of Contents

  1. How example messages are delivered
  2. SMS phone numbers
  3. Messages, emails and SMS to guests
  4. Emails to the owner or an internal address
  5. Booking info codes
  6. Add invoice items
  7. Change existing invoice items
  8. Payments and pending payments
  9. Booking flags and colours
  10. Status changes
  11. API and webhooks
  12. Modified bookings

How example messages are delivered

Most guest examples set Send Message to Booking API/Smart Email. The message is then delivered like this:

  • If the Mail & Actions tab of the booking has a real email address, the message is sent to the guest's email address.
  • If only a masked email address is available, the message is sent through the channel's messaging API, if possible.
  • If no connection to a messaging system is available, the message is sent to the email address on the Mail & Actions tab.
  • Messages to the email address in the Internal field are sent by email.

Enter your text in both boxes on the Message tab:

Box Used for
Plain text box Messages to channels that use the Message API
HTML box Emails

Message API messages show on the message tab of the booking and in the Channel Message centre. This is currently available for Booking.com, Airbnb, Expedia and VRBO.

You can use Template Variables in the subject and text of every message.

SMS phone numbers

A charge applies per SMS message. SMS can be sent to phone numbers in almost any country.

  • Enter the number as it's dialled internationally: the country code first, then the phone number.
  • Don't include leading zeros, other characters or spaces.
  • Example: to send to 015625346 in the UK (country code 44), enter 4415625346.
  • You can use the template variables [GUESTPHONE] or [GUESTMOBILE], but only if the phone number is stored in exactly this format.
  • Messages are cut off at 160 characters. You can use template variables in the message.

Messages, emails and SMS to guests

Send an email to the guest when the status of a booking changes to "Cancelled"

Trigger tab

Setting Value
Trigger Event Check-in
Trigger Time -365
Trigger Window 365
Booking Source All (for example)
Booking Status Cancelled

Message tab

Setting Value
Send Message Booking API/Smart Email
Email Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests include URL.
HTML box It is possible to use the same details (URL) as in the Plain Text box above.

Note: If you are using deposit collection make sure you set Settings > Payments > Payment Collection "Non Payment Booking Status" = Request.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Change the status of all upcoming direct bookings to "Cancelled" and send an email to the guest

Trigger tab

Setting Value
Trigger Event Check-in
Trigger Time -14 (for example to cancel the bookings for the next two weeks)
Trigger Window 14
Booking Source Direct
Booking Status All Not Cancelled

Booking tab

Setting Value
Booking Status Cancelled

Message tab

Setting Value
Send Message Booking API/Smart Email
Email Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests include URL.
HTML box It is possible to use the same details (URL) as in the Plain Text box above.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send a message or SMS when the booking is made more than 10 days before check-in

Trigger tab

Setting Value
Trigger Event Booking (but not after check-in)
Trigger Time Immediate
Trigger Window 1 day
Between Booking and Check in 10 to 999
Booking Status All not cancelled

Booking tab

Setting Value
Execution One time only
Booking Status No Change

Message tab

Setting Value
Send Message Booking API/Smart Email
Email Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests include URL.
HTML box It is possible to use the same details (URL) as in the Plain Text box above.

SMS tab

Setting Value
Send SMS Message Enable
Phone Number This is the phone number that will receive the SMS notification.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Enter the SMS phone number in international format, see SMS phone numbers.

Send a message or SMS when the booking is made more than 7 days before check-in

Alternatively you an use Between Booking and Check in

Trigger tab

Setting Value
Trigger Event Booking (but not after check-in)
Trigger Time Immediate
Trigger Window 1 day
Between Booking and Check in 7 to 999
Booking Status All not cancelled

Message tab

Setting Value
Send Message Booking API/Smart Email
Email Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests include URL.
HTML box It is possible to use the same details (URL) as in the Plain Text box above.

SMS tab

Setting Value
Send SMS Message Enable
Phone Number This is the phone number that will receive the SMS notification.

Booking tab

Setting Value
Execution One time only
Booking Status No Change

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Enter the SMS phone number in international format, see SMS phone numbers.

Send a message or SMS for last-minute bookings (6 days or less)

Trigger tab

Setting Value
Trigger Event Booking (but not after check-in)
Trigger Time Immediate
Trigger Window 1 day
Between Booking and Check in 0 to 6
Booking Status All not cancelled

Message tab

Setting Value
Send Message Booking API/Smart Email
Email Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests include URL.
HTML box It is possible to use the same details (URL) as in the Plain text box above.

SMS tab

Setting Value
Send SMS Message Enable
Phone Number This is the phone number that will receive the SMS notification.

Booking tab

Setting Value
Execution One time only
Booking Status No Change

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Enter the SMS phone number in international format, see SMS phone numbers.

Send an email with a key code for a specific unit one day before check-in (Self Checkin)

Trigger tab

Setting Value
Unit Select the number of the unit you want to send this message to. Note that the number represents the index of the unit not its name.
Trigger Event Check-in
Trigger Time -1 day
Trigger Window 1 day
Booking Status All not cancelled

Message tab

Setting Value
Send Message Booking API/Smart Email
Email Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests.

If you are using the "Additional Information" function Settings > Properties > Rooms > Set Up "Unit Names" you can use template variables

Example: Your room is [UNITNAME]. Check-in from: [UNITNAME:1] . The key code is: [UNITNAME:2]

The template variables will only work if you have entered text in Settings > Properties > Rooms > Set Up "Unit Names". The context help for this setting will explain how to do this.

Booking tab

Setting Value
Execution One time only
Booking Status No Change

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send an email to the guest when a payment is made

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 365 day
Booking Status All not cancelled
Invoice Balance Any Payment made OR Invoice Balance = Zero (payment in full)

Message tab

Setting Value
Send Message Booking API/Smart Email
Email Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests.

You should consider adding the invoice table to the email so the guest can see the booking details including Charges & Payments.

  • [INVOICETABLE] - invoice table

It is also possible to include a customised invoice table using this template variable: [INVOICE:PRI_QTY_CUA€] will create an invoice table with price and quantity in Euros

Setting Value
HTML box It is possible to use the same details as in the Plain text box above.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Apply a flag/colour to a booking when a payment is made

Predefined template: available when you click Add New Action.

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 999 day
Booking Status All not cancelled
Invoice Balance Any Payment made

Booking tab

Setting Value
Flag Text Paid
Flag Colour d4e4b0
Email confirmation for channel bookings

Predefined template: available when you click Add New Action.

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 1 day
Booking Source Channel Manager

Message tab

Setting Value
Send Message Booking API/Smart Email
Email Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests.
HTML box It is possible to use the same details as in the Plain Text box above.

Booking tab

Setting Value
Execution One time only
Booking Status No Change

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send a message (email or sms) to guests that have checked out 30 days or more

Trigger tab

Setting Value
Trigger Event Check-out
Trigger Time 30 days
Trigger Window 365 days

Message tab

Setting Value
Send Message Booking API/Smart Email
Email Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests.
HTML box It is possible to use the same details as in the Plain text box above.

SMS tab

Setting Value
Send SMS Message Enable
Phone Number This is the phone number that will receive the SMS notification.

Booking tab (optional)

Setting Value
Execution One time only
Flag Text The text you want to display
Flag Colour Choose the flag colour

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Enter the SMS phone number in international format, see SMS phone numbers.

Send a Request for payment to your guests for all bookings

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 1 day
Booking Source ALL (or select the booking source/Channel)

Message tab

Setting Value
Send Message Booking API and Email Smart
Subject Enter the subject for your guests
Plain text box Enter the Message text you wish to send to your guests include the payment link

https://beds24.com/bookpay.php?bookid=[BOOKID]

For more payment link options, see How to setup Payments.

Setting Value
Email Subject Enter the subject for your guests
HTML box Enter the Email text you wish to send to your guests include template variable
  • [PAYLINK] this creates a payment link (HTML A tag) for the payment request for the amount in the booking deposit field if non zero, otherwise the outstanding balance. Check the template variables for other options.

Booking tab

Setting Value
Execution One time only
Flag Text The text you want to display
Flag Colour Choose the flag colour

Booking changes are applied before the mail is sent so that the flag template variable can be reflected in the Email.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send a Request to update the guest's credit card as it will expire before check-in

Trigger tab

Setting Value
Trigger Event Booking (not after check-in)
Trigger Time Immediate
Trigger Window 1 day
Booking Source ALL (or select the booking source/Channel)

Message tab

Setting Value
Send Message Booking API and Email Smart
Subject Enter the subject for your guests
Plain text box Enter the Message text you wish to send to your guests including the payment link

https://beds24.com/bookpay.php?bookid=[BOOKID]&g=cc

For more payment link options, see How to setup Payments.

Setting Value
Email Subject Enter the subject for your guests
HTML box Enter the Email text you wish to send to your guests including the payment link

https://beds24.com/bookpay.php?bookid=[BOOKID]&g=cc this creates a link (HTML A tag) so the guest can enter their credit card details. Check the template variables for other options.

Booking tab

Setting Value
Execution One time only
Flag Text The text you want to display
Flag Colour Choose the flag colour

Booking changes are applied before the mail is sent so that the flag template variable can be reflected in the Email.

Booking Info tab

Setting Value
Booking Info Code NEWCARDREQ
Booking Info Text New credit card requested

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send a Request for payment to your guests XX days before check-in

Trigger tab

Setting Value
Trigger Event Check-in
Trigger Time -42
Trigger Window 42 day
Booking Source ALL (or select the booking source/Channel)

Message tab

Setting Value
Send Message Booking API and Email Smart
Subject Enter the subject for your guests
Plain text box Enter the Message text you wish to send to your guests include the payment link

https://beds24.com/bookpay.php?bookid=[BOOKID]

For more payment link options, see How to setup Payments.

Setting Value
Email Subject Enter the subject for your guests
HTML box Enter the Email text you wish to send to your guests include template variable
  • [PAYLINK] this creates a payment link (HTML A tag) for the payment request for the amount in the booking deposit field if non zero, otherwise the outstanding balance. Check the template variables for other options.

Booking tab

Setting Value
Execution One time only
Flag Text The text you want to display
Flag Colour Choose the flag colour

Booking changes are applied before the mail is sent so that the flag template variable can be reflected in the Email.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send a Request for payment to your guests XX days after booking

You allow your guests to make X number of payments for their booking.

You can not trigger the auto action multiple times, unless you manage this manually, therefore you need to create multiple auto actions, so if you allow 3 payments for their booking, then you will need 3 auto actions.

You will need to manually add a Booking Info Code to each booking that you have agreed to allow X payments.

Create Auto Action one

Trigger tab

Setting Value
Trigger Event Booking (but not after check-in)
Trigger Time +7 days
Trigger Window 1 day
Booking Source ALL (or select the booking source/Channel)
Invoice Balance Not Zero
Any Booking Info Code MULTIPLE (for example) this can be used if you only allow some guests to make multiple payments.

Message tab

Setting Value
Send Message Booking API/Smart Email
Subject Enter the subject for your guests
Plain text box Enter the Message text you wish to send to your guests include the payment link

https://beds24.com/bookpay.php?bookid=[BOOKID]

For more payment link options, see How to setup Payments.

Setting Value
Email Subject Enter the subject for your guests
HTML box Enter the Email text you wish to send to your guests include template variable
  • [PAYLINK] this creates a payment link (HTML A tag) for the payment request for the amount in the booking deposit field if non zero, otherwise the outstanding balance. Check the template variables for other options.

Booking tab

Setting Value
Execution One time only
Flag Text The text you want to display
Flag Colour Choose the flag colour

Booking changes are applied before the mail is sent so that the flag template variable can be reflected in the Email.

Create additional Auto Actions for each period you want to trigger

Create Auto Action 2 (and 3, 4, 5 - how many you need)

Setting Value
Trigger Time +14 days (days you want to collect the payments)
Trigger Window 1 day

Use the other settings from the first Auto Action.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send a Request to 'Capture' a Security deposit from your guests XX days before check-in - with Stripe

You want to capture a Security Deposit for bookings on the day before check-in from your guest.

Capture of the payment is only held by Stripe for 7 days, if the guest is staying longer you will need to send the request again.

You will need to create multiple emails to capture the payment multiple times for the same booking.

Trigger tab

Setting Value
Trigger Event Check-in
Trigger Time -1 days
Trigger Window 1 day
Booking Source ALL (or select the booking source/Channel)
Status All not cancelled

Message tab

Setting Value
Send Message Booking API/Smart Email
Email Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests include URL. change the pay=100 to the value you require.

https://beds24.com/bookpay.php?bookid=[BOOKID]&g=st&capture=0&pay=100.

Setting Value
HTML box It is possible to use the same details (URL) as in the Plain text box above.

Booking Info tab (optional)

Setting Value
Booking Info Code SECDEPOSIT (for example)
Booking Info Text Security deposit request sent.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send an email to the guest email address when a payment FAILS at Stripe

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 365
Booking Source All
Booking Status All but not cancelled
Booking Info Code STRIPEFAIL, CARDFAILSTRIPE

Message tab

Setting Value
Send Message Booking API and Email Smart
Subject Enter the subject for your guests
Plain text box Enter the Message text you wish to send to your guests including the payment link

https://beds24.com/bookpay.php?bookid=[BOOKID]

For more payment link options, see How to setup Payments.

Setting Value
Email Subject Enter the subject for your guests
HTML box Enter the Email text you wish to send to your guests include template variable
  • [PAYLINK] this creates a payment link (HTML A tag) for the payment request for the amount in the booking deposit field if non zero, otherwise the outstanding balance. Check the template variables for other options.

Booking tab

Setting Value
Execution One time only
Flag Text The text you want to display
Flag Colour Choose the flag colour

Booking changes are applied before the mail is sent so that the flag template variable can be reflected in the Email.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send an email in the guests language to an internal email address

This uses a smart template variable. In this example, the Auto Action checks whether the guest booked in French. If yes, it sends a French text. If not, it sends an English text.

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 1
Booking Source All (for example)
Booking Status All Not Cancelled
Booking Field Contains Select "Language" in the next field enter: the short code for the language this Auto Action is for.

Message tab

Enter the message in the appropriate language under your default language.

Setting Value
Send Message Internal Only
Internal Email Address Enter the email address this message should be sent to.
Email Subject Enter the subject for your guests
HTML box -
Send SMS in a certain language (if it is the language of the booking) or a default language

This uses a smart template variable. In this example the auto action will trigger on Booking and for 1 day and checks whether the guest booked in French. If yes, it sends a French text. If not, it sends an English text.

Trigger tab

Set the rules to when this Auto Action should trigger.

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 1
Booking Source All (for example)
Booking Status All Not Cancelled

SMS tab

Setting Value
Phone Number [GUESTMOBILE]
SMS Message [IF=:[GUESTLANGUAGE]:fr:French_text|English_text]
Send Pin code to guest, 2 days before Check-in (Self Checkin)

This auto action can be used if you have set a fixed PIN code in the Room Setup or using digits from the Booking id.

To setup the PIN code for each Room/Unit then go to Settings > Properties > Rooms > Setup > Unit Names, then in the unit names, you can add additional information including a pin code.

Example:

You have 2 units (100 and 101). Access Pin Code for 100 = 12345, for 101 - 34567

In "Unit name" enter: (Use (?) in the room setup for more details/options)

  • 100|12345
  • 101|34567

Trigger tab

Setting Value
Trigger Event Check-in
Trigger Time -2 (the number of days before check-in you want to sent the code or link)
Trigger Window 2
Booking Source All
Booking Status All but not cancelled
Group bookings Trigger all on master

Message tab

Setting Value
Send Message Booking API/Smart Email
Subject Enter the subject for your guests - Your access code (your text)
Plain text box Enter the text you wish to send to your guests include URL. Include these template variables - [UNITNAME] and [UNITNAME:1] or [BOOKIDLAST5] - Last 5 digits of booking number.
HTML box It is possible to use the same details (URL) as in the Plain Text box above. Include these template variables - [UNITNAME] and [UNITNAME:1] or [BOOKIDLAST5] - Last 5 digits of booking number.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send email to guests with check-in details 2 days before Check-in, booking paid/no outstanding balance

This auto action will be sent only when the Invoice Balance of the booking is zero. This can be used to ensure that the checkin details are only sent when the guest has completed the payments.

Trigger tab

Setting Value
Trigger Event Check-in
Trigger Time -2 (the number of days before check-in you want to sent the code or link)
Trigger Window 2
Booking Source All
Booking Status All but not cancelled
Group bookings Trigger all on master
Invoice Balance Zero

Message tab

Setting Value
Send Message Booking API/Smart Email
Subject Enter the subject for your guests - Your access code (your text)
Plain text box Enter the text you wish to send to your guests. This can include any information that is important for the checkin of the guest, for example the Key code for the door, who to contact if there are any issues
HTML box Enter the text you wish to send to your guests this can include URLs. Include any information that is important for the checkin of the guest, for example the Key code for the door, who to contact if there are any issues

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send email to guests with check-in details 2 days before Check-in, Security Deposit Authorised at Stripe

This auto action will be sent only when the a payment has been 'authorised' at Stripe. This can be used to ensure that the checkin details are only sent when the guest has completed the Security Deposit Authorisation.

Trigger tab

Setting Value
Trigger Event Check-in
Trigger Time -2 (the number of days before check-in you want to sent the code or link)
Trigger Window 2
Booking Source All
Booking Status All but not cancelled
Group bookings Trigger all on master
Invoice Balance Zero
Any Booking Info Code STRIPEAUTHORIZE

Message tab

Setting Value
Send Message Booking API/Smart Email
Subject Enter the subject for your guests - Your access code (your text)
Plain text box Enter the text you wish to send to your guests. This can include any information that is important for the checkin of the guest, for example the Key code for the door, who to contact if there are any issues
HTML box Enter the text you wish to send to your guests this can include URLs. Include any information that is important for the checkin of the guest, for example the Key code for the door, who to contact if there are any issues

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send an email to all current guests (checked in)

Trigger tab

Setting Value
Trigger Event Check-in
Trigger Time Immediate
Trigger Window 14(the max number of days your guests can stay)
Booking Source All
Group bookings Trigger all on master
Booking Status All but not cancelled
Any Booking Info Code CHECKIN
Exclude Booking Info Code CHECKOUT

Message tab

Setting Value
Send Message Booking API/Smart Email
Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests include URL.
HTML box It is possible to use the same details (URL) as in the Plain Text box above.

Tip: It is assumed you use the Checkin/Checkout feature in the Dashboard, if not you can either manually add Checkin to your bookings (Booking info tab) or create an auto action to add the Booking Info Codes to the bookings.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send invoice after check-out - PDF attachment

Predefined template: available when you click Add New Action.

You can send Invoice as an attachment to your guests.

Setup your Invoice go to Settings > Guest Management > Invoicing

Trigger tab

Setting Value
Trigger Event Checkout
Trigger Time Immediate +8hrs
Trigger Window 1 day
Booking Source All (or select the appropriate channel/Direct)
Group bookings Trigger all on master
Booking Status Confirmed
Any Booking Info Code CHECKOUT

Message tab

Setting Value
Send Message Guest email - (or one of the other options)
Attachment Invoice Template 1
Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests.
HTML box It is possible to use the same details (URL) as in the Plain Text box above.

Tip: It is assumed you use the Checkin/Checkout feature in the Dashboard, if not you can either manually add Checkout to your bookings (Booking info tab) or create an auto action to add the Booking Info Codes to the bookings.

If you send Emails with pdf attachment (invoice, booking template) to Alias-Email addresses created by channels the channel might block the attachment so it is not delivered to the guest. Ask your channel about their policy regarding this.

Other files can't be attached. Instead, add a link to a file you upload to your website.

Send email with Booking Registration Form - PDF attachment

You can send Booking Template attachments to your guests.

Setup your Booking Template, go to Settings > Guest Management > Booking Templates

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 1 day
Booking Source All (or select the appropriate channel/Direct)
Group bookings Trigger all on master
Booking Status All but not cancelled

Message tab

Setting Value
Send Message Guest API/Smart Email (or one of the other options)
Attachment Select Booking Template from the drop down list.
Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests include URL.
HTML box It is possible to use the same details (URL) as in the Plain Text box above.

Tip: It is assumed you use the Checkin/Checkout feature in the Dashboard, if not you can either manually add Checkout to your bookings (Booking info tab) or create an auto action to add the Booking Info Codes to the bookings.

If you send Emails with pdf attachment (invoice, booking template) to Alias-Email addresses created by channels the channel might block the attachment so it is not delivered to the guest. Ask your channel about their policy regarding this.

Other files can't be attached. Instead, add a link to a file you upload to your website.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send email after the cleaner has cleaned the room

To email the guest when the room is ready, you or the cleaner add a unit status to the room. This example uses the unit status clean.

Trigger tab

Setting Value
Trigger Event Checkin
Trigger Time Immediate
Trigger Window 1
Booking Source All
Group bookings Trigger all on master
Booking Status All but not cancelled
Template Variable [UNITSTATUS1] Contains = clean

Message tab

Setting Value
Send Message Guest API/Smart Email (or one of the other options)
Subject Enter the subject for your guests
Plain text box Enter the text you wish to send to your guests.
HTML box It is possible to use the same details as in the Plain Text box above.
Attachment If you want to send a Booking/Invoice template you can select from the drop down list.

Other files can't be attached. Instead, add a link to a file you upload to your website.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send email to your guest - Upselling additional nights - nights available after checkout

Email the guest before arrival when the room is free after their check-out, so they can extend their stay. The example uses a fixed price you enter in Settings > Properties > Rooms > Setup > Room Templates (Room Template 3) and standard property and room template variables, so one Auto Action works for all rooms.

Trigger tab

Setting Value
Trigger Event Checkin (depending on when you want to notify the guest)
Trigger Time -2 days (in this example 2 days before arrival)
Trigger Window 2
Booking Source All
Group bookings Trigger all on master
Booking Status All but not cancelled
Template Variables [IFBETWEEN:[TURNOVERDAYS]:0:3:yes|no|no] equal yes

The template variable checks whether there are up to 3 days between this booking and the next booking.

Message tab

Setting Value
Send Message Booking API/Smart Email
Email Subject Enter the subject for your guests
Plain text box and HTML box Enter the text to send, for example the text below
[IF<=:[TURNOVERDAYS]:3:Your apartment ([ROOMNAME]), which you booked for [NUMNIGHT] nights from [FIRSTNIGHTSHORT] to [LEAVINGDAYSHORT] is currently available for up to [TURNOVERDAYS] extra night(s)|].
We are very happy to offer you to extend your stay at [PROPERTYNAME] at the exceptional rate of [ROOMTEMPLATE3][PROPERTYCURRENCYBACK] per extra night. If you would like to extend your stay then please send an email to our Reservations team [PROPERTYEMAIL] confirming the number of nights you would like to stay and provide your Booking Reservation Number [BOOKID] and Offer ‘EXTRANIGHTS’ for the special Price.

Booking Info tab (optional)

Setting Value
Booking info code EXTRANIGHTS
Booking Info Description Upsell email sent [CURRENTDATE] :[ROOMTEMPLATE3][PROPERTYCURRENCYBACK] per extra night

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send email to your guest - Upselling additional nights - nights available before check-in

Email the guest before arrival when the room is free before their check-in, so they can arrive earlier and extend their stay. The example uses a fixed price you enter in Settings > Properties > Rooms > Setup > Room Templates (Room Template 3) and standard property and room template variables, so one Auto Action works for all rooms.

Trigger tab

Setting Value
Trigger Event Checkin (depending on when you want to notify the guest)
Trigger Time -2 days (in this example 2 days before arrival)
Trigger Window 2
Booking Source All
Group bookings Trigger all on master
Booking Status All but not cancelled
Template Variables [IFBETWEEN:[VACANTDAYS]:0:3:yes|no|no] equal yes

The template variable checks whether there are up to 3 days between the previous check-out and the check-in of this booking.

Message tab

Setting Value
Send Message Guest API/Smart Email
Subject Enter the appropriate details
Plain text box and HTML box Enter the text to send, for example the text below
[IF<=:[VACANTDAYS]:3:Your apartment ([ROOMNAME]), which you booked for [NUMNIGHT] nights from [FIRSTNIGHTSHORT] to [LEAVINGDAYSHORT] is currently available for up to [VACANTDAYS] extra night(s)|].
We are very happy to offer you to extend your stay at [PROPERTYNAME] at the exceptional rate of [ROOMTEMPLATE3][PROPERTYCURRENCYBACK] per extra night. If you would like to extend your stay then please send an email to our Reservations team [PROPERTYEMAIL] confirming the number of nights you would like to stay and provide your Booking Reservation Number [BOOKID] and Offer ‘EXTRANIGHTS’ for the special Price.

Booking Info tab (optional)

Setting Value
Booking info code EXTRANIGHTS
Booking Info Description Upsell email sent [CURRENTDATE] :[ROOMTEMPLATE3][PROPERTYCURRENCYBACK] per extra night

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send email to your guest - Offering Early Checkin

Email the guest before arrival when the room is free the day before their check-in, so they can check in early. The example uses a fixed price you enter in Settings > Properties > Rooms > Setup > Room Templates (Room Template 3) and standard property and room template variables, so one Auto Action works for all rooms.

Trigger tab

Setting Value
Trigger Event Checkin (depending on when you want to notify the guest)
Trigger Time -2 days (in this example 2 days before arrival)
Trigger Window 2
Booking Source All
Booking Status All but not cancelled
Group bookings Trigger all on master
Template Variables [IF>:[VACANTDAYS]:1:yes|no] equal yes

The template variable checks whether the room is vacant for more than 1 day before this booking.

Message tab

Setting Value
Send Message Guest API/Smart Email (or one of the other options)
Email Subject Enter the appropriate details
Plain text box and HTML box Your text, using template variables for the booking details, for example the text below
Dear [GUESTNAME],
We are very happy to offer you 'Early Check-in' at [PROPERTYNAME] at the exceptional rate of [ROOMTEMPLATE3][PROPERTYCURRENCYBACK].
If you would like checkin early for your stay then please send an email to our Reservations team [PROPERTYEMAIL] confirming the number of nights you would like to stay and provide your Booking Reservation Number [BOOKID] and Offer ‘EARLYARRIVAL’ for the special Price.
Best regards,
[PROPERTYCONTACTFIRSTNAME] [PROPERTYCONTACTLASTNAME]
[PROPERTYNAME]
[PROPERTYADDRESS],
[PROPERTYCITY],
[PROPERTYPOSTCODE],
[PROPERTYSTATE],
[PROPERTYCOUNTRY].
Email: [PROPERTYEMAIL]
Website: [PROPERTYWEB]

Booking Info tab (optional)

Setting Value
Booking info code EARLYARRIVAL
Booking Info Description Upsell email sent [CURRENTDATE] :[ROOMTEMPLATE3][PROPERTYCURRENCYBACK] Early Checkin

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send email to your guest - Offering Late Checkout

Email the guest before departure when the room is free on the day they leave, so they can check out late. The example uses a fixed price you enter in Settings > Properties > Rooms > Setup > Room Templates (Room Template 3) and standard property and room template variables, so one Auto Action works for all rooms.

Trigger tab

Setting Value
Trigger Event Checkout
Trigger Time -1 days (depending on when you want to notify the guest)
Trigger Window 1
Booking Source All
Booking Status All but not cancelled
Group bookings Trigger all on master
Template Variables [IF>:[TURNOVERDAYS]:1:yes|no] equal yes

The template variable checks whether there is more than 1 day between this booking and the next booking.

Message tab

Setting Value
Send Message Guest API/Smart Email (or one of the other options)
Email Subject Enter the appropriate details
Plain text box and HTML box Your text, using template variables for the booking details, for example the text below
Dear [GUESTNAME],
We are very happy to offer you 'Late Check-out' at [PROPERTYNAME] at the exceptional rate of [ROOMTEMPLATE3][PROPERTYCURRENCYBACK].
If you would like a late checkout, then please send an email to our Reservations team [PROPERTYEMAIL] confirming you would like the Late Checkout, provide your Booking Reservation Number [BOOKID] and Offer ‘LATECHECKOUT’ for the special Price.
Best regards,
[PROPERTYCONTACTFIRSTNAME] [PROPERTYCONTACTLASTNAME]
[PROPERTYNAME]
[PROPERTYADDRESS],
[PROPERTYCITY],
[PROPERTYPOSTCODE],
[PROPERTYSTATE],
[PROPERTYCOUNTRY].
Email: [PROPERTYEMAIL]
Website: [PROPERTYWEB]

Booking Info tab (optional)

Setting Value
Booking info code LATCHECKOUT
Booking Info Description Upsell email sent [CURRENTDATE] :[ROOMTEMPLATE3][PROPERTYCURRENCYBACK] Late Checkout

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send email to your guest - Offering Late Checkout Only on a Sunday when there is no new arrival

Offer a late check-out on Sundays when no new guest arrives that day. The guest books the late check-out through a link to your booking page, which creates a new booking for the departure date and closes the calendar to other bookings. The link pre-fills the leaving date and room of the existing booking and the late check-out offer. The example uses standard property and room template variables and a fixed price in Settings > Properties > Rooms > Setup > Room Templates (Room Template 3).

Step 1: Create a late check-out offer in Settings > Properties > Offers

Setting Value
Name Latecheckout
Enable Only if Available
Booking Type Confirmed with Deposit 2 - via payment gateway

Step 2: Create a rate or daily price in Prices

Setting Value
Guests Max Occupancy
Max Stay 1
Offer Select the number of the offer you created in step 1
  • If you use rates: set Rate allowed to Sunday only. On the Channel tab, untick all channels except beds24.com (your booking page).
  • If you use daily prices: go to Calendar, set the price and date range for Sundays only, and in the enable list untick all channels except beds24.com.

Step 3: Create a custom question for the booking ID in Settings > Properties > Booking Questions > Custom Questions

  • Question = Booking Id
  • Single line field
  • Optional

Step 4: Create the Auto Action

Trigger tab

Setting Value
Trigger Event Checkout
Trigger Time -1 days (depending on when you want to notify the guest)
Trigger Window 1
Booking Source All
Booking Status All but not cancelled
Between Booking and Check in 2 and 999 (so the Auto Action doesn't trigger on the new booking)
Group bookings Trigger all on master
Template Variables [IF=:[LEAVINGDAY:{%a}]:Sun:[IF>=^[TURNOVERDAYS]^1^yes~no]|] equal yes

The template variable checks whether the departure day is a Sunday and there is at least 1 day between this booking and the next booking.

Message tab

Setting Value
Send Message Guest API/Smart Email (or one of the other options)
Email Subject Enter the appropriate details
Plain text box and HTML box Your text, using template variables for the booking details, for example the text below
Dear [GUESTNAME],
We are very happy to offer you 'Late Check-out' at [PROPERTYNAME] at the exceptional rate of [ROOMTEMPLATE3][PROPERTYCURRENCYBACK].
If you would like a late checkout, please use this link to make the booking and payment.
https://beds24.com/booking2.php?propid=[PROPERTYID]&checkin_hide=[LEAVINGDAYYYYY-MM-DD]&br5-[ROOMID]=Book
Enter your Booking Reservation Number [BOOKID] into the Booking id box on the booking page.
Best regards,
[PROPERTYCONTACTFIRSTNAME] [PROPERTYCONTACTLASTNAME]
Email: [PROPERTYEMAIL]
Website: [PROPERTYWEB]

Tip: The link opens a new booking in the same room, with check-in on the leaving date of the existing booking, for the offer from step 1. Change the offer number in &br5- to the number of your offer.

Booking Info tab (optional)

Setting Value
Booking info code LATCHECKOUT
Booking Info Description Upsell email sent [CURRENTDATE]: Late Checkout

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Send email to your guest - On a Wednesday (Cleaner is due/Rubbish Collection is due)

Remind the guest of something that happens on a fixed day of the week, for example the cleaner visiting on Thursday mornings or the bin collection. The Auto Action checks the day of the week. An email is only sent once per booking, so for stays of more than one week you need one Auto Action per week (see the Booking Info tab below).

Trigger tab

Setting Value
Trigger Event Checkin
Trigger Time Immediate
Trigger Window 8 days
Booking Source All
Booking Status All but not cancelled
Template Variables [IF=:[CURRENTDATE:{%u}]:3:yes|no] equal yes

The template variable checks whether the current day is a Wednesday. %u is the ISO-8601 day of the week, from 1 (Monday) to 7 (Sunday).

Message tab

Setting Value
Send Message Guest API/Smart Email (or one of the other options)
Email Subject Enter the appropriate details
Plain text box and HTML box Your text, using template variables for the booking details, for example the text below
Dear [GUESTNAME],
Hope you are enjoying your holiday at [PROPERTYNAME].
We would like to remind you that the cleaner is due to visit you on Thursday morning between 10am and 12am.
Best regards,
[PROPERTYCONTACTFIRSTNAME] [PROPERTYCONTACTLASTNAME]
Email: [PROPERTYEMAIL]
Website: [PROPERTYWEB]

Booking Info tab (optional)

Setting Value
Booking Info code CLEANWED1
Booking Info text Reminder that cleaning is due on the first Thursday of their stay.

Use this info code to trigger the next Auto Action if the stay is longer than one week: add the code to the Trigger tab of the next Auto Action.

For how the message is delivered (email, channel message API or SMS), see How example messages are delivered.

Emails to the owner or an internal address

Send an email to the Owner/Internal email address when a payment FAILS at Stripe

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 365
Booking Source All
Booking Status All but not cancelled
Booking Info Code STRIPEFAIL, CARDFAILSTRIPE

Message tab

Setting Value
Send Message Internal
Internal Email Address Enter the email address to receive the notification
Subject Failed Stripe Payment
  • [BOOKID] - booking reference number
  • [GUESTNAMES] - name of all guests in the booking on the "summary" tab of the booking
  • [FIRSTNIGHT]
  • [LASTNIGHT]

Booking tab (optional)

Setting Value
Execution One time only
Flag Text Stripe Payment Failed
Flag Colour Choose the flag colour
Send an email to the Owner/Internal email address when a guest completes a Payment Authorisation at Stripe

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 365
Booking Source All
Booking Status All but not cancelled
Booking Info Code STRIPEAUTHORIZE

Message tab

Setting Value
Send Message Internal
Internal Email Address Enter the email address to receive the notification
Subject Stripe Payment Authorisation
  • [BOOKID] - booking reference number
  • [GUESTNAMES] - name of all guests in the booking on the "summary" tab of the booking
  • [FIRSTNIGHT]
  • [LASTNIGHT]

Booking tab (optional)

Setting Value
Execution One time only
Flag Text Stripe Authorised
Flag Colour Choose the flag colour
Send an email to the Owner/Internal email address for a new booking

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 1 day
Booking Source All
Booking Status All but not cancelled

Message tab

Setting Value
Send Message Internal
Internal Email Address Enter the email address to receive the notification
Subject New Booking
  • [BOOKID] - booking reference number
  • [GUESTNAMES] - name of all guests in the booking on the "summary" tab of the booking
  • [FIRSTNIGHT]
  • [LASTNIGHT]

Booking info codes

Add CHECKIN Booking info code to bookings

If you need to use the Booking info code CHECKIN/CHECKOUT for reporting/other auto actions, you can set the Booking info code rather than use the Current guest module in the dashboard.

Trigger tab

Setting Value
Trigger Event Check-in
Trigger Time Immediate
Trigger Window 1 day
Booking Source All
Booking Status All but not cancelled
Group bookings Trigger all on master

Booking Info tab

Setting Value
Booking Info Code CHECKIN
Booking Info Text Auto Checkin
Add CHECKOUT Booking info code to bookings

If you need to use the Booking info code CHECKIN/CHECKOUT for reporting/other auto actions, you can set the Booking info code rather than use the Current guest module in the dashboard.

Trigger tab

Setting Value
Trigger Event Check-out
Trigger Time Immediate
Trigger Window 1 day
Booking Source All
Booking Status All but not cancelled
Group bookings Trigger all on master

Booking Info tab

Setting Value
Booking Info Code CHECKOUT
Booking Info Text Auto Checkout
Group check-in

Predefined template: available when you click Add New Action.

This requires the master booking to be checked-in via the check-in function.

Trigger tab

Setting Value
Trigger Event Checkin
Trigger Time immediate
Time Window 1 day
Booking Source All
Booking Status All but not cancelled
Group bookings Trigger all on master if group
Info Code CHECKIN

Booking Info tab

Setting Value
Booking Info Code CHECKIN
Booking Info Text Group checked in
Identify Repeat Guest

This requires you to use the Guest database.

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time immediately
Trigger Window 365
Booking Source All
Booking Status All but not cancelled
Group bookings Trigger all on master
Template Variable [GUESTSID1] greater than 0

Booking Info tab

Setting Value
Info Code REPEAT
Identify bookings with Custom Question ticked/unticked

If you have a custom question with a 'Tick box' for example, they want a late checkin.

Setup the custom question in Settings > Properties > Booking Questions > Custom Questions > C ustom question 1, set with TYPE = Tick Box.

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 365
Booking Source All
Booking Status All but not cancelled
Group bookings Trigger all on master
Template Variable [GUESTCUSTOMQ1] equals ticked (or) not ticked

Booking Info tab

Setting Value
Info Code LATECHECKIN

Add invoice items

Add a fee to all bookings from a channel

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Booking Source Expedia (for example)

Invoice tab

Setting Value
Add Invoice Item Add new
Type Amount
Description Cleaning fee (for example) - Template variables can be used.
Amount 50 (for example - the amount of your cleaning fee)
  • per = Room
Setting Value
Period One time
VAT 19% (for example - enter the VAT amount if applicable)

The fee will be added the next time the auto actions run.

Add a fee (Penalty) to all bookings with an Outstanding Balance

You want to add a 2.2% fee to all bookings if there is an outstanding balance 2 days prior to checkin.

Trigger tab

Setting Value
Trigger Event Checkin
Trigger Time -2 days
Trigger Window 2 days
Status All not Cancelled
Invoice Balance Not Zero

Invoice tab

Setting Value
Type Amount
Description Payment Fee||[INVOICEBALANCE:2.2%]
Amount 0 (leave as 0 so the value is set from the calculation in Description field)
Per Room
Period One time
VAT 19% (for example - enter the VAT amount if applicable)

The fee will be added the next time the auto actions run.

Add a negative value to Direct bookings for Stripe Charges

You want to add the Stripe fee to all Direct bookings to show total value of booking, i.e. if you want to show the booking value. In this example the Stripe charge will be added as a negative figure.

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 1 day
Status All not Cancelled
Booking Source Direct

Invoice tab

Setting Value
Type Amount
Description Stripe Fee||[INVOICECHARGESNUM:-3%]
Amount 0 (leave as 0 so the value is set from the calculation in the Description field)
Per Room
Period One time
VAT 19% (for example - enter the VAT amount if applicable)

The fee/charge will be added the next time the auto actions run.

Add a new charge - City tax, calculated from number of nights/adults in a booking

Add a city or tourist tax calculated from the number of nights and adults, with a cap. Some locations cap the tax at a maximum of 7 nights. This example multiplies nights × adults by 2 × 1.03 and caps the result at 7 nights:

  • If nights × adults × 2 × 1.03 is greater than 7 × adults × 2 × 1.03, the charge is 7 × adults × 2 × 1.03 (the cap).
  • Otherwise the charge is nights × adults × 2 × 1.03.

The IF uses the special separators ^ and ~ instead of : and |, because | separates the parts of the Description field (Description|Status|Price|VAT).

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 1 day
Status All not Cancelled
Booking Source Direct

Invoice tab

Setting Value
Type Amount
Description See the code below
Amount 0 (leave as 0 so the value is set from the calculation in the Description field)
Per Room
Period One time
VAT 19% (for example - enter the VAT amount if applicable)
Tourist Tax|Stayfee|[IF>^[NUMNIGHTS][*][NUMADULT][*]2[*]1.03^7[*][NUMADULT][*]2[*]1.03^7[*][NUMADULT][*]2[*]1.03~[NUMNIGHTS][*][NUMADULT][*]2[*]1.03]

The charge is added the next time the Auto Actions run.

Change existing invoice items

Update the Description field of a charge/invoice item

In some cases Channel bookings have different descriptions for the same charge item - i.e. Cleaning, update the description field in the invoice item so they all match, using the format (findthisinvoicedescription^replacewiththisdescription)

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Booking Source Expedia (for example)

Invoice tab

Setting Value
Add Invoice Item Update Only
Type Change Description
Description Cleaning^Cleaning Service Fee
Invoicee Ignore (otherwise you can add a specific Invoicee to limit the search)
Update all values of a charge/invoice item

You need to change the charges in bookings due to an update in your prices. Tourist Tax (for example), update the description field and value using the format (findthisinvoicedescription^replacewiththisdescription)

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Time Window 365
Check In From Select the first date of the Summer Season
Check In To Select the last date of the Summer Season
Booking Source Expedia (for example)

Invoice tab

Setting Value
Add Invoice Item Update Only
Type Change All
Description Tourist Tax^Tourist Tax - Summer season 2022 (for example)
Amount 0.75
Per Per Person
Period One time
Invoicee Ignore (otherwise you can add a specific Invoicee to limit the search)
Update VAT value for Charge item - City Tax (for example)

You need to change the VAT value for specific items (City tax) in the Charges & Payments tab of the booking.

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Time Window 365
Booking Source Expedia (for example)

Invoice tab

Setting Value
Add Invoice Item Update Only
Type Change VAT
Description City Tax (this needs to be an exact match to the charge item description)
Amount 0
VAT 12 (for example)
Per Per Person
Period One time
Invoicee Ignore
Update VAT value for the Accommodation fee (first item in the Charges & Payments tab)

You need to change the VAT value for the Accommodation fee usually the first line the Charges & Payments tab of the booking.

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Time Window 365
Booking Source ALL (or select a specific channel)

Invoice tab

Setting Value
Add Invoice Item Update Only
Type Change VAT
Description [ROOMNAME1] [FIRSTNIGHT] - [LEAVINGDAY][NOCONVERT]

Check the Description in the Charges & Payments tab for the Accommodation charge usually [ROOMNAME1] [FIRSTNIGHT] - [LEAVINGDAY]

To update this value you also need [NOCONVERT] so the template variable is used rather than the value.

Setting Value
Amount 0
VAT 12 (for example)
Per Per Person
Period One time
Invoicee Ignore

Payments and pending payments

Add a pending payment

Trigger tab

Setting Value
Trigger Event Booking or Booking (but not after Check-in)
Trigger Time Set the time you want to collect the payment
Booking Source All (for example, you can also set different rules for different channels)
Group Booking Trigger Trigger only Master (this will trigger on individual bookings and Master booking if a group)

Booking tab (optional)

Setting Value
Flag Text PendingPayment (for example)
Flag Colour Select the colour as this will be visible in the Calendar/Bookings list

Booking Info tab (optional)

For information and reporting.

Setting Value
Booking Info Code PENDPAY
Booking Info Text Pending payment added

Invoice tab

Setting Value
Payment Type Select on what the payment is calculated (Percent of Balance due OR Group balance if you receive Group bookings)
Description The text you will see in the "Charges and Payments" tab
Status If you use the status function add the status you want to apply to the pending payment (optional)
Amount Enter the amount or percentage you want to collect
Payment Rule Use auto or manual - if you have set up payment rules in Settings > Guest Management > Payments they will be available here
Payment Due Set when the payment is due

Create a Payment Rule to collect a payments when bookings are not cancelled.

Go to Settings > Payments > Payment Rules

Payment Rule

Setting Value
Name Enter your title - Not Cancelled (for example)
Action Auto

Payment Trigger

Setting Value
Booking Status All not cancelled
Any Booking Info Code optional
All Booking Info Codes optional
Exclude Booking Info Code Optional (can exclude Virtual Credit cards, find the Booking info code in the booking)

Payment Action

Setting Value
Capture Yes - immediately charged (Capture=Yes)
Add info code on success Add a Booking Info item to the booking on success
Add info code on failure Add a Booking Info item to the booking on failure
Add a pending payment - Set the Security Deposit value based on the price of the booking, using a calculation

Trigger tab

Setting Value
Trigger Event Booking or Booking (but not after Check-in)
Trigger Time Set the time you want to collect the payment
Booking Source All (for example, you can also set different rules for different channels)

Booking tab (optional)

Setting Value
Flag Text PendingPayment (for example)
Flag Colour Select the colour as this will be visible in the Calendar/Bookings list

Booking Info tab (optional)

Add a booking info tab for information and reporting

Setting Value
Booking Info Code PENDPAY
Booking Info Text Pending payment added

Invoice tab

Setting Value
Payment Type Fixed value
Description Security Deposit||[IF<=:[INVOICEFIRSTITEMNUM]:800:200|[INVOICEFIRSTITEMNUM][/.0]4]

(Security Deposit is the description, then 2 | symbol, then the calculation for the 'Amount' to be set.)

This calculation, tests if the first invoice item value (usually the Accommodation value) is greater than or = 800 if so set the Security Deposit Amount = 1 quarter of the first invoice item value, otherwise set = 200.

Tip: A price value for the invoice item can be specified after a second pipe (|) symbol, this can be used to calculate a price using template variables. If the price value in the description field is zero or absent, the numeric value from the amount field will be used.

Setting Value
Status If you use the status function add the status you want to apply to the pending payment (optional)
Amount 0
Payment Rule Use auto or manual - if you have set up payment rules in Settings > Payments > Payment Rules they will be available here
Payment Due Set when the payment is due

Create a Payment Rule to collect a payments when bookings are not cancelled.

Go to Settings > Payments > Payment Rules

Payment Rule

Setting Value
Name Enter your title - Not Cancelled (for example)
Action Auto

Payment Trigger

Setting Value
Booking Status All not cancelled
Any Booking Info Code optional
All Booking Info Codes optional
Exclude Booking Info Code Optional (can exclude Virtual Credit cards, find the Booking info code in the booking)

Payment Action

Setting Value
Capture Yes - immediately charged (Capture=Yes)
Add info code on success Add a Booking Info item to the booking on success
Add info code on failure Add a Booking Info item to the booking on failure
Collect the outstanding balance 3 days before arrival (card collected at booking)

Create a Payment Rule (Optional)

Standard payment rules in the system are Auto & Manual, you can create additional rules for the collection of outstanding payments, you can control the collection of payments if the booking status is changed, for example the booking is cancelled before the final payment is due to be collected.

Go to Settings > Payments > Payment Rules

Create a Payment Rule to collect payments if bookings are not cancelled.

Click Create New Payment Rule :

Payment Rule

Setting Value
Name Enter your title - Not Cancelled (for example)
Action Auto

Payment Trigger

Setting Value
Booking Status All not cancelled
Any Booking Info Code Optional
All Booking Info Codes Optional
Exclude Booking Info Code Optional (can exclude Virtual Credit cards, find the Booking info code in the booking)

Payment Action

Setting Value
Funding Source Guest card only
Payment value adjustment Limit to group booking balance
Capture Yes - immediately charged (Capture=Yes)
Add info code on success Add a Booking Info item to the booking on success
Add info code on failure Add a Booking Info item to the booking on failure

Prevent Auto Payment

Setting Value
Prevent payment if booking status Cancelled
Prevent payment after check-out (days) 7 (default)
Prevent payment action Set Manual

Create Auto Actions

Collect the outstanding balance for bookings created via your booking page.

Go to Settings > Guest Management > Auto Actions and click Create New Action to create them.

Collect outstanding balance for direct bookings

Trigger tab

Setting Value
Trigger Event Checkin
Trigger Time -3 days (set the time you want to collect the payment)
Time Window 3 days (set this to the same number (positive) as Trigger time.
Booking Source Direct. You can have different auto actions/rules for direct bookings -v- channel bookings, then select ‘Direct’ this will include manually created bookings and booking page bookings.
Group Booking Trigger Trigger only Master
Status All not cancelled
Invoice Balance Not Zero (can be used to refine the auto action being triggered)

Booking tab (optional)

Setting Value
Flag Text Pending payment added (for example)
Flag Colour Select the colour as this will be visible in the Calendar/Bookings list

Booking Info tab (optional)

for information and reporting

Setting Value
Booking Info Code BALANCE (for example enter the value - use one word only)
Booking Info Text Enter the description/text to show in for the Booking Info Code.

Invoice tab

Note:

Note: ONLY use Payment Type =‘ Percent of Group balance due’ if you selected Trigger tab > Booking Conditions > Group Booking Trigger = Trigger Only Master.

  • Add a Pending Payment to the booking
Setting Value
Payment Type Percent of Group Balance due (select on what the payment is calculated)
Description The text you will see in the "Charges and Payments" tab
Status If you use the status function add the status you want to apply to the pending payment (optional)
Amount 100 (this will be 100% of the outstanding group balance)
Payment Rule Not Cancelled - See Step 4 above (if you have set up payment rules in Settings > Payments > Payment Rules they will be available here)
Payment Due Trigger date
Payment time Set the time to collect payment
Invoicee If you use the "invoicee" function you can select which invoicee the pending payment will be assigned to.
Capture a security deposit when the card is collected at booking

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time immediate
Booking Source All (for example, you can also set different rules for different channels)
Any Booking Info Code CARDTOSTRIPE

Invoice tab

Setting Value
Payment Type Fixed amount
Description Security Deposit (the text you will see in the "Charges and Payments" tab)
Status If you use the status function add the status you want to apply to the pending payment (optional)
Amount 100 (balance is full price so 100% of the balance)
Payment Rule Security Deposit (Create a Payment Rule, see below)
Payment Due Check in

Note: Automatic collection is only available for customer who use Stripe.

Create a Payment Rule to 'Capture' a payment only. Captured payments will only be valid for 7 days, then it will expire, if the booking is for a longer period, then you can create a second Capture, you will need to create another auto action for this.

Go to Settings > Payments > Payment Rules

Payment Rule

Setting Value
Name Enter your title - Security Deposit (for example)
Action Auto

Payment Trigger

Setting Value
Booking Status Select from the drop down list
Any Booking Info Code optional
All Booking Info Codes optional
Exclude Booking Info Code Optional (can exclude Virtual Credit cards, find the Booking info code in the booking)

Payment Action

Setting Value
Capture Yes/No - immediately charged (Capture=Yes), if you want to make sure that the amount is available for later capture (Capture=No)
Add info code on success Add a Booking Info item to the booking on success
Add info code on failure Add a Booking Info item to the booking on failure
Apply an info code and/or icon when a payment is made

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 365
Booking Source All
Booking Status All but not cancelled
Invoice Balance Any Payment made

Booking Info tab

Setting Value
Booking Info Code Enter the preset code for the icon or info code which you have created in Settings > Account > Preferences.
Booking Info Text Enter the text you wish to show
Process Template Variables When created
Automatically apply invoice number at check-out

Predefined template: available when you click Add New Action.

Trigger tab

Setting Value
Trigger Event Check-out
Trigger Time Immediate
Time window 1 day
Status Confirmed
Any Booking Info Code CHECKOUT (optional only if you use the check-out function)

Invoice tab

Setting Value
Assign Invoice Number yes
Using Pending Payments as a Payment Reminder

Trigger tab

Setting Value
Trigger Event Booking or Booking (but not after Check-in)
Trigger Time Set the time you want to add the pending payment to the booking
Booking Source All (for example, you can also set different rules for different channels)

Booking Info tab

  • Optional, add a booking info tab for information and reporting

Booking tab (optional)

Setting Value
Flag Text PaymentDue1 (for example), set multiple if multiple payments are required.
Flag Colour Select the colour as this will be visible in the Calendar/Bookings list

Invoice tab

Setting Value
Payment Type Select on what the payment is calculated (Percent of Balance due)
Description The text you will see in the "Charges and Payments" tab
Status If you use the status function add the status you want to apply to the pending payment (optional)
Amount Enter the amount or percentage you want to collect
Payment Rule Manual - if you have set up payment rules in Settings > Payments > Payment Rules they will be available here
Payment Due Set when the payment is due

The Pending Payment Report is available in Bookings > Pending Payments. This report can be used to see outstanding pending payments, this can be used to see all outstanding payments, when payment gateways other than Stripe are used, the Pending Payments report can be used to see outstanding payments and a checklist for bank transfers.

Test if Stripe Authorisation has expired and you need to trigger a new authorisation

Stripe authorisations are dependent on a number of factors including your account type, credit card provider, Stripe rules and the guest bank provider.

If you have bookings that are longer than the authorisation period, you will need to create multiple authorisations. You can use the details below in an auto action to test the date/value of the text/description of the Booking info code = 'STRIPEAUTHORIZE'

For example you have a booking that is for 14 nights, but the authorisation period is 7 days.

Trigger tab

Setting Value
Trigger Event Checkin
Trigger Time + 7 days
Trigger Window 365
Booking Source All
Booking Status All but not cancelled
Group Booking Trigger Trigger only Master
Status All not cancelled
Invoice Balance Any
Minimum Stay 7
Maximum Stay 14
Any booking info code CARDTOSTRIPE, STRIPEAUTHORIZE
Exclude Booking Info code BOOKINGVIRTCARD, EXPEDIACOLLECT, AGODACOLLECT

Tip: If you receive virtual credit cards from the channels, then enter the Booking Info codes to prevent additional pending payments being added to bookings.

Setting Value
Template Variable [IF<^[AUTHORIZEUNTIL{%Y-%m-%d}]^[CURRENTDATEYYYY-MM-DD]^yes~no] equal yes

The entry in the info tab of the booking will typically be

STRIPEAUTHORIZE Authorize 1500.00 EUR until 2024-08-14........

Check the substring numbers for your specific bookings, the date starts on the 28th char as the amount is 1500.00

Booking tab (optional)

Setting Value
Flag Text Security Deposit Pending Payment (for example)
Flag Colour Select the colour as this will be visible in the Calendar/Bookings list

Booking Info tab

If you do not require an auto action to send a payment link to the guest for payment/authorisation, then this is optional.

Setting Value
Booking Info Code REFDEPPP (for example)
Booking Info Text Refundable Security Deposit pending payment

Invoice tab

  • Add a Pending Payment to the booking
Setting Value
Payment Type Fixed amount
Description The text you will see in the "Charges and Payments" tab
Status If you use the status function add the status you want to apply to the pending payment (optional)
Amount 1500 (enter the value you want to authorise on the guest credit card )
Payment Rule Security Deposit (use the payment rule)
Payment Due Trigger date
Payment time Set the time to collect payment
Invoicee If you use the "invoicee" function you can select which invoicee the pending payment will be assigned to.

Tip: If you accept Virtual Credit Cards from the channels, then you will need to send a payment link to either collect the guest credit card to then authorise the Security Deposit on their personnel card OR send a payment link so the guest can authorise the payment on their own credit card, it is not possible to take a Security deposit from a virtual card.

Booking flags and colours

Apply a flag when a booking is cancelled

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time 1 Hour
Trigger Window 365 days
Booking Status Cancelled

Booking tab

Setting Value
Execution One time only
Booking Status No Change
Flag text (enter the text you require)
Flag Colour 999999 default cancel colour - (Set as required)
Apply a flag to channel bookings with breakfast included

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Booking Source Booking.com (for example)
Booking Field Contains Select "API Message" in the next field enter: meal_plan=Breakfast (or Extra Breakfast - use the text the channel uses)

Booking tab

Setting Value
Execution One time only
Flag Text The text you want to display
Flag Colour Choose the flag colour

Booking changes are applied before the mail is sent so that the flag template variable can be reflected in the Email.

Apply a flag to bookings with breakfast as a charge item

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Booking Source Booking.com (for example)
Template Variable [IF>:[INVOICEITEMBYDESC:Breakfast]:0:yes|no] (Text for Breakfast has to match EXACTLY what is in the booking item Uppercase/Lowercase/Proper)
  • Select 'equal' from the selection box
  • yes (needs to be exactly the same text/upper/lowercase, as in the equation)

Booking tab

Setting Value
Execution One time only
Flag Text Breakfast
Flag Colour Choose the flag colour

Booking Info tab

Setting Value
Booking Info Code BREAKFAST
Booking Info Description Breakfast included
Apply a flag when deposit was made prior to Check-in

Trigger tab

Setting Value
Trigger Event Check-in
Trigger Time -365 (for example : must be a negative value and the same as the value in Trigger window)
Trigger Window 365
Booking Source All
Booking Status All but not cancelled
Invoice Balance Any Payment made

Message tab

Setting Value
Send Message Select appropriate option
Enter Subject and Email content

Booking tab (optional)

Setting Value
Execution One time only
Flag Text The text you want to display
Flag Colour Choose the flag colour

Booking Info tab (optional)

Setting Value
Booking Info Code DEPOSITPAID (for example)
Booking Info Text Additional text if required.

Setting details with the Booking tab and Booking info tab allows you to trigger additional (follow on) Auto Actions and Reports.

Apply a flag when booking is fully paid

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 365
Booking Source All
Booking Status All not cancelled
Invoice Balance ZERO

Booking tab

Setting Value
Execution One time only
Flag Text The text you want to display
Flag Colour Choose the flag colour
Apply a flag/colour for a booking coming from a certain channel

Predefined template: available when you click Add New Action.

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Booking Source Booking.com (for example)

Booking tab

Setting Value
Execution One time only
Flag Text The text you want to display
Flag Colour Choose the flag colour

Booking changes are applied before the mail is sent so that the flag template variable can be reflected in the email.

Apply a flag when NO payment is made

Predefined template: available when you click Add New Action.

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 1 day
Booking Source All
Booking Status All not cancelled
Invoice Balance No payment made

Booking tab

Setting Value
Execution One time only
Flag Text Not Paid
Flag Colour fee0dd
Apply a flag when a payment was made

Tip: Also see Example : " Apply a flag when deposit was made prior to Check-in AND/OR Apply a flag when booking is fully paid".

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Trigger Window 365
Booking Source All
Booking Status All not cancelled
Invoice Balance Any Payment made

Booking tab

Setting Value
Execution One time only
Flag Text The text you want to display
Flag Colour Choose the flag colour
Apply a flag when a payment FAILS at Stripe

Predefined template: available when you click Add New Action.

Trigger tab

Setting Value
Trigger Event Booking (but not after check-in)
Trigger Time Immediate
Trigger Window 999
Booking Source All
Booking Status All but not cancelled
Booking Info Code STRIPEFAIL, CARDFAILSTRIPE

Booking tab

Setting Value
Execution One time only
Flag Text Stripe Payment Failed
Flag Colour fee0dd
Apply a flag to Booking.com bookings and auto report the Credit Card when a payment FAILS at Stripe

Go to Settings > Channel Manager > Preferences and set Auto report failed cards = Yes

Trigger tab

Setting Value
Trigger Event Booking (but not after checkout)
Trigger Time Immediate
Trigger Window 999
Booking Source Booking.com
Booking Status All not cancelled
Booking Info Code BOOKINGCOMCARD

Booking tab

Setting Value
Execution One time only
Flag Text Failed CC reported to Booking.com
Flag Colour Choose the flag colour
Apply a flag when booking has been Checked-in

Trigger tab

Setting Value
Trigger Event Check-in
Trigger Time Immediate
Trigger Window 1 day
Booking Source All
Booking Status All but not cancelled
Any booking info code CHECKIN

Booking tab

Setting Value
Execution One time only
Flag Text Guest checked in (or any text you want to see)
Flag Colour Choose the flag colour

Status changes

Change the status of all "Request" bookings to "Cancelled" after three days

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time 3 days
Booking Status Request

Booking tab

Setting Value
Execution One time only
Booking Status Cancelled
Change the status of Airbnb "Inquiry" bookings to "Cancelled" after three days

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time 3 days
Booking Status Inquiry
Booking Source Airbnb

Booking tab

Setting Value
Execution One time only
Booking Status Cancelled
Change the booking status from Inquiry to Confirmed when the payment is made

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time 365 days
Booking Status Inquiry
Booking Source ALL
Invoice Balance Any payment Made

Booking tab

Setting Value
Execution One time only
Booking Status Cancelled
Change the status of all bookings imported from iCal to "Request"

Trigger tab

Setting Value
Trigger Event Booking
Trigger Time Immediate
Booking Source Ical Import (1, 2, 3)

Booking tab

Setting Value
Execution One time only
Booking Status Request

Booking changes are applied before the mail is sent.

Change Room Unit Status when guest checks out

Trigger tab

Setting Value
Trigger Event Check-out
Trigger Time Immediate
Trigger Window 1 day
Booking Status All but not cancelled
Any Booking Info Code CHECKOUT

Booking tab

Setting Value
Execution One time only
Change Room Unit Status Select the option

It is assumed you use the Checkin/Checkout feature in the Dashboard, if not you can either manually add Checkin to your bookings (Booking info tab) or create an auto action to add the Booking Info Codes to the bookings.

API and webhooks

Use API/Webhook to write to the field 'Message'

Use a webhook with the API JSON function setBooking to write to any field in the booking. This example appends text to the booking's Message field.

Step 1: Set up API access

You need two keys to use the API JSON functions: one for the API and one for the property. Each key is 16 characters of your choosing.

API key, in Settings > Account > Account > Access ("API Key 1"):

Setting Value
API Key my_very_secret_api_key
API Key Access Allow any IP
IP Whitelist Leave empty
Allow Writes Yes
Property Access Owned by this account only

Property key, in Settings > Properties > Access: propKey = secret_key_for_prop_XXXXXX

Step 2: Create the Auto Action

Trigger tab: set the triggers you need, for example Booking Field Contains: Message = XXX.

Webhook tab

Setting Value
URL https://api.beds24.com/json/setBooking
Custom Header Leave empty
Body Data See the code below
{
  "authentication":
  {
    "apiKey": "my_very_secret_api_key",
    "propKey": "secret_key_for_prop_XXXXXX"
  },
  "bookId": "[BOOKID]",
  "message": "[MESSAGE] - Append this message"
}
Use API/Webhook to write the value of the 'commission' field to a new invoice item

Use a webhook with the API JSON function setBooking to create a new invoice item. This example writes the value of the booking's [COMMISSIONNUM] (the channel commission) to a new invoice item as a negative price, so it's subtracted from the room price.

Step 1: Set up API access

You need two keys to use the API JSON functions: one for the API and one for the property. Each key is 16 characters of your choosing.

API key, in Settings > Account > Account > Access ("API Key 1"):

Setting Value
API Key my_very_secret_api_key
API Key Access Allow any IP
IP Whitelist Leave empty
Allow Writes Yes
Property Access Owned by this account only

Property key, in Settings > Properties > Access: propKey = secret_key_for_prop_XXXXXX

Step 2: Create the Auto Action

Trigger tab: set the triggers you need, for example Booking Source = Booking.com.

Webhook tab

Setting Value
URL https://api.beds24.com/json/setBooking
Custom Header Leave empty
Body Data See the code below
{
  "authentication":
  {
    "apiKey": "my_very_secret_api_key",
    "propKey": "secret_key_for_prop_XXXXXX"
  },
  "bookId": "[BOOKID]",
  "invoice":
  [
    {
      "description": "Booking.com Commission",
      "status": "",
      "qty": "1",
      "price": "-[COMMISSIONNUM]",
      "vatRate": "7.00",
      "type": "0",
      "invoiceeId": ""
    }
  ]
}
Use a webhook to send data to Make (Integromat)

Send booking data to your Make (formerly Integromat) account with a webhook.

Trigger tab: set the rules for when the data is sent to Make.

Webhook tab

Setting Value
URL https://hook.integromat.com/ followed by your Integromat account key
Body Data The template variables from the list of data fields in Make, for example the code below
bookingData={
"bookId":"[BOOKID]",
"guestMobileNum":"[GUESTMOBILENUM]",
"guestMobile":"[GUESTMOBILE]",
"guestSMS":"[GUESTSMS:44]",
"guestFirstName":"[REPLACE|&|and|[GUESTFIRSTNAME]]",
"propertyName":"[PROPERTYNAME]",
"propertyId":"[PROPERTYID]",
"firstNight":"[FIRSTNIGHTSHORT]",
"lastNight":"[LEAVINGDAYSHORT]"
}
Use a webhook to switch a Shelly on

Switch a Shelly device through an Auto Action with a simple PHP script, for example to switch on a string of lights on the day of arrival, or to charge the night storage heating the day before arrival when a certain info code is set in the booking.

Create an Auto Action and enter the URL of the PHP script beds24-shelly-steuern.php on the Webhook tab. Enter the control parameters in Data in body:

id:b0b21c1xxxxx
shelly_server:shelly-123-eu.shelly.cloud
auth_key:ABCDEFGHIJKLMNPQRSTUVWXYZABCDEFGHIJKLMNPQRSTUVWXYZABCDEFGHIJKLMNPQRSTUVWXYZ
shelly_url:device/relay/control
parameter:channel=0&turn=on
email_result:egal@gmail.de
remarks:Text, z.B. mit Template Variablen [GUESTFULLNAME] und [BOOKID]
Switch a Shelly on (script version 2)

Version 2 of the PHP script switches a Shelly device through an Auto Action. You can store the device IDs in the script instead of the body parameters, so one Auto Action can switch the right device for each room: the device ID is looked up with the template variable [INTERNALROOMNAME]. The comments in the script are in German.

<?php
/* 
 * - Anschalten der Lichterkette aus beds24 mit einem PHP Skript über die Shelly Cloud -
 * Version 2 vom 10.12.2024 - mehrere Devices im Array im Skript möglich

 * https://domainname.de/scripte/beds24-shelly-steuern-v2.php

 * curl -X POST https://shelly-123-eu.shelly.cloud/device/relay/control -d "channel=0&turn=on&id=b0b21c123456&auth_key=abcdefghijklmnopqrstuvwxyz1234567890"

 * Einstellungen in beds24
 * - in einer Autoaction unter 'Webhook' das Script eintragen: https://domainname.de/pfad_zum_script/beds24-shelly-steuern-v2.php
 * - alternativ wenn Geräte-Id überINTERNALROOMNAME im Skript selbst: https://domainname.de/pfad_zum_script/beds24-shelly-steuern-v2?roomname=[INTERNALROOMNAME]
 * - unter 'Daten im Body' die Parameter zur Steuerung eintragen:
 * - id:<Shelly Geräte-Id>     ===> alternativ mehrere Geräte-Id im Skript selbst
 * - shelly_server:<Shelly Cloud Server>
 * - auth_key:<Shelly Cloud-Autorisierungs-Schlüssel>
 * - parameter:<Shelly Befehle>
 * - email_result:<*optional* e-mail für Empfänger des Schaltergebnisses>
 * - remarks:<*optional* beliebige Anmerkungen für E-Mail>

 * Beispiel:
 * id:b0b21c123456
 * shelly_server:shelly-123-eu.shelly.cloud
 * auth_key:abcdefghijklmnopqrstuvwxyz1234567890
 * shelly_url:device/relay/control
 * parameter:channel=0&turn=on
 * email_result:abcde@xyz.de
 * remarks:Text, auch mit Template Variablen [GUESTFULLNAME] und [BOOKID]/[INTERNALROOMNAME] möglich
 */

/* ----------------------------------------------------------- */
/* Parameter & Einstellungen */
/* ----------------------------------------------------------- */
/* Shelly Geräte-ID entweder beim Aufruf in beds24 über die 'Daten im Body' übergeben oder hier im Skript eintragen. Wenn im Script, dann beim Aufruf die Templatevariable [INTERNALROOMNAME] mitgeben, über die erfolgt dann die Auswahl hier im Array */
$p_geraete_ids = array (
	"chalet" => "e465b8123456",
	"fewo" => "b0b21c123456",
	"linx" => "e465b8123456"
	);

$p_test = false; /* im Testmodus kommen die Parameter direkt aus dem Script statt über beds24 */
/* Body Daten zum direkten Testen d.h. Direktaufruf des Scripts ohne Autoaction */
$test_body = array(  /* zum direkten Aufruf des Scripts die Parameter hier testweise eintragen */
/* https://shelly-api-docs.shelly.cloud/cloud-control-api/communication */
	"id" => "xxx",    /* rausnehmen, wenn ids über Array kommen sollen */
	"shelly_server" => "shelly-123-eu.shelly.cloud",
	"auth_key" => "abcdefghijklmnopqrstuvwxyz1234567890",
	"shelly_url" => "device/relay/control",
	"parameter" => "channel=0&turn=on", 
	"email_result" => "abcde@xyz.de",
	"remarks" => "Text, z.B. mit Template Variablen [GUESTFULLNAME] und [BOOKID]"
	);

/* ----------------------------------------------------------- */
/* ab hier normalerweise keine Änderungen mehr vornehmen
/* ----------------------------------------------------------- */
$hf_internalroomname = filter_var($_GET["roomname"], FILTER_SANITIZE_STRING);   /* wenn über ?roomname=[INTERNALROOMNAME] übergeben

/* Body aus Post message lesen und in Variablen $body[keyname] einlesen */
if ($p_test == false ) {
	$hf_body = explode( "\n", file_get_contents('php://input') );
	$body = array();
		foreach ($hf_body as $v) {
			list($body_key,$body_value) = explode( ':', $v );
			$body[$body_key] = $body_value;
		}
}
else {
	$body = $test_body; /* im Testmodus Parameter direkt aus dem Script nehmen */
}

ob_start(); /* Bildschirmausgabe buffern */

/* wenn übergeben, dann Geräte-ID aus den body-parametern übernehmen, ansonsten über [INTERNALROOMNAME] ermitteln */
if ( $body["id"]) {                       /* in Body Parameter gesetzt */
	$hf_geraete_id = $body["id"];
} else {
	$hf_geraete_id = $p_geraete_ids[$hf_internalroomname];    /* Geräte-Id aus Skript Array nehmen */
}	


/* Prüfen ob wichtige Argumente übergeben */
if ( isset($body["shelly_server"]) == false ) { echo("Argument shelly_server fehlt, z.B.: shelly_server:servername<br>"); $body["shelly_server"] = "fehlt";}
if ( isset($body["shelly_url"]) == false ) { echo("Argument shelly_url fehlt, z.B. : shelly_url:device/relay/control<br>"); $body["shelly_url"] = "fehlt";}
if ( isset($body["parameter"]) == false ) { echo("Argument parameter fehlt, z.B.: parameter:channel=0&turn=on><br>"); $body["parameter"] = "fehlt";}
if ( isset($body["auth_key"]) == false ) { echo("Argument auth_key fehlt, z.B.: auth_key:abcdefghijklmnopqrstuvwxyz1234567890<br>"); $body["auth_key"] = "fehlt";}

$url = 'https://'.$body["shelly_server"].'/'.trim($body["shelly_url"], " /");
$ch=curl_init();
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); /* Zertifikatswarnung übergehen */
curl_setopt($ch, CURLOPT_SSL_VERIFYSTATUS, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_PROXY_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS,
            $body["parameter"]."&id=".$hf_geraete_id."&auth_key=".$body["auth_key"]);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
curl_setopt($ch, CURLOPT_URL, $url);
$result = curl_exec($ch);
curl_close ($ch);

if ( $body["remarks"] ) {   /* Anmerkungen fürs Protokoll/E-Mail ausgeben */
	echo ("<br>".$body["remarks"]."<br>"); 
	};

$output = ob_get_contents(); /* Bildschirmausgabe aus Buffer lesen */
ob_end_clean(); 
 
echo $output; 

if ( $body["email_result"] ) {
	mail($body["email_result"], 'Ergebnis Shelly Skript - Device: '.$hf_geraete_id, $output, 'From: beds24 Shelly Script <'.$body["email_result"].'>');	
    echo ("<br>Mail an: ".$body["email_result"]);
}
?>

Modified bookings

Use Template Variables to test for Modified bookings

You can test if the booking has been modified, adding a booking info code to the booking will then allow you to trigger other auto actions, run reports etc.

Trigger tab

Setting Value
Trigger Event Booking (but not after Check-in) OR Booking
Trigger Time 1 day (this will ensure that NEW bookings do not trigger this auto action)
Time Window 365 days
Booking Status All not cancelled
  • Template Variables [IF>^[MODIFYDATE:{%Y-%m-%d %H:%M:%S}]^[CURRENTDATE:-1day{%Y-%m-%d %H:%M:%S}]^yes~no] equal yes

Booking tab (optional)

Setting Value
Flag text (enter the text you require)
Flag Colour Set as required

Booking Info tab (optional)

Setting Value
Booking Info Code MODIFIED
Booking Info Text Booking modification

Related Articles

Was this article helpful?
0 out of 0 found this helpful

How to Contact us :