Changes

Jump to navigation Jump to search

Auto Actions

8,089 bytes added, 16:24, 21 May 2023
== Setup ==
Automatic actions will trigger every 15/20 minutesThe auto action batch process runs multiple times per hour.
Go to {{#fas:cog}} (SETTINGS) GUEST MANAGEMENT -> AUTO ACTION
Other files can not be attached. We recommend you use a link to a file you upload to your web site.
 
===HTML and Templates===
If you use HTML you will need to make sure your code is correct and clean otherwise it might trigger our firewall.
 
HTML messages created by third party services is often convoluted and might contain critical content. Some tools like https://stripo.email/ or https://www.designedwithbee.com/ that allow you to create your own templates and also provide many templates have tested to work well in Beds24.
=== SMS ===
<span style="color: #f3e504; font-size: 150%;" >{{#fas:lightbulb}} </span> This filter will not apply if you are triggering on a single property.
 
== Using Smart Logic Template Variables ==
You can use smart logic template variables to trigger auto actions for specific conditions.
 
If you want to send a message on a specific day of the week :-
 
1) You need to send a message to remind the guests to put the rubbish bin out for collection on a Wednesday night.
* [IF=:[CURRENTDATE:{%u}]:3:yes|no] will test if the current date is a Wednesday
 
2) Remind the guest that the cleaning lady will be at the apartment on Friday morning.
 
* [IF=:[CURRENTDATE:{%u}]:4:yes|no] will test if the current date is a Thursday
 
%u ISO-8601 numeric representation of the day of the week 1 (for Monday) through 7 (for Sunday)
== Performance and Testing ==
Auto actions will test up to 1000 bookings per cycle, if your trigger condition involves more than 1000 bookings, the next 1000 will be tested on the next cycle etc.
If you require the fastest speed make sure , ensure your trigger is designed to test less than 1000 bookings.
The easiest way to do this is usually by reducing the testing window to the smallest necessary and adjusting the trigger condition to the most suitable.
For example a trigger that tests all bookings from booking time for 1 year will test many bookings while a trigger that tests only the 7 days before check-in will test less bookings and perform faster.
The test tab of the auto action has a button which that will show you how many and which bookings are being tested by the auto action.
It is also possible to specify a booking number and test if the auto action would trigger on that booking with some diagnostics information shown to help trouble shooting.
 
'''Optimising your auto actions''' You can trigger multiple actions in one auto action,
*send an email/api message to the guest,
*send an SMS, update booking settings,
*add/delete a booking info code,
*trigger a webook,
*add a pending payment,
*update/add/delete a Charge/Payment item,
*assign an invoice number.
 
There is no requirement to set an individual auto action for each item if they can all apply at the same time.
 
<span style="color: #f3e504; font-size: 150%;" >{{#fas:lightbulb}} </span> '''It is not possible to specify a specific time for the auto action to trigger.''' The use of the Trigger time 'Immediate' + 14 hrs (for example) will not trigger the auto action at 2pm local time, this will be the first time the booking could be checked to see if all other conditions are met, and added to the batch for processing.
== Troubleshooting ==
<div class="headline-collapse" >
====Send an Email with a key code for a specific unit one day before check-in(Self Checkin)====
</div>
<div class="mw-collapsible-content">
<div class="headline-collapse" >
====Send an Email in email to the guests language to an internal Email guest email address when a payment FAILS at Stripe====
</div>
<div class="mw-collapsible-content">
This uses a smart template variable. In this example we check whether the guest booked in French. If yes Trigger tab:*Trigger Event = After Booking*Trigger Time = Immediate*Trigger Window = 365*Booking Source = All*Booking Status = All but not cancelled*Booking Info Code = STRIPEFAIL, then we send a French text. If no, we send an English text.CARDFAILSTRIPE
'''Trigger Message tab:'''Update details as appropriate*Send Message = Booking API and Email Smart: If the "Mail & Actions" tab contains a "real" Email address the message is sent to the guests Email address.If only a masked Email address is available the message sends via the channels API messaging systems if possible. If no connection to a messaging system is available the message will send to the Email address from the "Mail & Actions" tab of the Email. Messages to the Email address entered in the field "Internal" are sent via Email.
Time:*Trigger Event = Booking*Trigger Time = Immediate*Trigger Window = 1Plain text box (Using Message API)
Booking SourceSubject - enter the subject for your GuestsPlain Text Message :*Booking Source = All (for example)- enter the Message text you wish to send to your guests including the payment link
Booking Conditionshttps:*Booking Status //beds24.com/bookpay.php?bookid= All Not Cancelled[BOOKID]
Booking Fields:You can find extra options to add to the payment link if you want to refine the details *Booking Field Contains - select "Language" in the next field enterhttps: the short code for the language this Auto Action is for//wiki.beds24.com/index.php/Category:Payments#Payment_Request
'''*HTML Message tab(Send Email) Email Subject - enter the subject for your GuestsEmail Text :'''- enter the Email text you wish to send to your guests include template variable Enter [PAYLINK] this creates a payment link (HTML A tag) for the message payment request for the amount in the appropriate language under your default languagebooking deposit field if non zero, otherwise the outstanding balance. Check the template variables for other options.
'''Booking tab:'''*Send Message Execution = Internal OnlyOne time only*Internal Email Address Flag Text = enter the email address this message should be sent The text you want to.display*Email Subject Flag Colour - enter choose the subject for your Guestsflag colour *HTML box - Email will be Booking changes are applied before the mail is sent *Email Text :- Template variables so that the flag template variable can be used reflected in the messageEmail. [[Template_Variables| See here]]
</div>
<div class="mw-collapsible mw-collapsed">
<div class="headline-collapse" >
====Send SMS an Email in a certain language (if it is the language of the booking) or a default guests languageto an internal Email address ====
</div>
<div class="mw-collapsible-content">
This uses a smart template variable. In this example the auto action will trigger on Booking and for 1 day, we check whether the guest booked in French. If yes, then we send a French text. If no, we send an English text.
'''Trigger tab:'''  Set the rules to when this Auto Action should trigger.
Time:
*Booking Status = All Not Cancelled
Booking Fields:
*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.
 
*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 - Email will be sent
 
*Email Text :- Template variables can be used in the message. [[Template_Variables| See here]]
'''SMS tab:'''
*Phone Number = [GUESTMOBILE]
*SMS Message = [IF=:[GUESTLANGUAGE]:fr:French_text|English_text]
</div>
</div>
<div class="headline-collapse" >
====Send Remotelock/Lockstate, Nuki PIN SMS in a certain language (if it is the language of the booking) or Chekin Link 2 days before Check-in a default language====
</div>
<div class="mw-collapsible-content">
'''Trigger tab:'''This uses a smart template variable. In this example the auto action will trigger on Booking and for 1 day, we check whether the guest booked in French. If yes, then we send a French text. If no, we send an English text.
Time'''Trigger tab:-*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'''
Set the rules to when this Auto Action should trigger. Time:*Trigger Event = Booking*Trigger Time = Immediate*Trigger Window = 1 Booking Source:*Booking Source = All (for example) Booking Conditions:*Booking Status = All Not Cancelled  '''SMS tab:'''*Phone Number = [GUESTMOBILE]*SMS Message = [IF=:[GUESTLANGUAGE]:fr:French_text|English_text]</div></div> <div class="mw-collapsible mw-collapsed"><div class="headline-collapse" > ====Send Remotelock/Lockstate, Nuki PIN or Chekin Link 2 days before Check-in (Self Checkin) ====</div><div class="mw-collapsible-content">'''Trigger tab:''' Time:-*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 Souce :- *Booking Source = All*Booking Status = All but not cancelled
Booking Conditions:-
Enable list, untick all channels, leave only 'beds24.com' for your booking page.
'''Step 3: ''' Create the custom question for the booking id Go to {{#fas:cog}} (SETTINGS) > PROPERTIES > BOOKING QUESTIONS > CUSTOM QUESTIONS and create a question*Question = Booking Id*Single Line field*Optional '''Step 4: ''' Create the Auto Action
Trigger Tab :-
If you would like a late checkout, please use this link to make the booking and payment.
https://beds24.com/booking2.php?checkinpropid=[PROPERTYID]&checkin_hide=[LEAVINGDAYYYYY-MM-DD]&br7br5-[ROOMID]=Book
<span class="" style="color: #f3e504; font-size: 150%;" >{{#fas:lightbulb}} </span> The details in the URL, will direct the guest to make a new booking in the existing room with the check-in date = leaving date and for Offer 7 &br-7 (offer created in Step 1 above)
</div>
===Send an email to the Owner/Internal email address ===
<div class="mw-collapsible mw-collapsed">
<div class="headline-collapse" >  ====Send an email Email to the Owneryour guest - On a Wednesday (Cleaner is due/Internal email address when a payment FAILS at StripeRubbish Collection is due) ====
</div>
<div class="mw-collapsible-content">
To send an automated Email to the guest reminding them that there is an event on a specific day of the week, for instance, the cleaner is due on Wednesday mornings, or the bin collection is due on Thursday mornings.  You will need to check for the day of the week. If the booking is for more than 1 week, you will need multiple auto actions as an email will only be sent once, it is not possible to trigger multiple times.  '''Step 1: ''' Create the Auto Action Trigger tabTab :- *Trigger Event = After BookingCheckin*Trigger Time = Immediate*Trigger Window = 3658 days*Booking Source = All
*Booking Status = All but not cancelled
*Booking Info Code = STRIPEFAIL, CARDFAILSTRIPE
Messaging tab:*Send Message Template Variables = Internal*Internal Email Address [IF= enter the email address to receive the notification*Subject = Failed Stripe Payment*HTML Box = Enter the text to be sent, you can use template variables in this message, for example :[CURRENTDATE:{%u}]:3:yes|no] equal yes
[BOOKID] %u ISO- booking reference number[GUESTNAMES] - name 8601 numeric representation of all guests in the booking on the "summary" tab day of the booking[FIRSTNIGHT][LASTNIGHT]week 1 (for Monday) through 7 (for Sunday)
This template variable tests if the current day is a Wednesday.  Message tab :- *Send Email = Guest API/Smart Email (or one of the other options)*EMail Subject = Enter the appropriate details *Email Text = Your text, using the template variables to modify the specific text in the booking. Enter the text in both Plain text Box (Messaging API) and HTML Box (Emails) 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*Booking Info code = CLEANWED1*Booking Info text = Reminder that cleaning is due on the first Thursday of their stay.  This can be used to trigger the next auto action if the duration of their holiday is more than 1 week. Include the Booking Info code in the Trigger tab of the next auto action.  </div></div> ===Send an email to the Owner/Internal email address ===<div class="mw-collapsible mw-collapsed"><div class="headline-collapse" > ====Send an email to the Owner/Internal email address when a payment FAILS at Stripe====</div><div class="mw-collapsible-content"> Trigger tab:*Trigger Event = After Booking*Trigger Time = Immediate*Trigger Window = 365*Booking Source = All*Booking Status = All but not cancelled*Booking Info Code = STRIPEFAIL, CARDFAILSTRIPE Messaging tab:*Send Message = Internal*Internal Email Address = enter the email address to receive the notification*Subject = Failed Stripe Payment*HTML Box = Enter the text to be sent, you can use template variables in this message, for example  [BOOKID] - booking reference number[GUESTNAMES] - name of all guests in the booking on the "summary" tab of the booking[FIRSTNIGHT][LASTNIGHT] Booking tab: (optional)*Execution = One time only*Flag Text = Stripe Payment Failed*Flag Colour - choose the flag colour</div></div> <div class="mw-collapsible mw-collapsed"><div class="headline-collapse" > ====Send an email to the Owner/Internal email address when a guest completes a Payment Authorisation at Stripe====</div><div class="mw-collapsible-content"> Trigger tab:*Trigger Event = After Booking*Trigger Time = Immediate*Trigger Window = 365*Booking Source = All*Booking Status = All but not cancelled*Booking Info Code = STRIPEAUTHORIZE Messaging tab:*Send Message = Internal*Internal Email Address = enter the email address to receive the notification*Subject = Stripe Payment Authorisation*HTML Box = Enter the text to be sent, you can use template variables in this message, for example  [BOOKID] - booking reference number[GUESTNAMES] - name of all guests in the booking on the "summary" tab of the booking[FIRSTNIGHT][LASTNIGHT] Booking tab: (optional)*Execution = One time only*Flag Text = Stripe Authorised*Flag Colour - choose the flag colour</div></div> <div class="mw-collapsible mw-collapsed"><div class="headline-collapse" > ====Send an email to the Owner/Internal email address for a new booking====</div><div class="mw-collapsible-content"> Trigger tab:*Trigger Event = After Booking*Trigger Time = Immediate*Trigger Window = 1 day*Booking Source = All*Booking Status = All but not cancelled Messaging tab:*Send Message = Internal*Internal Email Address = enter the email address to receive the notification*Subject = New Booking*HTML Box = Enter the text to be sent, you can use template variables in this message, for example  [BOOKID] - booking reference number[GUESTNAMES] - name of all guests in the booking on the "summary" tab of the booking[FIRSTNIGHT][LASTNIGHT] </div></div> ===Booking Info Codes===<div class="mw-collapsible mw-collapsed"><div class="headline-collapse" > ====Add CHECKIN Booking info code to bookings ====</div><div class="mw-collapsible-content"> 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:*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: *Booking Info Code = CHECKIN*Booking Info Text = Auto Checkin</div></div> <div class="mw-collapsible mw-collapsed"><div class="headline-collapse" > ====Add CHECKOUT Booking info code to bookings ====
</div>
<div class="mw-collapsible-content">
<div class="mw-collapsible mw-collapsed"><div class="headline-collapse" >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.
====Send an email to the Owner/Internal email address for a new booking====
</div>
<div class="mw-collapsible-content">
Trigger tab:
*Trigger Event = After BookingCheck-out
*Trigger Time = Immediate
*Trigger Window = 1 day
*Booking Source = All
*Booking Status = All but not cancelled
*Group bookings = Trigger all on master
Messaging Booking Info tab:*Send Message = Internal*Internal Email Address Booking Info Code = enter the email address to receive the notificationCHECKOUT*Subject = New Booking*HTML Box Info Text = Enter the text to be sent, you can use template variables in this message, for example  [BOOKID] - booking reference number[GUESTNAMES] - name of all guests in the booking on the "summary" tab of the booking[FIRSTNIGHT][LASTNIGHT]Auto Checkout
</div>
</div>
===Booking Info Codes===
<div class="mw-collapsible mw-collapsed">
<div class="headline-collapse" >
====Add CHECKIN Booking info code to bookings Group check-in ====
</div>
<div class="mw-collapsible-content">
This requires the master booking to be checked-in via the check-in function.
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:
Trigger tab:*Trigger Event = Check-inAfter Booking*Trigger Time = Immediate immediately*Trigger Window = 1 day365
*Booking Source = All
*Booking Status = All but not cancelled
*Group bookings " = Trigger all on master*Info Code = CHECKIN
Booking Info info tab: *Booking Info Code = CHECKIN*Booking Info Text = Auto Checkin
</div>
</div>
<div class="mw-collapsible mw-collapsed">
<div class="headline-collapse" > ====Add CHECKOUT Booking info code to bookings Identify Repeat Guest ====
</div>
<div class="mw-collapsible-content">
This requires you to use the Guest database.
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:
Trigger tab:*Trigger Event = Check-outAfter Booking*Trigger Time = Immediate immediately*Trigger Window = 1 day365
*Booking Source = All
*Booking Status = All but not cancelled
*Group bookings " = Trigger all on master*Template Variable = [GUESTSID1] greater than 0
Booking Info info tab: *Booking Info Code = CHECKOUT*Booking Info Text = Auto CheckoutREPEAT
</div>
</div>
<div class="mw-collapsible mw-collapsed">
<div class="headline-collapse" >
====Group check-in Identify bookings with Custom Question ticked/unticked ====
</div>
<div class="mw-collapsible-content">
This requires If you have a custom question with a 'Tick box' for example, they want a late checkin.  Setup the master booking to be checkedcustom question in {{#fas:cog}} (SETTINGS) PROPERTIES -in via the check> BOOKING QUESTIONS -> CUSTOM QUESTIONS -in function> Custom question 1, set with TYPE = Tick Box.
Trigger tab:
*Booking Status = All but not cancelled
*Group bookings" = Trigger all on master
*Info Code Template Variable = CHECKIN[GUESTCUSTOMQ1] equals ticked (or) not ticked
Booking info tab :
*Info Code = CHECKINLATECHECKIN
</div>
</div>
 
 
 
===Add invoice items to a booking ===
<div class="mw-collapsible mw-collapsed">
<div class="headline-collapse" >
====Identify Repeat Guest Add a fee to all bookings from a channel====
</div>
<div class="mw-collapsible-content">
This requires you to use the Guest database.
 
Trigger tab:
 
*Trigger Event = After Booking
*Trigger Time = immediately*Trigger Window = 365Immediate*Booking Source = All*Booking Status = All but not cancelled*Group bookings" = Trigger all on master*Template Variable = [GUESTSID1] greater than 0Expedia (for example)
Booking info Invoice tab : *Info Code Add Invoice Item = REPEATAdd 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*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.
</div>
</div>
<div class="mw-collapsible mw-collapsed">
<div class="headline-collapse" >  ====Identify Add a fee (Penalty) to all bookings with Custom Question ticked/unticked an Outstanding Balance==== 
</div>
<div class="mw-collapsible-content">
If you have a custom question with a 'Tick box' for example, they You want to add a late 2.2% fee to all bookings if there is an outstanding balance 2 days prior to checkin.  Setup the custom question in {{#fas:cog}} (SETTINGS) PROPERTIES -> BOOKING QUESTIONS -> CUSTOM QUESTIONS -> Custom question 1, set with TYPE = Tick Box.
Trigger tab:
Time :*Trigger Event = After BookingCheckin *Trigger Time = immediately-2 days*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 2 days
Booking info tab Conditions: *Info Code Status = LATECHECKIN</div></div>   ===Add invoice items to a booking === <div class="mw-collapsible mw-collapsed"><div class="headline-collapse" > ====Add a fee to all bookings from a channel====</div><div class="mw-collapsible-content">Trigger tab:*Trigger Event = After Booking*Trigger Time = ImmediateAll not Cancelled *Booking Source Invoice Balance = Expedia (for example)Not Zero
Invoice tab:
*Add Invoice Item = Add new
*Type = Amount
*Description = Cleaning fee (for example) - Template variables can be usedPayment Fee||[INVOICEBALANCE:2. 2%]*Amount = 50 0 (for example - leave as 0 so the value is set from the amount of your cleaning feecalculation in Description field)*per Per = Room
*Period = one time
*VAT = 19% (for example - enter the VAT amount if applicable)
<div class="headline-collapse" >
====Add a fee (Penalty) negative value to all Direct bookings with an Outstanding Balancefor Stripe Charges====
</div>
<div class="mw-collapsible-content">
You want to add a 2.2% the Stripe fee to all Direct bookings to show total value of booking, i.e. if there is an outstanding balance 2 days prior you want to checkinshow the booking value. In this example the Stripe charge will be added as a negative figure.
Trigger tab:
Time :
*Trigger Event = Checkin *Trigger Time = -2 days*Trigger Window = 2 days  Booking Conditions:*Status = All not Cancelled *Invoice Balance = Not Zero Invoice tab:*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. </div></div> <div class="mw-collapsible mw-collapsed"><div class="headline-collapse" > ====Add a negative value to Direct bookings for Stripe Charges==== </div><div class="mw-collapsible-content">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: Time :*Trigger Event = Booking*Trigger Time = Immediate*Trigger Window = 1 day
Booking Conditions:
Invoice tab:
*Payment Type = select on what the payment is calculated (Percent of Balance dueOR 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)
<div class="mw-collapsible-content">
Trigger tab
*Trigger Event = After Booking
*Trigger Time = 1 Hour
*Trigger Window = 365 days
*Booking Status = No Change
*Flag text = (enter the text you require)
*Flag Colour = 999999 default cancel colour - (Set as required)
</div>
</div>
<div class="mw-collapsible mw-collapsed">
<div class="headline-collapse" >  
====Apply a flag for a bookings from a channel which have breakfast included====
</div>
<div class="mw-collapsible mw-collapsed">
<div class="headline-collapse" >  ====Apply a flag for a bookings which has BREAKFAST as a charge item====</div><div class="mw-collapsible-content">Trigger tab:*Trigger Event = After 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:*Execution = One time only*Flag Text = Breakfast*Flag Colour - choose the flag colour Booking Info tab:*Booking Info Code = BREAKFAST*Booking Info Description = Breakfast included</div></div> <div class="mw-collapsible mw-collapsed"><div class="headline-collapse" > 
====Apply a flag when deposit was made prior to Check-in====
</div>
<div class="mw-collapsible-content">
Trigger tab
*Trigger Event = After Booking
*Trigger Time = 3 days
*Booking Status = Request
2,864

edits

Navigation menu