Difference between revisions of "Template Variables"

From Beds24 Wiki
Jump to navigation Jump to search
 
(287 intermediate revisions by 5 users not shown)
Line 1: Line 1:
[[Category:Booking Page]]
 
 
[[Category:Guest_Management]]
 
[[Category:Guest_Management]]
 
[[Category:Messaging]]
 
[[Category:Messaging]]
Below is a List of '''''Template Variables'''''.
+
<div class="heading">Template variables</div>
 +
On this page you find a list of template variables and information on how they are used.  
  
 
These variables (short codes) will be replaced by the relevant information from each booking. They can be used in every text settings that allows their use . Copy them exactly as shown, including the square brackets and upper case.
 
These variables (short codes) will be replaced by the relevant information from each booking. They can be used in every text settings that allows their use . Copy them exactly as shown, including the square brackets and upper case.
Line 14: Line 14:
 
[PROPERTYNAME] - property name  
 
[PROPERTYNAME] - property name  
  
[PROPERTYADDRESS] - property full address  
+
[PROPERTYADDRESS] - property address  
  
 
[PROPERTYCITY] - property city  
 
[PROPERTYCITY] - property city  
Line 29: Line 29:
  
 
[PROPERTYFAX] - property fax  
 
[PROPERTYFAX] - property fax  
 +
 +
[PROPERTYCONTACTLASTNAME] - property contact last name
 +
 +
[PROPERTYCONTACTFIRSTNAME] - property contact first name
  
 
[PROPERTYID] - property id number
 
[PROPERTYID] - property id number
Line 46: Line 50:
 
[PROPERTYLOCATIONDESCRIPTION] - property location description  
 
[PROPERTYLOCATIONDESCRIPTION] - property location description  
  
[PROPERTYDIRECTIONS] - property directions (Settings > Channel Manager > Property Content)
+
[PROPERTYLOCATIONDESCRIPTIONBR] - property location description with line break
 +
 
 +
[PROPERTYDIRECTIONS] - property directions from ( {{#fas:cog}}  (SETTINGS) CHANNEL MANNAGER > PROPERTY CONTENT)
 
 
 
[PROPERTYHEADLINE] - property headline
 
[PROPERTYHEADLINE] - property headline
Line 53: Line 59:
 
 
 
[PROPERTYGENERALPOLICY] - property rental policy  
 
[PROPERTYGENERALPOLICY] - property rental policy  
 +
 +
[PROPERTYGENERALPOLICYBR] - property rental policy with line break
 
 
 
[PROPERTYLEGALPOLICY] - property rental policy /  obsolete
 
[PROPERTYLEGALPOLICY] - property rental policy /  obsolete
Line 58: Line 66:
 
[PROPERTYCANCELPOLICY] - property cancellation policy
 
[PROPERTYCANCELPOLICY] - property cancellation policy
  
[PROPERTYHOUSERULES] - property house rules (Settings > Channel Manager > Property Content)
+
[PROPERTYCANCELPOLICYBR] - property cancellation policy with line breaks
 +
 
 +
[PROPERTYHOUSERULES] - property house rules ({{#fas:cog}}  (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT)
 +
 
 +
[PROPERTYHOUSERULESBR] - property house rules ({{#fas:cog}}  (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT) with line break
 +
 
  
 
[PROPERTYTEMPLATE1] - Property Template 1
 
[PROPERTYTEMPLATE1] - Property Template 1
Line 75: Line 88:
  
 
[PROPERTYTEMPLATE8] - Property Template 8
 
[PROPERTYTEMPLATE8] - Property Template 8
 +
 +
[PROPERTYTEMPLATE1BR] - Property Template 1 with line breaks
 +
 +
[PROPERTYTEMPLATE2BR] - Property Template 2 with line breaks
 +
 +
[PROPERTYTEMPLATE3BR] - Property Template 3 with line breaks
 +
 +
[PROPERTYTEMPLATE4BR] - Property Template 4 with line breaks
 +
 +
[PROPERTYTEMPLATE5BR] - Property Template 5 with line breaks
 +
 +
[PROPERTYTEMPLATE6BR] - Property Template 6 with line breaks
 +
 +
[PROPERTYTEMPLATE7BR] - Property Template 7 with line breaks
 +
 +
[PROPERTYTEMPLATE8BR] - Property Template 8 with line breaks
  
 
[BOOKINGCOMHOTELID] - booking.com hotel id
 
[BOOKINGCOMHOTELID] - booking.com hotel id
Line 81: Line 110:
  
 
[PERMITID] - the permit ID
 
[PERMITID] - the permit ID
 +
 +
[CHECKINSTART] - check-in start time in 24hr format (From {{#fas:cog}} (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT 'Check-in start')
 +
 +
[CHECKINEND] - check-in end time  in 24hr format (From {{#fas:cog}} (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT 'Check-in end')
 +
 +
[CHECKOUTEND] - check-out end time  in 24hr format (From {{#fas:cog}} (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT 'Check-out end')
 +
 +
[CHECKINSTART12] - check-in start time in am/pm format (From {{#fas:cog}} (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT 'Check-in start')
 +
 +
[CHECKINEND12] - check-in end time in am/pm format (From {{#fas:cog}} (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT 'Check-in end')
 +
 +
[CHECKOUTEND12] - check-out end time in am/pm format (From {{#fas:cog}} (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT 'Check-out end')
 +
 +
[PROPERTYDESCRIPTION1] - Property Description 1 from {{#fas:cog}} (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT
 +
 +
[PROPERTYDESCRIPTION2] - Property Description 2 from {{#fas:cog}} (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT
 +
 +
[PROPERTYDESCBOOKPAGE1] - Property Description Booking Page 1 from {{#fas:cog}} (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT
 +
 +
[PROPERTYDESCBOOKPAGE2] - Property Description Booking Page 1 from {{#fas:cog}} (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT
 +
 +
[PROPERTYGUESTDETAILSHEADER] - Guest Details Header from {{#fas:cog}} (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT
 +
 +
[PROPERTYGUESTENQUIRYHEADER] - Guest Enquiry Header  from {{#fas:cog}} (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT
 +
 +
[PROPERTYCONFIRMBOOKBUTTON] - Confirm Booking Button Message  from {{#fas:cog}} (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT
 +
 +
[PROPERTYROOMNOTAVAIL]  - Room Not Available Message  from {{#fas:cog}} (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT
 +
 +
[PROPERTYROOMNOPRICE]  - Room No Price Message from {{#fas:cog}} (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT
 +
 +
[PROPERTYNOROOMSAVAIL]  - No Rooms Available Message  from {{#fas:cog}} (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT
 +
 +
[PROPERTYGROUP] - shows the group keywords
  
 
== Room Variables ==
 
== Room Variables ==
 +
[ROOMID] - room id number
  
[ROOMNAME] - room names of all booked rooms
+
[ROOMNAME] - room names of all booked rooms (not for cancelled bookings use ROOMNAMEINC if used for cancelled bookings)
  
[ROOMNAMEBR] - room name with line break
+
[ROOMNAMEBR] - room names with line break
 +
 
 +
[ROOMNAMEINC] room names of all booked rooms including for cancelled bookings
 +
 
 +
[ROOMNAMEINCBR] room names with line break
  
 
[ROOMNAME1] - room name of first booked room
 
[ROOMNAME1] - room name of first booked room
Line 101: Line 169:
  
 
[ROOMNAMEOFFERBR] - room names of all booked rooms with offer name with line break
 
[ROOMNAMEOFFERBR] - room names of all booked rooms with offer name with line break
 +
 +
[ROOMNAMEOFFERINC]  room names of all booked rooms with offer name incl. cancelled bookings
 +
 +
[ROOMNAMEOFFERINCBR] - room names of all booked rooms with offer name with line break
  
 
[ROOMTYPEDESC] - room accommodation type first booked room
 
[ROOMTYPEDESC] - room accommodation type first booked room
Line 106: Line 178:
 
[ROOMTYPEDESCS]  - room accommodation type all booked rooms
 
[ROOMTYPEDESCS]  - room accommodation type all booked rooms
  
[ROOMID] - room id number
+
[ROOMTYPEDESCSINC] - room accommodation type all booked rooms including cancelled bookings
 +
 
 +
[ROOMSIZE] - size of the room
  
 
[ROOMTEMPLATE1] - ROOM Template 1
 
[ROOMTEMPLATE1] - ROOM Template 1
Line 116: Line 190:
 
[ROOMTEMPLATE4] - ROOM  Template 4  
 
[ROOMTEMPLATE4] - ROOM  Template 4  
  
[ROOMMETAAUXTEXT] - room meta text setting for first booked room
+
[ROOMTEMPLATE5] - ROOM  Template 5
  
[ROOMMETAAUXTEXTS] - - room meta text setting for all booked rooms
+
[ROOMTEMPLATE6] - ROOM  Template 6
 +
 
 +
[ROOMTEMPLATE7] - ROOM  Template 7
 +
 
 +
[ROOMTEMPLATE8] - ROOM  Template 8
 +
 
 +
[ROOMTEMPLATE1BR] - ROOM Template 1 with linkbreak
 +
 
 +
[ROOMTEMPLATE2BR] - ROOM  Template 2  with linkbreak
 +
 
 +
[ROOMTEMPLATE3BR] - ROOM  Template 3  with linkbreak
 +
 
 +
[ROOMTEMPLATE4BR] - ROOM  Template 4  with linkbreak
 +
 
 +
[ROOMTEMPLATE5BR] - ROOM  Template 5  with linkbreak
 +
 
 +
[ROOMTEMPLATE6BR] - ROOM  Template 6  with linkbreak
 +
 
 +
[ROOMTEMPLATE7BR] - ROOM  Template 7  with linkbreak
 +
 
 +
[ROOMTEMPLATE8BR] - ROOM  Template 8  with linkbreak
 +
 
 +
[ROOMMETAAUXTEXT] - room auxiliary text setting for first booked room {{#fas:cog}} (SETTINGS) PROPERTIES > ROOMS > SETUP > DISPLAY
 +
 
 +
[ROOMMETAAUXTEXTS] - room auxiliary text setting for all booked rooms
 +
 
 +
[ROOMMETAAUXTEXTSINC] - room auxiliary text setting for all booked rooms, incl. cancelled bookings
  
 
[INTERNALROOMNAME] - internal room name as used in the control panel, this is not the translated room name shown on the booking page
 
[INTERNALROOMNAME] - internal room name as used in the control panel, this is not the translated room name shown on the booking page
 +
 +
[OFFERID]  - ID of the booked offer
  
 
[OFFERNAME] - booked offer name for all booked rooms
 
[OFFERNAME] - booked offer name for all booked rooms
  
 
[OFFERNAME1] - offer name for this booked room only
 
[OFFERNAME1] - offer name for this booked room only
 +
 +
[OFFERNAMEINC]  - offer name for this booked room only including cancelled bookings
  
 
[OFFERDESCRIPTION1] - offer description 1 for all booked rooms
 
[OFFERDESCRIPTION1] - offer description 1 for all booked rooms
 +
 +
[OFFERDESCRIPTION1INC] - offer description 1 for all booked rooms incl. cancelled
  
 
[OFFERDESCRIPTION2] - offer description 2 for all booked rooms
 
[OFFERDESCRIPTION2] - offer description 2 for all booked rooms
  
[UNITNAME] - unit names of all the assigned room types
+
[OFFERDESCRIPTION2INC] - offer description 2 for all booked rooms incl. cancelled
 +
 
 +
[OFFERDESCRIPTION1-1] - offer description 1 for this booked room  
  
[UNITNAME:1] - additional information about the unit for all the assigned room types
+
[OFFERDESCRIPTION2-1] - offer description 2 for this booked room  
  
[UNITNAME1] - unit name of the first assigned room
+
[OFFERSUMMARY] - summary offers
  
[UNITNAME1:1] - additional information about the first assigned room / add the additional information on each line after a | symbol where you set the unit names
+
[OFFERSUMMARYINC] - summary offers including cancelled bookings
  
[ROOMDESCRIPTION] - Room description (Settings > Channel Manager > Property Content > Room Content)
+
[UNITID1] - ID of the unit (number) for this booking number (coming soon)
  
[ROOMDESCRIPTION1] - Room description 1 (Settings > Properties > Rooms > Setup)
+
[UNITNAME] - unit names of all the assigned room types in the booking group (cancelled bookings are not shown)
 +
 
 +
[UNITNAMEINC] - unit names of all the assigned room types in the booking group including cancelled bookings
 +
 
 +
[UNITNAME:1] - additional information (first) about the unit for all the assigned room types in the booking group (cancelled bookings are not shown)
 +
 
 +
[UNITNAME:2] - additional information (second) about the unit for all the assigned room types in the booking group (cancelled bookings are not shown)
 +
 
 +
[UNITNAME1] - unit name of the assigned room for this booking number
 +
 
 +
[UNITNAME1:1] - additional information about the assigned room for this booking number / add the additional information on each line after a | symbol where you set the unit names
 +
 
 +
[UNITSTATUS1] - the status of the unit
 +
 
 +
[ROOMDESCRIPTION] - Room description  from {{#fas:cog}} (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT
 +
 
 +
[ROOMDESCRIPTION1] - Room description 1 from {{#fas:cog}} (SETTINGS) PROPERTIES > ROOMS > SETUP
 +
 
 +
[LEAVINGDAYAVAIL] - returns yes or no, can be used to trigger an Auto Action
 +
 
 +
[NUMROOMSAVAIL] - returns the number of available rooms (-1 if overbooked), can be used to trigger an Auto Action
 +
 
 +
[ROOMRACKRATENUM] - Rack Rate from {{#fas:cog}} (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT
 +
 
 +
[ROOMCLEANINGFEENUM]  - Cleaning fee from {{#fas:cog}} (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT
 +
 
 +
[ROOMSECURITYDEPOSITNUM]  - Securty deposit from {{#fas:cog}} (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT
 +
 
 +
[ROOMTAXPERCENTNUM]  - Tax percentate from from {{#fas:cog}} (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT
 +
 
 +
[ROOMTAXPERSONNUM]  - Tax per Person Night from from {{#fas:cog}} (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT
  
 
== Booking Variables ==
 
== Booking Variables ==
[BOOKID] - booking reference  
+
[VIEWBOOKING] - create a URL to log into the control panel and view this booking (for hosts, not intended to be sent to guests)
 +
 
 +
[BOOKID] - booking reference number
 +
 
 +
[BOOKIDS] - booking reference numbers of all bookings in a group
 +
 
 +
[BOOKIDSINC] - booking reference of all bookings in a group including cancelled bookings
  
 
[GROUPID] - booking reference of the master booking
 
[GROUPID] - booking reference of the master booking
  
[REFERENCENUMBER] - booking reference  
+
[REFERENCENUMBER] - booking reference (same as [BOOKID])
 +
 
 +
[BOOKIDLAST1] - Last 1 digit of booking number
 +
 
 +
[BOOKIDLAST2] - Last 2 digits of booking number
 +
 
 +
[BOOKIDLAST3] - Last 3 digits of booking number
 +
 
 +
[BOOKIDLAST4] - Last 4 digits of booking number
 +
 
 +
[BOOKIDLAST5] - Last 5 digits of booking number
 +
 
 +
[BOOKIDLAST6] - Last 6 digits of booking number
 +
 
 +
[BOOKIDLAST7] - Last 7 digits of booking number
 +
 
 +
[BOOKIDLAST8] - Last 8 digits of booking number
 +
 
 +
[BEDDING] - displays bedding info codes
 +
 
 +
[RANDOM1] - a 1 digit random number seeded from the booking number
 +
 
 +
[RANDOM2] - a 2 digit random number seeded from the booking number
 +
 
 +
[RANDOM3] - a 3 digit random number seeded from the booking number
 +
 
 +
[RANDOM4] - a 4 digit random number seeded from the booking number
 +
 
 +
[RANDOM5] - a 5 digit random number seeded from the booking number
 +
 
 +
[RANDOM6] - a 6 digit random number seeded from the booking number
 +
 
 +
[RANDOM7] - a 7 digit random number seeded from the booking number
 +
 
 +
[RANDOM8] - a 8 digit random number seeded from the booking number
 +
 
 +
[VOUCHERPHRASE1] - Voucher Phrase - change the number to the voucher  you want to print out.
 +
 
 +
[VOUCHERAMOUNT1]  - Voucher Amount - change the number to the voucher you want to print out.
 +
 
 +
=== Content from "Info" tab ===
 +
[BOOKINGINFOITEMS] - Booking Info Codes - Codes and text
 +
 
 +
[BOOKINGINFOITEMSBR] - Booking Info Codes - Codes and text with line break
 +
 
 +
[BOOKINGINFOTEXTS] - Booking Info Codes - Text only
 +
 
 +
[BOOKINGINFOTEXTSBR] Booking Info Codes - Text only with line break
 +
 
 +
[BOOKINGINFOCODES] - Booking Info Codes - Codes only
 +
 
 +
[BOOKINGINFOCODESBR]  - Booking Info Codes - Codes and text with line break
 +
 
 +
[BOOKINGINFOCODETEXT:infoCode] - the most recent Text value of the specified Booking Info Code, "infoCode" in this example
 +
 
 +
[BOOKINGINFOCODEDATE:infoCode]- the most recent date value of the specified Booking Info Code, "infoCode" in this example, supports custom date/time formats {%A, %e %B, %Y} after the infoCode
 +
 
 +
[INTERNALNOTES]  - content from "Internal Notes" on the Info Tab
 +
 
 +
[INTERNALNOTESBR] - content from "Internal Notes" on the Info Tab with line break
 +
 
 +
[INTERNALNOTESHR] - content from "Internal Notes" on the Info Tab with separating line
 +
 
 +
=== Content from "Summary" tab see also under "Room" and "Property" ===
 +
[STATUS] - status of booking
 +
 
 +
[SUBSTATUS] - sub status of the booking
  
 
[FIRSTNIGHT] - first night booked
 
[FIRSTNIGHT] - first night booked
Line 167: Line 377:
 
[LEAVINGDAYYYYY-MM-DD] - check-out day in YYYY-MM-DD format
 
[LEAVINGDAYYYYY-MM-DD] - check-out day in YYYY-MM-DD format
  
[DAYSTOCHECKIN] - number of days until Check-in
+
[NUMNIGHT] - number of nights
 +
 
 +
[NUMNIGHTS] - number of nights sum across group booking
 +
 
 +
[NUMNIGHTSINC] - number of nights sum across group booking incl. cancelled
  
[NUMROOM] - the quantity of rooms booked (first room type only)
+
[GUESTTITLE] - guest title on the "summary" tab of the booking
 +
 
 +
[GUESTFIRSTNAME] - first name  on the "summary" tab of the booking
  
[NUMROOMS] - the quantity of rooms booked (sum of all rooms and room types)
+
[GUESTNAME] - last name on the "summary" tab of the booking
  
[NUMNIGHT] - number of nights
+
[GUESTNAMES] - name of all guests in the booking on the "summary" tab of the booking
  
[NUMADULT] - number of adults in this room or in group if master booking
+
[GUESTNAMESINC] - name of all guests in the booking on the "summary" tab of the booking incl. cancelled bookings
  
[NUMADULT1] - number of adults in this room
+
[GUESTNAMESINCBR] - name of all guests in the booking on the "summary" tab of the booking incl. cancelled bookings  with line break on the "summary" tab of the booking
  
[NUMCHILD] - number of children in this room or in group if master booking  
+
[GUESTFULLNAME] - title, first name, last name on the "summary" tab of the booking
  
[NUMCHILD1] - number of children in this room
+
[GUESTFULLNAMES] - titles, first names, last names of all guests in the booking  on the "summary" tab of the booking
  
[NUMPEOPLE] - number of guests in this room or in group if master booking
+
[GUESTFULLNAMESBR] - titles, first names, last names of all guests in the booking with line break on the "summary" tab of the booking
  
[NUMPEOPLE1] - number of people in this room
+
[GUESTFULLNAMESINC] - titles, first names, last names of all guests in the booking  on the "summary" tab of the booking incl. cancelled
  
[RATEDESC] - rate description
+
[GUESTFULLNAMESINCBR] - titles, first names, last names of all guests in the booking with line break on the "summary" tab of the booking incl. cancelled
  
[RATEDESCBR] - name of the rate with HTML &lt;BR&gt; to force new lines
+
[GUESTCOMMENTS] - comments in the booking
  
[PRICE] - Value in price field (number entered in the price field of the booking) with currency symbol
+
[GUESTCOMMENTSBR] - comments in the booking with line breaks <BR>
  
[PRICENC] - Value in price field (number entered in the price field of the booking) without currency symbol (do not use in calculations, use PRICENUM)
+
[NOTES] - notes
  
[PRICE:10%] - Percentage value of Price
+
[NOTESBR] - notes with line breaks <BR>
  
[PRICE:-10] - Price with offset amount
+
[GUESTARRIVALTIME] - arrival time
  
[PRICENUM] - As per [PRICE] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation).
+
[NUMADULT] - number of adults in this room or in group if master booking (not for cancelled bookings use NUMADULTINC if used for cacelled bookings)
  
[PRICENUM:] - As per [PRICE:] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation).  
+
[NUMADULTINC] - number of adults in this room or in group if master booking incl. cancelled bookings
  
[PRICELESSCOMMISSION] - Value in price field less value in commission field with currency symbol
+
[NUMADULT1] - number of adults in this room
  
[PRICELESSCOMMISSIONNUM] - As per [PRICELESSCOMMISSION] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation).
+
[NUMCHILD] - number of children in this room or in group if master booking (not for cancelled bookings use NUMCHILDINC if used for cacelled bookings)
  
[PRICELESSTAX] - Value in price field less value in tax field with currency symbol
+
[NUMCHILDINC] number of children in this room or in group if master booking including cancelled bookings
  
[PRICELESSTAXNUM] - As per [PRICELESSTAX] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation).
+
[NUMCHILD1] - number of children in this room
  
[AVPRICE] - Average Nightly Price with currency symbol
+
[NUMPEOPLE] - number of guests in this room or in group if master booking
  
[AVPRICENUM] - Average Nightly Price with a decimal point and no thousands separator and no currency symbols (for calculation).  
+
[NUMPEOPLEINC] - number of guests in this room or in group if master booking incl. cancelled bookings
  
[AVPRICE:20%] - Percentage value of Average Nightly Price
+
[NUMPEOPLE1] - number of people in this room
  
[AVPRICE:15] - Average Nightly Price with offset amount
+
[GUESTPHONE] - guests phone number
  
[DEPOSIT] - Value in deposit field with currency symbol
+
[GUESTPHONENUM] - guests phone number with all non-numeric characters removed
  
[DEPOSITNUM] - As per [DEPOSIT] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation). 
+
[GUESTMOBILE] - guests mobile number
  
[TAX] - Value in tax field with currency symbol
+
[GUESTMOBILENUM] - guests mobile number with all non-numeric characters removed
  
[TAXNUM] - As per [TAX] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation).
+
[MOBILELAST1] last digit of the guests mobile number, if mobile is empty the guests phone number will be used.
  
[COMMISSION] - Value in commission field with currency symbol
+
[MOBILELAST2] last 2 digits of the guests mobile number, if mobile is empty the guests phone number will be used.
  
[COMMISSIONNUM] - As per [COMMISSION] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation).
+
[MOBILELAST3] last 3 digits of the guests mobile number, if mobile is empty the guests phone number will be used.
  
[GUESTTITLE] - guest title
+
[MOBILELAST4] last 4 digits of the guests mobile number, if mobile is empty the guests phone number will be used.
  
[GUESTFIRSTNAME] - first name
+
[MOBILELAST5] last 5 digits of the guests mobile number, if mobile is empty the guests phone number will be used.
  
[GUESTNAME] - last name
+
[MOBILELAST6] last 6 digits of the guests mobile number, if mobile is empty the guests phone number will be used.
  
[GUESTNAMES] - name of all guests in the booking
+
[PHONELAST1] - last digit of the guests phone number if guest phone is empty it will use the guests mobile number
  
[GUESTFULLNAME] - title, first name, last name
+
[PHONELAST2] - last 2 digits of the guests phone number if guest phone is empty it will use the guests mobile number
  
[GUESTFULLNAMES] - titles, first names, last names of all guests in the booking
+
[PHONELAST3] - last 3 digits of the guests phone number if guest phone is empty it will use the guests mobile number
  
[GUESTFULLNAMESBR] - titles, first names, last names of all guests in the booking with line break
+
[PHONELAST4] - last 4 digits of the guests phone number if guest phone is empty it will use the guests mobile number
  
[GUESTEMAIL] - guest's Email address
+
[PHONELAST5] - last 5 digits of the guests phone number if guest phone is empty it will use the guests mobile number
  
[GUESTPHONE]  - guests phone number  
+
[PHONELAST6]  - last 6 digits of the guests phone number if guest phone is empty it will use the guests mobile number
  
[GUESTPHONENUM] - guests phone number with all non-numeric characters removed
+
[GUESTSMS:49] - attempt to convert the guest mobile number into a format suitable for SMS, if country code is missing add the one supplied in the template variable, if mobile number is empty use guest phone number instead.
  
[GUESTMOBILE] - guests mobile number
+
[GUESTCOMPANY] - company name
  
[GUESTMOBILENUM] - guests mobile number with all non-numeric characters removed
+
[GUESTCOMPANYBR] - company name with line breaks
  
 
[GUESTFAX] - guests fax number
 
[GUESTFAX] - guests fax number
Line 259: Line 475:
 
[GUESTFAXNUM] - guests fax number with all non-numeric characters removed
 
[GUESTFAXNUM] - guests fax number with all non-numeric characters removed
  
[GUESTCOMPANY] - company name
+
[GUESTADDRESS] - guests address
 +
 
 +
[GUESTADDRESSBR]  - guests address with line breaks
  
[GUESTADDRESS]  - guests address  
+
[GUESTSADDRESSSBR1INC]  - guests address with line breaks incl. cancelled bookings
  
 
[GUESTPOSTCODE] -  guests postcode
 
[GUESTPOSTCODE] -  guests postcode
Line 271: Line 489:
 
[GUESTCOUNTRY] - guests country from free text field is not empty, otherwise from selector list
 
[GUESTCOUNTRY] - guests country from free text field is not empty, otherwise from selector list
  
[GUESTCOUNTRYHL] - guests country from free text field is not empty, otherwise from selector list in hosts languabe
+
[GUESTCOUNTRYHL] - guests country from free text field is not empty, otherwise from selector list in hosts language
  
 
[GUESTCOUNTRYGL] - guests country from free text field is not empty, otherwise from selector list in guests language
 
[GUESTCOUNTRYGL] - guests country from free text field is not empty, otherwise from selector list in guests language
Line 283: Line 501:
 
[GUESTCOUNTRYTEXT] - guests country from free text field
 
[GUESTCOUNTRYTEXT] - guests country from free text field
  
[GUESTARRIVALTIME] - arrival time
+
[GUESTCOUNTRY2] - guests country from selector list as two letter code
  
[GUESTCOMMENTS] - comments in the booking  
+
=== Content from "Details" tab ===
 +
[MESSAGE] - the content of the booking message field
  
[GUESTCOMMENTSBR] - comments in the booking with line breaks <BR>
+
[MESSAGEBR] - the content of the booking message field with line breaks <BR>
  
 
[GUESTCUSTOMQ1] - answer to custom question 1  
 
[GUESTCUSTOMQ1] - answer to custom question 1  
 +
 +
[GUESTCUSTOMQ1BR] - answer to custom question 1 with line breaks <BR>
  
 
[GUESTCUSTOMQ2] - answer to custom question 2  
 
[GUESTCUSTOMQ2] - answer to custom question 2  
 +
 +
[GUESTCUSTOMQsBR] - answer to custom question 2 with line breaks <BR>
  
 
[GUESTCUSTOMQ3] - answer to custom question 3  
 
[GUESTCUSTOMQ3] - answer to custom question 3  
 +
 +
[GUESTCUSTOMQ3BR] - answer to custom question 3 with line breaks <BR>
  
 
[GUESTCUSTOMQ4] - answer to custom question 4
 
[GUESTCUSTOMQ4] - answer to custom question 4
 +
 +
[GUESTCUSTOMQ4BR] - answer to custom question 4 with line breaks <BR>
  
 
[GUESTCUSTOMQ5] - answer to custom question 5  
 
[GUESTCUSTOMQ5] - answer to custom question 5  
 +
 +
[GUESTCUSTOMQ5BR] - answer to custom question 5 with line breaks <BR>
  
 
[GUESTCUSTOMQ6] - answer to custom question 6
 
[GUESTCUSTOMQ6] - answer to custom question 6
 +
 +
[GUESTCUSTOMQ6BR] - answer to custom question 6 with line breaks <BR>
  
 
[GUESTCUSTOMQ7] - answer to custom question 7
 
[GUESTCUSTOMQ7] - answer to custom question 7
 +
 +
[GUESTCUSTOMQ7BR] - answer to custom question 7 with line breaks <BR>
  
 
[GUESTCUSTOMQ8] - answer to custom question 8
 
[GUESTCUSTOMQ8] - answer to custom question 8
 +
 +
[GUESTCUSTOMQ8BR] - answer to custom question 8 with line breaks <BR>
  
 
[GUESTCUSTOMQ9] - answer to custom question 9
 
[GUESTCUSTOMQ9] - answer to custom question 9
 +
 +
[GUESTCUSTOMQ9BR] - answer to custom question 9 with line breaks <BR>
  
 
[GUESTCUSTOMQ10] - answer to custom question 10  
 
[GUESTCUSTOMQ10] - answer to custom question 10  
 +
 +
[GUESTCUSTOMQ10BR] - answer to custom question 10 with line breaks <BR>
 +
 +
[REFERENCE] - content of the booking reference field
 +
 +
[NUMROOM] - the quantity of rooms booked (first room type only)
 +
 +
[NUMROOMS] - the quantity of rooms booked (sum of all rooms and room types)
 +
 +
[NUMROOMSINC] - the quantity of rooms booked (sum of all rooms and room types) inc. cancelled
 +
 +
[FLAG] - Flag
 +
 +
[STATUSCODE] - 'Status Code' (Under tab 'Detail'. Can be a value between 0-100.)
 +
 +
[ORIGINALREFERRER]  - Original referrer
 +
 +
[REFERRER] - Referrer
 +
 +
[APIREF] - the booking number at the originating channel
 +
 +
[APISOURCE] - Beds24 channel number
 +
 +
[APISOURCETEXT] - human readable name of the channel
 +
 +
[BOOKINGIP] - ip address of booker's computer
 +
 +
[APIMESSAGE] - api message sent by originating channel from the Channel Info setting
 +
 +
[BOOKINGDATE] - booking date in guests language
 +
 +
[BOOKINGTIMEDATE] - booking date and time in guests language
 +
 +
[BOOKINGDATEYYYY-MM-DD] - booking date in YYYY-MM-DD format
 +
 +
see date and time variables below for custom time formats.
 +
 +
=== Content from "Charges and Payments" tab (also see "Invoice/Invoicee/Room") ===
 +
[BOOKINGINVOICEEID] - invoicee id assigned to this booking, this comes from the booking invoicee setting, not from the bookings invoice items
 +
 +
[RATEDESC] - rate description (in the booking popup under the tab 'Charges & Payments')
 +
 +
[RATEDESCBR] - name of the rate with HTML &lt;BR&gt; to force new lines
 +
 +
[PRICE] - Value in price field (number entered in the price field of the booking) with currency symbol
 +
 +
[PRICENC] - Value in price field (number entered in the price field of the booking) without currency symbol (do not use in calculations, use PRICENUM)
 +
 +
[PRICE:10%] - Percentage value of Price
 +
 +
[PRICE:-10] - Price with offset amount
 +
 +
[PRICENUM] - As per [PRICE] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation).
 +
 +
[PRICENUM:] - As per [PRICE:] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation)
 +
 +
[PRICELESSCOMMISSION] - Value in price field less value in commission field with currency symbol
 +
 +
[PRICELESSCOMMISSIONNUM] - As per [PRICELESSCOMMISSION] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation)
 +
 +
[PRICELESSTAX] - Value in price field less value in tax field with currency symbol
 +
 +
[PRICELESSTAXNUM] - As per [PRICELESSTAX] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation)
 +
 +
[AVPRICE] - Average Nightly Price with currency symbol
 +
 +
[AVPRICENUM] - Average Nightly Price with a decimal point and no thousands separator and no currency symbols (for calculation)
 +
 +
[AVPRICE:20%] - Percentage value of Average Nightly Price
 +
 +
[AVPRICE:15] - Average Nightly Price with offset amount
 +
 +
[BASEPRICE] - Lodging Price
 +
 +
[BASEPRICENUM] -  same as [BASEPRICE] with a decimal point and no thousands separator and no currency symbols (for calculation)
 +
 +
[BASEGROUPPRICE] -  Lodging Price for Group
 +
 +
[BASEGROUPPRICENUM] -  same as BASEGROUPPRICE]  with a decimal point and no thousands separator and no currency symbols (for calculation)
 +
 +
[BASEVAT] - Lodging Price vat amount
 +
 +
[BASEVATNUM] -  same as [BASEVAT] with a decimal point and no thousands separator and no currency symbols (for calculation)
 +
 +
[BASEGROUPVAT] -  Lodging Price vat amount for Group
 +
 +
[BASEGROUPVATNUM] -  same as BASEGROUPVAT]  with a decimal point and no thousands separator and no currency symbols (for calculation)
 +
 +
[AVBASEPRICE] - Average Nightly Lodging Price
 +
 +
[AVBASEPRICENUM] -  same as [AVBASEPRICE] with a decimal point and no thousands separator and no currency symbols (for calculation)
 +
 +
[AVBASEGROUPPRICE] Average Nightly Lodging Price for Group
 +
 +
[AVBASEGROUPPRICENUM] - same as [AVBASEGROUPPRICE] with a decimal point and no thousands separator and no currency symbols (for calculation)
 +
 +
[DEPOSIT] - Value in deposit field with currency symbol
 +
 +
[DEPOSITNUM] - As per [DEPOSIT] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation)
 +
 +
[TAX] - Value in tax field with currency symbol
 +
 +
[TAXNUM] - As per [TAX] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation).
 +
 +
[COMMISSION] - Value in commission field with currency symbol
 +
 +
[COMMISSIONNUM] - As per [COMMISSION] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation)
 +
 +
[COMMISSIONGROUP]  - Value of the commission of the complete group booking with currency symbol
 +
 +
[COMMISSIONGROUPNUM]  - As per [COMMISSIONGROUP] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation)
 +
 +
[GUESTVOUCHER] - voucher code used with booking
 +
 +
[CARDLASTFOUR] - last 4 digits of card
 +
 +
[CARDFIRSTSIX] - first 6 digits of card
 +
 +
===Content from Invoice" tab===
 +
[BOOKINGINVOICEEID] - invoicee id assigned to this booking, this comes from the booking invoicee setting, not from the bookings invoice items
 +
 +
[BOOKINGINVOICEENAME] - invoicee name assigned to this booking, this comes from the booking invoicee setting, not from the bookings invoice items
 +
 +
===Content from "Group Invoice" tab===
 +
[GROUPNOTE] - group note
 +
 +
=== Content from "Mail & Actions" tab ===
 +
[GUESTEMAIL] - guest's Email address on the "Mail & Action" tab of the booking
  
 
[GUESTLANGUAGE] - guest language
 
[GUESTLANGUAGE] - guest language
  
[BOOKGROUPROOMLIST] - create a table of guest names including room type for a group booking
+
[EMAIL:00] - Status of an Auto Action email. Replace 00 with the number of the Auto Action. This shows if the email has been sent and if so, the time it was sent.
 +
 
 +
=== Content from "Guests" tab ===
 +
[GUESTSID] - all IDs of this booking
 +
 
 +
[GUESTSID1]  - ID of the first guest
 +
 
 +
[GUESTSIDS] - all IDs for all bookings in the group
 +
 
 +
[GUESTSNAME] - name of all guests listed on the "guests" tab of this booking
 +
 
 +
[GUESTSNAMES] - name of all guests listed on the "guests" tab of the booking of the group booking
 +
 
 +
[GUESTSNAMESINC] - name of all guests listed on the "guests" tab of the booking of the group booking incl. cancelled
 +
 
 +
[GUESTSFIRSTNAMES]  - first name of all guests listed on the "guests" tab of this booking last separated by an &
 +
 
 +
[GUESTSFIRSTNAMESINC]  - first name of all guests listed on the "guests" tab of this booking incl. cancelled
 +
 
 +
[GUESTSLASTNAMES] -  last name of all guests listed on the "guests" tab of this booking
 +
 
 +
[GUESTSLASTNAMESINC] -  last name of all guests listed on the "guests" tab of this booking incl. cancelled
 +
 
 +
[GUESTSADDRESSSBR1] - address of the first guest on the "guests" tab of this booking group
 +
 
 +
[GUESTSADDRESSSBR1INC] - address of the first guest on the "guests" tab of this booking group incl. cancelled
 +
 
 +
[GUESTSAFULLADDRESSSBR1INC] - the first address including city, postcode, sate and country from the guests tab of the booking including cancelled bookings in international  format
 +
 
 +
[GUESTSAFULLADDRESSSBR1] - the first address including city, postcode, sate and country from the guests tab of the booking in International format
 +
 
 +
[GUESTSBFULLADDRESSSBR1INC]  - the first address including city, postcode, sate and country from the guests tab of the booking including cancelled bookings in  European format
 +
 
 +
[GUESTSBFULLADDRESSSBR1]  - the first address including city, postcode, sate and country from the guests tab of the booking in European format
 +
 
 +
[GUESTSNUMBOOKINGS1] - the total number of bookings made by the first guest, a group booking counts as one booking.
 +
 
 +
[GUESTSNUMSTAYS1] - the total number of bookings not cancelled and not in the future made by the first guest, a group booking counts as one booking.
 +
 
 +
[GUESTSCUSTOMQ1S]  - answer to custom question 1 for all guests
  
[BOOKGROUPROOMLISTTOTAL] - create a table of guest names including room type for a group booking with guest totals
+
[GUESTSCUSTOMQ1SINC] - answer to custom question 1 for all guests including cancelled bookings
  
[BOOKGROUPROOMLISTCHARGETOTAL] - create a table of guest names including room type and charge for a group booking with guest totals
+
[GUESTSCUSTOMQ2S] - answer to custom question 2 for all guests
  
[BOOKGROUPNAMELIST] - create a table of guest names including room type and unit for a group booking
+
[GUESTSCUSTOMQ2SINC] - answer to custom question 2 for all guests including cancelled bookings 
  
[BOOKGROUPNAMELISTTOTAL] - create a table of guest names including room type and unit for a group booking with guest totals
+
[GUESTSCUSTOMQ3S] - answer to custom question 3 for all guests
  
[BOOKGROUPNAMELISTCHARGETOTAL] - create a table of guest names including room type and unit and charge for a group booking with guest totals
+
[GUESTSCUSTOMQ3SINC] - answer to custom question 3 for all guests including cancelled bookings 
  
[BOOKGROUPUNITLIST] - create a table of guest names including unit for a group booking
+
[GUESTSCUSTOMQ4S] - answer to custom question 4 for all guests
  
[BOOKGROUPUNITLISTTOTAL] - create a table of guest names including unit for a group booking with guest totals
+
[GUESTSCUSTOMQ4SINC] - answer to custom question 4 for all guests including cancelled bookings 
  
[BOOKGROUPUNITLISTCHARGETOTAL] - create a table of guest names including unit and charge for a group booking with guest totals
+
[GUESTSCUSTOMQ5S] - answer to custom question 5 for all guests
  
[REFERRER] - Referrer
+
[GUESTSCUSTOMQ5SINC] - answer to custom question 5 for all guests including cancelled bookings
  
[ORIGINALREFERRER]  - Original referrer
+
[GUESTSCUSTOMQ6S]  - answer to custom question 6 for all guests
  
[APIREF] - the booking number at the originating channel
+
[GUESTSCUSTOMQ6SINC] - answer to custom question 6 for all guests including cancelled bookings 
  
[APIMESSAGE] - api message sent by originating channel
+
[GUESTSCUSTOMQ7S] - answer to custom question 7 for all guests
  
[APISOURCE] - Beds24 channel number
+
[GUESTSCUSTOMQ7SINC] - answer to custom question 7 for all guests including cancelled bookings 
  
[NOTES] - notes
+
[GUESTSCUSTOMQ7S] - answer to custom question 8 for all guests
  
[NOTESBR] - notes with line breaks <BR>
+
[GUESTSCUSTOMQ8SINC] - answer to custom question 8 for all guests including cancelled bookings
  
[GROUPNOTE] - group note
+
[GUESTSCUSTOMQ9S] - answer to custom question 9 for all guests
  
[MESSAGE] - the content of the booking message field
+
[GUESTSCUSTOMQ9SINC] - answer to custom question 9 for all guests including cancelled bookings 
  
[MESSAGEBR] - the content of the booking message field with line breaks <BR>
+
[GUESTSCUSTOMQ10S] - answer to custom question 10 for all guests
  
[REFERENCE] - content of the booking reference field
+
[GUESTSCUSTOMQ10SINC] - answer to custom question 10 for all guests including cancelled bookings
  
[STATUS] - status of booking  
+
===Cancellation, Management and Guest Login===
 +
[CANCELLEDTIME] - date when the booking was cancelled
  
[FLAG] - Flag
+
[CANCELLEDTIME:{%A, %e %B, %Y}] - date when the booking was cancelled display can be any valid PHP strftime format string
  
 
[CANCELURL] - URL to view and cancel bookings  
 
[CANCELURL] - URL to view and cancel bookings  
  
[CANCELDATE] - date until when the booking is cancelable
+
[CANCELDATE] - date until when the booking is cancellable displaying a phrase
 +
 
 +
[CANCELDATEYYYY-MM-DD] - date until when the booking is cancellable displaying a date. If the date is in the past 00-00-0000 will be shown
 +
 
 +
[DAYSTOCANCEL] - number of days from today until booking can no longer be cancelled (Not applicable for OTA bookings)
 +
 
 +
[CANCELUNTIL] - shows the number of days between check-in and the last day the booking can be cancelled. If guest can always cancel it shows 0, if guest can never cancel it shows 999. (Not applicable for OTA bookings)
 +
 
 +
[GUESTLOGIN] - URL to view bookings
 +
 
 +
[TURNOVERDAYS] - days until next arrival into the same unit not considering black bookings
 +
 
 +
[TURNOVERDAYSB] - days until next arrival into the same unit considering black bookings
 +
 
 +
[VACANTDAYS]  days from previous checkout to check in of current booking not considering black bookings
 +
 
 +
[VACANTDAYSB]  days from previous checkout to check in of current booking considering black bookings
  
[GUESTLOGIN] - URL to view bookings
+
==Date and Time==
  
 
[CURRENTDATE] - current date
 
[CURRENTDATE] - current date
Line 365: Line 786:
 
[CURRENTDATEYYYY-MM-DD] - current date  in YYYY-MM-DD format
 
[CURRENTDATEYYYY-MM-DD] - current date  in YYYY-MM-DD format
  
[CURRENTTIME] - current time
+
[CURRENTDATE:{%A, %e %B, %Y}] - current date
 +
 
 +
[CURRENTDATE:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format.
 +
 
 +
[CURRENTTIME] - current time and the display can be any valid PHP strftime format string.
 +
 
 +
[CURRENTTIME:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format.
 +
 
 +
[DAYSTOCHECKIN] -  number of days until check-in
 +
 
 +
[INADVANCE] - number of days between booking and check-in
 +
 
 +
[DAYSBETWEEN:2019-11-01:2019-11-10] - this template variable will calculate the number of days between the :: the dates need to be in yyyy-mm-dd format. Template variables can be used for calculation.
 +
 
 +
Example:  [[DAYSBETWEEN:[FIRSTNIGHT:+5 days{%G-%m-%d}]:[CURRENTDATE:{%G-%m-%d}]] will calculate the days between 5 days after check-in and today.
 +
 
 +
[FIRSTNIGHT:{%A, %e %B, %Y}] -  first night booked
 +
 
 +
[FIRSTNIGHT:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format.
 +
 
 +
[LASTNIGHT:{%A, %e %B, %Y}] -  last night booked
 +
 
 +
[LASTNIGHT:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format.
 +
 
 +
[LEAVINGDAY:{%A, %e %B, %Y}] -  check-out
 +
 
 +
[LEAVINGDAY:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format.
 +
 
 +
[BOOKINGDATE:{%A, %e %B, %Y}] - booking date
 +
 
 +
[BOOKINGDATE:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format.
 +
 
 +
[MODIFYDATE:{%A, %e %B, %Y}] - last booking modification date/time, the display can be any valid PHP strftime format string.
 +
 
 +
[PAYMENTDATE:{%A, %e %B, %Y}] - most recent payment date
 +
 
 +
[PAYMENTDATE:+1day{%A, %e %B, %Y}:1:1000] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format. The second parameter specifies the payment to show, 0 or missing means the most recent payment. The third parameter specifies the invoicee.
 +
 
 +
[AUTHORIZEUNTIL] - date until which a card is authorized, this is extracted from the most recent authorize booking info code.
 +
 
 +
[AUTHORIZEUNTIL{%A, %e %B, %Y}] - custom format date until which a card is authorized, this is extracted from the most recent authorize booking info code.
 +
 
 +
[FORMATDATE:[any template variable that creates a date]{%A, %e %B, %Y}] - custom format the date. The date value could be included by inserting a different template variable containing a date.
 +
 
 +
 
 +
The following codes can be used in any order between the {} brackets to create custom time and date formats.
 +
 
 +
%a An abbreviated textual representation of the day Sun through Sat
 +
%A A full textual representation of the day Sunday through Saturday
 +
%d Two-digit day of the month (with leading zeros) 01 to 31
 +
%e Day of the month, with a space preceding single digits. 1 to 31
 +
%j Day of the year, 3 digits with leading zeros 001 to 366
 +
%u ISO-8601 numeric representation of the day of the week 1 (for Monday) through 7 (for Sunday)
 +
%w Numeric representation of the day of the week 0 (for Sunday) through 6 (for Saturday)
 +
%U Week number of the given year, starting with the first Sunday as the first week 13 (for the 13th full week of the year)
 +
%V ISO-8601:1988 week number of the given year, starting with the first week of the year with at least 4 weekdays, with Monday being the start of the week 01 through 53 (where 53 accounts for an overlapping week)
 +
%W A numeric representation of the week of the year, starting with the first Monday as the first week 46 (for the 46th week of the year beginning with a Monday)
 +
%b Abbreviated month name, based on the locale Jan through Dec
 +
%B Full month name, based on the locale January through December
 +
%h Abbreviated month name, based on the locale (an alias of %b) Jan through Dec
 +
%m Two digit representation of the month 01 (for January) through 12 (for December)
 +
%C Two digit representation of the century (year divided by 100, truncated to an integer) 19 for the 20th Century
 +
%g Two digit representation of the year going by ISO-8601:1988 standards (see %V) Example: 09 for the week of January 6, 2009
 +
%G The full four-digit version of %g Example: 2008 for the week of January 3, 2009
 +
%y Two digit representation of the year Example: 09 for 2009, 79 for 1979
 +
%Y Four digit representation for the year Example: 2038
 +
%H Two digit representation of the hour in 24-hour format 00 through 23
 +
%k Hour in 24-hour format, with a space preceding single digits 0 through 23
 +
%I Two digit representation of the hour in 12-hour format 01 through 12
 +
%l      (lower-case 'L') Hour in 12-hour format, with a space preceding single digits 1 through 12
 +
%M Two digit representation of the minute 00 through 59
 +
%p UPPER-CASE 'AM' or 'PM' based on the given time Example: AM for 00:31, PM for 22:23
 +
%P lower-case 'am' or 'pm' based on the given time Example: am for 00:31, pm for 22:23
 +
%r Same as "%I:%M:%S %p" Example: 09:34:17 PM for 21:34:17
 +
%R Same as "%H:%M" Example: 00:35 for 12:35 AM, 16:44 for 4:44 PM
 +
%S Two digit representation of the second 00 through 59
 +
%T Same as "%H:%M:%S" Example: 21:34:17 for 09:34:17 PM
 +
%X Preferred time representation based on locale, without the date Example: 03:59:16 or 15:59:16
 +
%z The time zone offset. Example: -0500 for US Eastern Time
 +
%Z The time zone abbreviation. Example: EST for Eastern Time
 +
%c Preferred date and time stamp based on locale Example: Tue Feb 5 00:45:10 2009 for February 5, 2009 at 12:45:10 AM
 +
%D Same as "%m/%d/%y" Example: 02/05/09 for February 5, 2009
 +
%F Same as "%Y-%m-%d" (commonly used in database datestamps) Example: 2009-02-05 for February 5, 2009
 +
%s Unix Epoch Time timestamp (same as the time() function) Example: 305815200 for September 10, 1979 08:40:00 AM
 +
%x Preferred date representation based on locale, without the time Example: 02/05/09 for February 5, 2009
 +
%n A newline character ("\n")
 +
%t A Tab character ("\t")
 +
%% A literal percentage character ("%")
 +
 
 +
== Booking Group variables ==
 +
=== Custom Booking Group Table ===
 +
create your own booking group list by specifying the columns in the order you want them to appear.
 +
 
 +
for example: [BOOKGROUP:PROP_ROOM_BREF_NAME]
 +
 
 +
column parameters
 +
 
 +
100% = 100% width
 +
 
 +
ADDR = Booking address
 +
 
 +
ADUL= the number of adults
 +
 
 +
ARIV = Arrival date
 +
 
 +
BOPR = Bold prices
 +
 
 +
BREF = Booking number
 +
 
 +
BRL1 = Last digit of booking number
 +
 
 +
BRL2 = Last 2 digits of booking number
 +
 
 +
BRL3 = Last 3 digits of booking number
 +
 
 +
BRL4 = Last 4 digits of booking number
 +
 
 +
BRL5 = Last 5 digits of booking number
 +
 
 +
BRL6 = Last 6 digits of booking number
 +
 
 +
CITY = Booking city
 +
 
 +
CHAC = Charges with currency symbol
 +
 
 +
CHAR = Charges
 +
 
 +
CHIL = Number of children
 +
 
 +
COUN = Booking country
 +
 
 +
DEPT = Departure date
 +
 
 +
EMAI = Booking Email
 +
 
 +
EXSP = extra space between rows
 +
 
 +
FLAG = Booking flag text
 +
 
 +
FNAM = Booking first name
 +
 
 +
GADD = Guest address
 +
 
 +
GCIT = Guest city
 +
 
 +
GCOM = Guest company
 +
 
 +
GCOU = Guest country
 +
 
 +
GFLA = Guest flag text
 +
 
 +
GFNA = Guest first name
 +
 
 +
GLNA = Guest last name
 +
 
 +
GMOB = Guest mobile
 +
 
 +
GNAM = Guest full name
 +
 
 +
GEMA = Guest Email
 +
 
 +
GNOT = Guest note
 +
 
 +
GPOS = Guest postcode
 +
 
 +
GREF = Guest Id
 +
 
 +
GSTA = Guest state
  
[BOOKINGDATE] - booking date
+
GTEL = Guest phone
  
[BOOKINGTIMEDATE] - booking date and time
+
ICAN = Include cancelled bookings
  
[BOOKINGDATEYYYY-MM-DD] - booking date in YYYY-MM-DD format
+
LNAM = Booking last name
 +
 
 +
MOBI = Booking mobile
 +
 
 +
NAME = Booking full name
 +
 
 +
NOHE = no header
 +
 
 +
NOTE = Booking note
 +
 
 +
NUMN = Number of nights booked
 +
 
 +
ONAM = Offer Name
 +
 
 +
ONLY = Just show the one booking
 +
 
 +
PAIC = Payment amount with currency symbol
 +
 
 +
PADD = Property Address
 +
 
 +
PAID = Paid amount
 +
 
 +
PCIT = Property City
 +
 
 +
PEOP = Number of guests
 +
 
 +
PHON = Booking phone
 +
 
 +
POST = Booking postcode
 +
 
 +
PROP = Property name
  
[BOOKINGIP] - ip address of booker's computer
+
RDE0 =  Room description from {{#fas:cog}} (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT
  
[VIEWBOOKING] - create a URL to log into the control panel and view this booking (for hosts, not intended to be sent to guests)
+
RDE1 = Room description 1 from {{#fas:cog}} (SETTINGS) PROPERTIES> ROOMS > SETUP
  
[EMAIL:00] - Status of an Auto Action email. Replace 00 with the number of the Auto Action. This shows if the email has been sent and if so, the time it was sent.
+
RNAM = Room Display Name
 +
 +
ROOM = Room name
  
[BOOKIDLAST1] - Last 1 digit of booking number
+
RQTY = shows the number of rooms for each booking and a total at the bottom
  
[BOOKIDLAST2] - Last 2 digits of booking number
+
STAT = Booking state
  
[BOOKIDLAST3] - Last 3 digits of booking number
+
STUS = Status
  
[BOOKIDLAST4] - Last 4 digits of booking number
+
TEXT = Prints a plain text table instead of HTML
  
[BOOKIDLAST5] - Last 5 digits of booking number
+
TOTA = Total price
  
[BOOKIDLAST6] - Last 6 digits of booking number
+
UNI2 = Unit first additional information
 +
     
 +
UNI3 = Unit second additional information
  
[BOOKIDLAST7] - Last 7 digits of booking number
+
UNIT = Unit name
  
[BOOKIDLAST8] - Last 8 digits of booking number
 
  
[RANDOM1] - a 1 digit random number seeded from the booking number
+
Connect the parameters with an underscore.
  
[RANDOM2] - a 2 digit random number seeded from the booking number
+
Examples:
  
[RANDOM3] - a 3 digit random number seeded from the booking number
+
[BOOKGROUP:PROP_ROOM_BREF_NAME] will display the property name, room name,  booking number and guest name in this order.
  
[RANDOM4] - a 4 digit random number seeded from the booking number
 
  
[RANDOM5] - a 5 digit random number seeded from the booking number
+
[BOOKGROUP:BREF_NAME_PROP_ROOM] will display the booking number, guest name property name and  room name in this order.
  
[RANDOM6] - a 6 digit random number seeded from the booking number
+
=== Booking Group Table with fixed content===
 +
[BOOKGROUPROOMLIST] - create a table of guest names including room type for a group booking
  
[RANDOM7] - a 7 digit random number seeded from the booking number
+
[BOOKGROUPROOMLISTTOTAL] - create a table of guest names including room type for a group booking with guest totals
  
[RANDOM8] - a 8 digit random number seeded from the booking number
+
[BOOKGROUPROOMLISTCHARGETOTAL] - create a table of guest names including room type and charge for a group booking with guest totals
  
[BOOKINGINFOITEMS] - Booking Info Codes - Codes and text
+
[BOOKGROUPNAMELIST] - create a table of guest names including room type and unit for a group booking
  
[BOOKINGINFOTEXTS] - Booking Info Codes - Text only
+
[BOOKGROUPNAMELISTTOTAL] - create a table of guest names including room type and unit for a group booking with guest totals
  
[BOOKINGINFOCODES] - Booking Info Codes - Codes only
+
[BOOKGROUPNAMELISTCHARGETOTAL] - create a table of guest names including room type and unit and charge for a group booking with guest totals
  
[BOOKINGINFOCODETEXT:] - the most recent Text value of the specified Booking Info Code
+
[BOOKGROUPUNITLIST] - create a table of guest names including unit for a group booking
  
[BOOKINGINFOCODEDATE:]- the most recent date value of the specified Booking Info Code
+
[BOOKGROUPUNITLISTTOTAL] - create a table of guest names including unit for a group booking with guest totals
  
[CARDLASTFOUR] - last 4 digits of card
+
[BOOKGROUPUNITLISTCHARGETOTAL] - create a table of guest names including unit and charge for a group booking with guest totals
  
 
== Invoice Variables ==
 
== Invoice Variables ==
 +
[INVOICENUMBER] - invoice number
  
[INVOICENUMBER] - invoice number
+
[INVOICENUMBERS] - invoice number if invoicees are involved
  
 
[INVOICEDATE] - invoice date
 
[INVOICEDATE] - invoice date
 +
 +
[INVOICEDATES] - invoice date invoice number if invoicees are involved
  
 
[INVOICEDATE:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be any valid PHP strftime format string.  
 
[INVOICEDATE:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be any valid PHP strftime format string.  
  
 +
[INVOICEDATES:+1day{%A, %e %B, %Y}] - optional date offset and display format - invoice date invoice number if invoicees are involved, The offset can be any plus or minus any number of days and the display can be any valid PHP strftime format string.
 +
 +
=== Invoice Values ===
 +
These template variables will display a value form the invoice.
 +
 +
==== Custom Invoice Values====
 +
You have the option to create a custom invoice variable to display a value from an invoice. [INVOICEVAL with a selection of the following variables specifies the calculation:
 +
 +
CHA - charges
 +
 +
CON - currency conversion. Example: CONEURUSD will convert the first currency (Euros) to the second currency (USD). CON1.234 would multiply the prices by 1.234
 +
 +
DEC - Decimal points. Example: DEC, will show a comma as decimal point. If nothing is set the system will use the default for the language
 +
 +
DP0 - no decimal places
 +
 +
DP1 - 1 decimal place
 +
 +
DP2 - 2 decimal places
 +
 +
DP3 - 3 decimal places
 +
 +
DP4 - 4 decimal places
 +
 +
DES - used as "DESsome description" - gives the sum of values containing the description "some description"
 +
 +
INV - invoicee, add the invoicee number at the end. Example: INV20 to show invoicee number 20, INV0 will show items not assigned to an invoicee, INV-1 will show all items from the booking regardless of invoicee. You can combine INV[BOOKINGINVOICEEID]] to add the invoicee from the booking
 +
 +
IT1 - item 1 in the invoice
 +
 +
IT2 -  item 2 in the invoice
 +
 +
IT3 -  item 3 in the invoice
 +
 +
IT4 -  item 4 in the invoice
 +
 +
IT5 -  item 5 in the invoice
 +
 +
MUL - multiplier. Example: MUL1.2 will multiply all prices by 1.2
 +
 +
NUM - show with decimal place (for scripts)
 +
 +
THO - thousands separator. THO. will show a dot as thousand separator. If nothing is set the system will use the default for the language
 +
 +
UPS1 - upsell 1
 +
 +
UPS2 - upsell 2
 +
 +
UPS3 - upsell 3
 +
 +
UPS4 - upsell 4
 +
 +
UPS5 - upsell 5
 +
 +
ONE - shows only items from the specified booking (not the booking group)
 +
 +
PAY - shows payments
 +
 +
QTY - shows quantity
 +
 +
SEX - status excluded. Calculate the balance of all invoice items except for the ones with these status, the status items can be a comma separated list. Example: SEX status1,status2,status4 will not show items with this status.
 +
 +
SIN - status included. Calculate the balance of all invoice items with matching status, the status items can be a comma separated list. Example: SIN status1,status2,status4 will only show items with this status.
 +
 +
VAT - VAT summary
 +
 +
 +
Connect the variables with an underscore.
 +
 +
Examples:
 +
 +
[INVOICEVAL:PAY_THO] will show payments with a thousands separator
 +
 +
[INVOICEVAL:UPS1_UPS2]  will show the sum of upsell 1 and upsell 2
 +
 +
==== Standard Invoice Values====
 
[INVOICEBALANCE] - invoice balance
 
[INVOICEBALANCE] - invoice balance
  
Line 476: Line 1,176:
  
 
[INVOICEPARTPAYMENTSNUM:status1,status2,status4:10%] - As per INVOICEPARTCHARGES but the value is displayed with a decimal point and no thousands separator (for calculation).
 
[INVOICEPARTPAYMENTSNUM:status1,status2,status4:10%] - As per INVOICEPARTCHARGES but the value is displayed with a decimal point and no thousands separator (for calculation).
 +
 +
[INVOICEPENDPAY] - all (auto and manual) pending payments including failed
 +
 +
[INVOICEPENDPAYNEXTDATE]  - date of the next pending payment
 +
 +
[INVOICEPENDPAYNEXTDATE:]  - date of the next pending payment display can be any valid PHP strftime format string. Information about PHP strftime Strings can be find found here: http://php.net/manual/de/function.strftime.php
 +
 +
[INVOICEPENDPAYNUM] - all (auto and manual) pending payments including failed but the value is displayed with a decimal point and no thousands separator (for calculation).
 +
 +
[INVOICEPENDPAY1234] -  all (auto and manual) pending payments including failed for the specified invoicee (-1 will include all items regardless of invoicee)
 +
 +
[INVOICEPENDPAYNUM1234] -  all (auto and manual) pending payments including failed for the specified invoicee (-1 will include all items regardless of invoicee) The value is displayed with a decimal point and no thousands separator (for calculation).
 +
 +
[INVOICEPENDPAYAUTO] -  auto  pending payments before due date
 +
 +
[INVOICEPENDPAYAUTONUM] - auto  pending payments before due date but the value is displayed with a decimal point and no thousands separator (for calculation).
 +
 +
[INVOICEPENDPAYAUTO1234]  auto pending payments before due date for the specified invoicee but the value is displayed with a decimal point and no thousands separator (for calculation) (-1 will include all items regardless of invoicee)
 +
 +
[INVOICEPENDPAYAUTONUM1234]  auto pending payments before due date for the specified invoicee but the value is displayed with a decimal point and no thousands separator (for calculation) (-1 will include all items regardless of invoicee)
 +
 +
[INVOICEPENDPAYFAIL]  - failed pending payments (all also past)
 +
 +
[INVOICEPENDPAYFAILNUM] - failed pending payments (all also past)  but the value is displayed with a decimal point and no thousands separator (for calculation)
 +
 +
[INVOICEPENDPAYFAIL234] - failed pending payments (all also past) for the specified invoicee  (-1 will include all items regardless of invoicee)
 +
 +
[INVOICEPENDPAYFAILNUM234] - failed pending payments (all also past) for the specified invoicee but the value is displayed with a decimal point and no thousands separator (for calculation) (-1 will include all items regardless of invoicee)
 +
 +
[INVOICEPENDPAYRULE1] - shows all pending payment for this rule (exchange 1 for the rule number)
 +
 +
[INVOICEPENDPAYRULENUM1] - shows all pending payment for this rule (exchange 1 for the rule number) displayed with a decimal point and no thousands separator (for calculation)
 +
 +
[INVOICEPENDPAYMANUAL] -  manual pending payments
 +
 +
[INVOICEPENDPAYMANUALNUM] -  manual pending payments but the value is displayed with a decimal point and no thousands separator (for calculation).
 +
 +
[INVOICEPENDPAYMANUALNOTDUE] manual pending payments before due date
 +
 +
[INVOICEPENDPAYMANUALNOTDUENUM] manual  pending payments before due date  but the value is displayed with a decimal point and no thousands separator (for calculation).
 +
 +
[INVOICEPENDPAYMANUALOVERDUE] manual  pending payments after due date
 +
 +
[INVOICEPENDPAYMANUALOVERDUENUM] manual  pending payments after due date  but the value is displayed with a decimal point and no thousands separator (for calculation)
  
 
[INVOICECREDITS] - invoice sum of all credit items (negative items)
 
[INVOICECREDITS] - invoice sum of all credit items (negative items)
Line 505: Line 1,249:
 
[INVOICEFIRSTITEMNUM] - price of the item listed first in the invoice but the value is displayed with a decimal point and no thousands separator (for calculations)
 
[INVOICEFIRSTITEMNUM] - price of the item listed first in the invoice but the value is displayed with a decimal point and no thousands separator (for calculations)
  
[INVOICEUPSELL0] - base price without upsell items or other charges added later
+
[INVOICESECONDITEM] - price of the item listed second in the invoice
  
[INVOICEUPSELLNUM0] - as per [INVOICEUPSELL1] but the value is displayed with a decimal point and no thousands separator (for calculations)
+
[INVOICESECONDITEMNUM] - price of the item listed second in the invoice but the value is displayed with a decimal point and no thousands separator (for calculations)
  
[INVOICEUPSELL1] - value of upsell item 1 (number can be between 0 to 20)
+
[INVOICETHIRDITEM] - price of the item listed third in the invoice
  
[INVOICEUPSELLNUM1] - as per [INVOICEUPSELL1] but the value is displayed with a decimal point and no thousands separator (for calculations)
+
[INVOICETHIRDITEMNUM] - price of the item listed third in the invoice but the value is displayed with a decimal point and no thousands separator (for calculations)
  
[INVOICEUPSELLQTY1] - quantity of upsell item 1 (number can be between 1 to 20)
+
[INVOICEFOURTHITEM] - price of the item listed fourth in the invoice
  
[INVOICEUPSELLHEADLINE1] - headline of upsell item 1 (number can be between 1 to 20)
+
[INVOICEFOURTHITEMNUM] - price of the item listed fourth in the invoice but the value is displayed with a decimal point and no thousands separator (for calculations)
  
[INVOICEUPSELLDESCRIPTION1]  - description of upsell item 1 (number can be between 1 to 20)
+
[INVOICEFIFTHITEM]  - price of the item listed fifth in the invoice
  
[INVOICEEXTRAITEM1] - value of extra invoice item 1 (number can be between 0 to 20)
+
[INVOICEFIFTHITEMNUM] - price of the item listed fifth in the invoice but the value is displayed with a decimal point and no thousands separator (for calculations)
  
[INVOICEEXTRAITEM1] - value of extra invoice item 1 (number can be between 0 to 20)
+
[INVOICEUPSELL0] - base price without upsell items or other charges added later
  
[INVOICEEXTRAITEMNUM1] - as per [INVOICEEXTRAITEM1] but the value is displayed with a decimal point and no thousands separator (for calculations).
+
[INVOICEUPSELLNUM0] - as per [INVOICEUPSELL1] but the value is displayed with a decimal point and no thousands separator (for calculations)
  
[INVOICEEXTRAITEMQTY1] - quantity of extra invoice item 1 (number can be between 0 to 20)
+
[INVOICEUPSELL1] - value of upsell item 1 (number can be between 0 to 20)
  
[UPSELLTABLE] - table with all upsell items
+
[INVOICEUPSELLNUM1] - as per [INVOICEUPSELL1] but the value is displayed with a decimal point and no thousands separator (for calculations)
  
[UPSELLTABLEVAT] - table with all upsell items with vat information and vat summary
+
[INVOICEUPSELLQTY1] - quantity of upsell item 1 (number can be between 1 to 20)
  
[UPSELLTABLENOREFUND] - table with all upsell items except refundable items
+
[INVOICEUPSELLNAME1] - name of the headline field of upsell item 1 (number can be between 1 to 20)
  
== Invoice Table ==
+
[INVOICEUPSELLSTATUS1] - stautus of the headline field of upsell item 1 (number can be between 1 to 20)
  
=== Custom Invoice Table ===
+
[INVOICEUPSELLHEADLINE1]  - headline (name and status if used of upsell item 1 (number can be between 1 to 20)
You have the option to create a custom invoice table. Available content variables are:
 
  
AMO - shows the net value (price x quantity)
+
[INVOICEUPSELLDESCRIPTION1]  - description of upsell item 1 (number can be between 1 to 20)
  
CON - currency conversion. Example: CONEURUSD will convert the first currency (Euros) to the second currency (USD)
+
[INVOICEUPSELLAMOUNTNUM1]  - amout of upsell item 1
  
CUA - currency symbol showing after the numbers. Example: CUA€ will show € after the figures
 
  
CUB - currency symbol showing before the numbers. Example: CUB€ will show € before the figures
 
  
DEC - Decimal points. Example: DEC, will show a comma as decimal point. If nothing is set the system will use the default for the language
 
  
GRP - Group Totals. Displays the same items as a total
+
[INVOICEUPSELLTYPE1] - type of upsell item 1
  
GRT - Grand Total
+
[INVOICEUPSELLPER1] - per of upsell item 1
  
INV - invoicee add the invoicee number at the end. Example: INV20 to show invoicee number 20
+
[INVOICEUPSELLPERIOD1]  - period of upsell item 1
  
LAN - language. Example LANDE will force the language to German
 
  
MUL - multiplier. Example: MUL1.2 will multiply all prices by 1.2
+
[INVOICEEXTRAITEMDESC1] - Name of extra invoice item 1 (number can be between 0 to 20)
  
DAT - adds a date column
+
[INVOICEEXTRAITEM1] - value of extra invoice item 1 (number can be between 0 to 20) Note: the order goes by the order in the dropdown list not by the order the items are entered.
  
PAY - shows payments
+
[INVOICEEXTRAITEM1] - value of extra invoice item 1 (number can be between 0 to 20) Note: the order goes by the order in the dropdown list not by the order the items are entered.
  
PRI - shows prices
+
[INVOICEEXTRAITEMNUM1] - as per [INVOICEEXTRAITEM1] but the value is displayed with a decimal point and no thousands separator (for calculations).
  
QTY - shows quantity
+
[INVOICEEXTRAITEMQTY1] - quantity of extra invoice item 1 (number can be between 0 to 20)  Note: the order goes by the order in the dropdown list not by the order the items are entered.
  
SEX - status excluded. Calculate the balance of all invoice items except for the ones with these status, the status items can be a comma separated list. Example:  SIN status1,status2,status4 will not show items with this status.
+
[INVOICEGROSS:1] - gross amount of the inserted VAT rate (number is the VAT rate), value is displayed with a decimal point and no thousands separator (for calculations)
  
SIN - status included.  Calculate the balance of all invoice items with matching status, the status items can be a comma separated list. Example:  SEX status1,status2,status4 will only show items with this status.
+
INVOICEGROSSNUM:1] gross amount of the inserted VAT rate (number is the VAT rate)
  
STA- shows staus
+
[INVOICENET:1] - net amount of the inserted VAT rate (number is the VAT rate)
  
THO - thousands separator. THO. will show a dot as thousand separator. If nothing is set the system will use the default for the language
+
[INVOICENETNUM:1] - net amount of the inserted VAT rate (number is the VAT rate), value is displayed with a decimal point and no thousands separator (for calculations)
  
TOT - shows total amounts
+
[INVOICEVAT:1] - VAT amount of the inserted VAT rate (number is the VAT rate)
  
VAA - shows VAT amounts
+
[INVOICEVATNUM:1] VAT amount of the inserted VAT rate (number is the VAT rate), value is displayed with a decimal point and no thousands separator (for calculations)
  
VAP - shows VAT percents
+
[INVOICEITEMBYDESC:Searchterm] - searches the invoice for items with  this search term and adds them up
  
VAT - VAT summary
+
[INVOICEITEMBYDESCNUM:Searchterm] - searches the invoice for items with  this search term and adds them up, value is displayed with a decimal point and no thousands separator (for calculations)
  
 +
[INVOICEPAYMENTBYDESC:Searchterm] -  searches the payments for items with  this search term and adds them up
  
 +
[INVOICEPAYMENTBYDESCNUM:Searchterm] -  searches the payments for items with  this search term and adds them up, value is displayed with a decimal point and no thousands separator (for calculations)
  
Connect the variables with an underscore.  
+
=== Invoice  Table ===
 +
These template varibles will display an invoice table.  
 +
==== Standard Invoice Tables ====
 +
[INVOICETABLE] - invoice table
  
Example:
+
[INVOICETABLEVAT] - invoice table with vat information and vat summary
 
 
[INVOICE:PRI_QTY_CUA€] will create an invoice table with price and quantity in Euros.
 
 
 
=== Invoice Tables with predefined content ===
 
 
 
[INVOICETABLE] - invoice table
 
  
 
[INVOICETABLE:$1.1$] - invoice table and currency multiplier with optional new currency symbol before or after price.
 
[INVOICETABLE:$1.1$] - invoice table and currency multiplier with optional new currency symbol before or after price.
Line 613: Line 1,351:
  
 
[INVOICETABLENOTOT2:$1.1$]  - invoice table with status field without grand total and currency multiplier with optional new currency symbol before or after price.
 
[INVOICETABLENOTOT2:$1.1$]  - invoice table with status field without grand total and currency multiplier with optional new currency symbol before or after price.
 
[INVOICETABLEVAT] - invoice table with vat information and vat summary
 
  
 
[INVOICETABLEVAT:$1.1$] - invoice table with vat information and currency multiplier with optional new currency symbol before or after price.
 
[INVOICETABLEVAT:$1.1$] - invoice table with vat information and currency multiplier with optional new currency symbol before or after price.
Line 649: Line 1,385:
  
 
[INVOICETABLEINVOICEE1234] - invoice table for a specific invoicee, specify the invoicee Id number.
 
[INVOICETABLEINVOICEE1234] - invoice table for a specific invoicee, specify the invoicee Id number.
 +
 +
[UPSELLTABLE] - table with all upsell items
 +
 +
[UPSELLTABLEVAT] - table with all upsell items with vat information and vat summary
 +
 +
[UPSELLTABLENOREFUND] - table with all upsell items except refundable items
 +
 +
==== Custom Invoice Table ====
 +
You have the option to create a custom invoice table. Available content variables are:
 +
 +
AMO - shows the net value (price x quantity)
 +
 +
CEX - charges excluded (charges will not be shown)
 +
 +
CON - currency conversion. Example: CONEURUSD will convert the first currency (Euros) to the second currency (USD). CON1.234 would multiply the prices by 1.234
 +
 +
CUA - currency symbol showing after the numbers. Example: CUA€ will show € after the figures
 +
 +
CUB - currency symbol showing before the numbers. Example: CUB€ will show € before the figures
 +
 +
DAT - adds a date column - you have the option to control the format of the date using [[Template_Variables#Date_and_Time|date and time variables]] for example DAT{%d-%m-%Y}
 +
 +
DEC - Decimal points. Example: DEC, will show a comma as decimal point. If nothing is set the system will use the default for the language
 +
 +
DP0 - no decimal places
 +
 +
DP1 - 1  decimal place
 +
 +
DP2  - 2 decimal places
 +
 +
DP3 - 3 decimal places
 +
 +
DP4 - 4 decimal places
 +
 +
GAT -  sum for each column
 +
 +
GRP  -  Group Totals. Displays the same items as a total
 +
 +
GRT  - Grand Total
 +
 +
INV - invoicee, add the invoicee number at the end. Example: INV20 to show invoicee number 20, INV0 will show items not assigned to an invoicee, INV-1 will show all items from the booking regardless of invoicee. You can combine INV[BOOKINGINVOICEEID]] to add the invoicee from the booking
 +
 +
LAN - language. Example LANDE will force the language to German
 +
 +
MUL - multiplier. Example: MUL1.2 will multiply all prices by 1.2
 +
 +
NIN - do not show invoice number and invoice date on locked invoices
 +
 +
NOC - charges will not be displayed but their vat values are still calculated for the vat summary (VAT)
 +
 +
NOP - payments will not be displayed
 +
 +
ONE - shows only items from the specified booking (not the booking group)
 +
 +
ORB - order by booking, this keeps the items for each booking (room) together in the table
 +
 +
PAA - shows a column with payment amounts
 +
 +
PAY - shows payments
 +
 +
PEN - shows pending payments description
 +
 +
PPA - shows pending payments amount 
 +
 +
PRI - shows prices in a column
 +
 +
QTY - shows quantity
 +
 +
SEX - status excluded. Calculate the balance of all invoice items except for the ones with these status, the status items can be a comma separated list. Example:  SEX status1,status2,status4 will not show items with this status.
 +
 +
SIN - status included.  Calculate the balance of all invoice items with matching status, the status items can be a comma separated list. Example:  SIN status1,status2,status4 will only show items with this status.
 +
 +
STA- shows staus
 +
 +
THO - thousands separator. THO. will show a dot as thousand separator. If nothing is set the system will use the default for the language
 +
 +
TOT - shows total amounts
 +
 +
VAA - shows VAT amounts
 +
 +
VAP - shows VAT percents
 +
 +
VAT - VAT summary
 +
 +
 +
Connect the variables with an underscore.
 +
 +
Examples:
 +
 +
[INVOICE:PRI_QTY_CUA€] will create an invoice table with price and quantity in Euros.
 +
 +
[INVOICE:PAY_TOT_CEX] will create an invoice table which will only show payments.
 +
 +
[INVOICE:PRI_QTY_CUA_TOT_VAT_QTY_PAY_GRT_AMO_VAA] will create an invoice table with more information.
 +
 +
[INVOICE:SIN TRANSPORT] will create an invoice table with the Invoice item description for any items with the Status = Transport.
  
 
== Invoicee Variables ==
 
== Invoicee Variables ==
Line 677: Line 1,509:
 
[INVOICEENAME] - name of the invoicee account the invoice is assigned to or blank
 
[INVOICEENAME] - name of the invoicee account the invoice is assigned to or blank
  
[INVOICECCODE] - code of the invoicee account the invoice is assigned to or blank
+
[INVOICEECODE] - code of the invoicee account the invoice is assigned to or blank
 +
 
 +
[INVOICEECURRENCY] - currency of the invoicee account the invoice is assigned to if it is not the property default or blank
 +
 
 +
[INVOICEENOTES] - value of the "Notes" field for the invoicee
  
 
[INVOICEETEMPLATE1] - template value 1 of the invoice account the invoice is assigned to or blank
 
[INVOICEETEMPLATE1] - template value 1 of the invoice account the invoice is assigned to or blank
Line 694: Line 1,530:
  
 
[INVOICEETEMPLATE8] - template value 8 of the invoice account the invoice is assigned to or blank
 
[INVOICEETEMPLATE8] - template value 8 of the invoice account the invoice is assigned to or blank
 +
 +
[INVOICEETEMPLATE1BR] - template value 1 of the invoice account the invoice is assigned to or blank with linkebreak
 +
 +
[INVOICEETEMPLATE2BR] - template value 2 of the invoice account the invoice is assigned to or blank with linkebreak
 +
 +
[INVOICEETEMPLATE3BR] - template value 3 of the invoice account the invoice is assigned to or blank with linkebreak
 +
 +
[INVOICEETEMPLATE4BR] - template value 4 of the invoice account the invoice is assigned to or blank with linkebreak
 +
 +
[INVOICEETEMPLATE5BR] - template value 5 of the invoice account the invoice is assigned to or blank with linkebreak
 +
 +
[INVOICEETEMPLATE6BR] - template value 6 of the invoice account the invoice is assigned to or blank with linkebreak
 +
 +
[INVOICEETEMPLATE7BR] - template value 7 of the invoice account the invoice is assigned to or blank with linkebreak
 +
 +
[INVOICEETEMPLATE8BR] - template value 8 of the invoice account the invoice is assigned to or blank with linkebreak
 +
  
 
== Payment Request Variables ==
 
== Payment Request Variables ==
Line 713: Line 1,566:
  
 
[PAYBUTTON:200] - Creates a payment button for the payment request for a fixed amount.  
 
[PAYBUTTON:200] - Creates a payment button for the payment request for a fixed amount.  
 
  
 
[PAYPALURL] - Creates a Paypal payment url for the amount in the booking deposit field if non zero, otherwise the outstanding balance.
 
[PAYPALURL] - Creates a Paypal payment url for the amount in the booking deposit field if non zero, otherwise the outstanding balance.
Line 733: Line 1,585:
 
[PAYPALBUTTON:200] - Creates a Paypal payment button for a fixed amount. A zero amount will cause paypal to provide a field to enter an amount. Not recommended for emails.
 
[PAYPALBUTTON:200] - Creates a Paypal payment button for a fixed amount. A zero amount will cause paypal to provide a field to enter an amount. Not recommended for emails.
  
 +
Add a H to exclude a gateway from displaying. Example: [PAYURL:200:HST] will hide Stripe
 +
 +
== Text Operators ==
 +
 +
[REPLACE|searchForThisText|replaceWithThisText|textToSearch] - replace "searchForThisText" with "replaceWithThisText" within the text "textToSearch"
 +
 +
 +
[SUBSTR|startCharacterNumber|numberOfCharacters|textToGetSubstringFrom] - get a sub string from "textToGetSubstringFrom" starting at character "startCharacterNumber" (integer, 0 is the first char) with a length of "numberOfCharacters" (integer)
 +
 +
 +
1. [SUBSTR|0|4|[GUESTPHONENUM]]
 +
 +
This will test for the first 4 characters of the Guest phone number.
 +
 +
 +
[TRIM|  string to trim  ] - remove whitespace from the start and end of "  string to trim  "
 +
 +
== iCal Links ==
 +
These template variables will create iCal links which allow the booking to be added to a calendar.
 +
 +
[ICALURL] - Calendar link
 +
 +
[ICALURL:16] - Calendar link with check-in hour. Replace '16' with the hour check-in starts.
 +
 +
[ICALURL::10] - Calendar link with check-out hour. Replace '10' with the hour with the hour check-out ends.
 +
 +
[ICALURL:::summary text] - Calendar link with a summary text
 +
 +
[ICALURL::::description text] - Calendar link with a descriptive text
 +
 +
Example:
 +
 +
Calendar link with check-in time 16:00, check-out time 10:00, the summary text "Booking" and the description text "Sunny Hotel":
 +
 +
[ICALURL:16:10:Booking:Sunny Hotel]
  
 
== Mathematical Operators ==
 
== Mathematical Operators ==
Line 749: Line 1,636:
  
 
[MAX] - Example: 2 [MAX] 3 = 3
 
[MAX] - Example: 2 [MAX] 3 = 3
 +
 +
Brackets are not supported as a way to control processing order, the processing order is fixed as *, /, +, -, MIN, MAX
 +
 +
If you want to use * and - in the same calculation, for example you need 20% of the result, then you will need to use the calculation below as a * calculation will be calculated first.
 +
 +
[INVOICECHARGESNUM][*]0.2[-][INVOICESECONDITEMNUM][*]0.2[-][COMMISSIONNUM][*]0.2
 +
 +
<span style="color: #f3e504; font-size: 150%;" >{{#fas:lightbulb}} </span> Property Template 1-8 and Room Template 1-8 can be used to set calculations. If using Room Templates to make a calculation, then use Room Template 8 before Room Template 7.
 +
 +
If you want to see the value 10.
 +
Set Room template 6 = [ROOMTEMPLATE7][+][ROOMTEMPLATE8] and enter 4 in Room template 7 and 6 in Room template 8.
 +
 +
You can set a calculation in Room Templates to show in Property Templates, but not the other way around. So "Property Template1" could pull the calculation of [ROOMTEMPLATE6] and the result = 10.
 +
  
 
=== Rounding and controlling decimal places ===
 
=== Rounding and controlling decimal places ===
Line 773: Line 1,674:
 
<b>This works on all operators including [MIN] and [MAX]</b>
 
<b>This works on all operators including [MIN] and [MAX]</b>
  
  Note: The math functions will only work with numbers with a decimal point (not a decimal comma) and no thousands separator and no currency symbol.
+
  Note: Always use the template variables ending with NUM. The math functions will only work with numbers with a decimal point (not a decimal comma) and no thousands separator and no currency symbol.
  
 
== Currency Conversion ==
 
== Currency Conversion ==
Line 789: Line 1,690:
 
123456*[CONVERT:EUR-USD]
 
123456*[CONVERT:EUR-USD]
  
== Custom Date Format Variables ==
+
123456*[CONVERT:USD-EUR][/]0.85 will convert to Euros and divides the price by 0.85 which raises it by circa 15%
You can use  PHP strftime format strings to create custom time formats.  Information on PHP strftime strings is available at [http://php.net/manual/en/function.strftime.php]
 
  
[FIRSTNIGHT:{%A, %e %B, %Y}] -  first night booked
+
==Account Variables (account of the booking) ==
  
[FIRSTNIGHT:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be any valid PHP strftime format string.
+
[ACCOUNTUSERNAME] - Username of the account owning the booking
  
[LASTNIGHT:{%A, %e %B, %Y}] - last night booked
+
[LOGGEDINACCOUNTUSERNAME]  - Username of the person logged in
 
 
[LASTNIGHT:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be any valid PHP strftime format string.
 
 
 
[LEAVINGDAY:{%A, %e %B, %Y}] -  check-out
 
 
 
[LEAVINGDAY:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be any valid PHP strftime format string.
 
 
 
[CURRENTDATE:{%A, %e %B, %Y}] - current date
 
 
 
[CURRENTDATE:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be any valid PHP strftime format string.
 
 
 
[BOOKINGDATE:{%A, %e %B, %Y}] - booking date
 
 
 
[BOOKINGDATE:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be any valid PHP strftime format string.
 
 
 
[PAYMENTDATE:{%A, %e %B, %Y}] - most recent payment date
 
 
 
[PAYMENTDATE:+1day{%A, %e %B, %Y}:1:1000] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be any valid PHP strftime format string. The second parameter specifies the payment to show, 0 or missing means the most recent payment. The third parameter specifies the invoicee.
 
 
 
==Account Variables (account of the booking) ==
 
  
 
[ACCOUNTID] - account id of the booked property
 
[ACCOUNTID] - account id of the booked property
Line 827: Line 1,707:
  
 
[ACCOUNTTEMPLATE4] - Account Template 4  
 
[ACCOUNTTEMPLATE4] - Account Template 4  
 +
 +
[COMMISSIONLIMIT] - shows the available commission amount for the owner account of the booking
  
 
[MASTERACCOUNTTEMPLATE1] - Account Template 1 from master account
 
[MASTERACCOUNTTEMPLATE1] - Account Template 1 from master account
Line 836: Line 1,718:
 
[MASTERACCOUNTTEMPLATE4] - Account Template 4 from master account
 
[MASTERACCOUNTTEMPLATE4] - Account Template 4 from master account
  
==Account Variables (logged in account, only for display in control panel, not for auto actions or emails etc.) ==
+
==Account Variables (logged in account, only for display in control panel , not for auto actions or emails etc.) ==
 +
These variables can for example used by resellers who added a custom tab to the bookings.
  
 
[LOGGEDINACCOUNTID] - account id of the logged in user
 
[LOGGEDINACCOUNTID] - account id of the logged in user
Line 858: Line 1,741:
 
[MASTERLOGGEDINACCOUNTTEMPLATE4] - Account Template 4 from master account
 
[MASTERLOGGEDINACCOUNTTEMPLATE4] - Account Template 4 from master account
  
 +
== Smart Logic Template Variables ==
 +
 +
IF style template variables will compare two values and display a text if the comparison is true and an alternative text if the comparison is false.
 +
Colons : are used between the two comparison values and the first text, a pipe | is used between the two texts.
 +
Empty text is allowed if you do not want to display anything for a condition.
 +
 +
[IF=:if this:equals this:display this text|otherwise display this text]
 +
 +
[IFIN:if this:is contained in this:display this text|otherwise display this text]
 +
 +
[IFLIKE:if this:is like this:display this text|otherwise display this text]
 +
 +
[IF>:if this:is greater than this:display this text|otherwise display this text]
 +
 +
[IF>=:if this:is greater than or equal to this:display this text|otherwise display this text]
 +
 +
[IF<:if this:is less than this:display this text|otherwise display this text]
 +
 +
[IF<=:if this:is less than or equal to this:display this text|otherwise display this text]
 +
 +
[IFBETWEEN:if this:is between this:and this:display this text|if it is lower display this text|if it is higher display this text]
 +
 +
 +
You can use IF variables inside other IF variables to create complex logic but the internal IF: must be processed before the external IF
 +
 +
There are special versions of each IF constructed with ^ and ~ separators like [IF=^this^this^same~different]
 +
 +
<span style="color: #f3e504; font-size: 150%;" >{{#fas:lightbulb}} </span>Only one IF of each type can be used to create complex logic.
 +
 +
The special versions are processed first so should be used as the internal IF so it's result can be processed by the outer if.
 +
 +
The special versions can also be used if you expect : or | characters within your data.
  
== Smart Template Variables ==
 
Smart template variables will display the set content only if a certain condition is met or not met.
 
  
The last element is the text to show based on the result of the IF comparison, texts for the true and false case are separated by a pipe |
 
  
Template variables can be used inside this template variable as per the examples.
+
IF's are processed in the following order.
 +
i.e. all the [IF=^ will be processed first, then all the [IFIN^ etc.  
  
 +
[IF=^
 +
[IFIN^
 +
[IFLIKE^
 +
[IF>^
 +
[IF>=^
 +
[IF<^
 +
[IF<=^
 +
[IFBETWEEN^
 +
[IF=:
 +
[IFIN:
 +
[IFLIKE:
 +
[IF>:
 +
[IF>=:
 +
[IF<:
 +
[IF<=:
 +
[IFBETWEEN:
  
1. [IF=:[GUESTNAME]:Miller:yes|no]
+
 
 +
=== Examples ===
 +
 
 +
Template variables can be used inside this template variable as per the examples <span style="color: #019cde">comparison in blue</span>, <span style="color: #75d5ad">positive result in green</span>, <span style="color: #fe746c">negative result in red</span>:
 +
 
 +
1. [<span style="color: #019cde">IF=:[GUESTNAME]</span><span style="color: #75d5ad">:Miller</span><span style="color: #75d5ad"><span style="color: #75d5ad">:yes</span> <span style="color: #fe746c">|no</span>]
  
 
If the guestname is Miller the text "yes" will display. If the guest name is not Miller the text "no" will display
 
If the guestname is Miller the text "yes" will display. If the guest name is not Miller the text "no" will display
  
2. [IF>:[NUMADULT]:2:please contact us about you bedding requirements|]
+
2.[<span style="color: #019cde"> IF>:[NUMADULT]:2</span><span style="color: #75d5ad">:please contact us about you bedding requirements|</span>]
  
 
If the number of adults is higher than 2 the text"please contact us about you bedding requirements" will display. If the number of adults is lower than or equal 2 nothing will display.
 
If the number of adults is higher than 2 the text"please contact us about you bedding requirements" will display. If the number of adults is lower than or equal 2 nothing will display.
  
3. [IF<:[NUMADULT]:3:|linen for two adults is included free of charge]
+
3. [<span style="color: #019cde">IF<:[NUMADULT]:3</span><span style="color: #75d5ad">:|linen for two adults is included free of charge</span>]
  
 
If the number of adults is lower than 3 nothing will display. If the number of adults is  not lower than 3 the text "linen for two adults is included free of charge" will display.  
 
If the number of adults is lower than 3 nothing will display. If the number of adults is  not lower than 3 the text "linen for two adults is included free of charge" will display.  
  
4. [IF<=:[NUMADULT]:2:yes|no]
+
4. [<span style="color: #019cde">IF<=:[NUMADULT]:2</span><span style="color: #75d5ad">:yes</span><span style="color: #fe746c">|no</span>]
  
5. [IF>=:[NUMADULT]:2:yes|no]
+
5. [<span style="color: #019cde">IF>=:[NUMADULT]:2</span><span style="color: #75d5ad">:yes</span><span style="color: #fe746c">|no</span>]
  
6. [IFBETWEEN:[NUMADULT]:1:3:yes|too low|too high]
+
6. [<span style="color: #019cde">IFBETWEEN:[NUMADULT]:1:3</span><span style="color: #75d5ad">:yes</span><span style="color: #fe746c">|too low|too high</span>]
  
7. [IFLIKE:[GUESTTITLE]:Mr:Dear|Hi]
+
7. [<span style="color: #019cde">IFLIKE:[GUESTTITLE]</span><span style="color: #75d5ad">:Mr:Dear</span><span style="color: #fe746c">|Hi</span>]
  
 
IFLIKE works like IF= except it is case insensitive and removes any spaces from the start and end of the words
 
IFLIKE works like IF= except it is case insensitive and removes any spaces from the start and end of the words
  
8. [IFIN:John:[GUESTFIRSTNAME]:Hi John|Your name does not contain John?]
+
8. [<span style="color: #019cde">IFIN:John:[GUESTFIRSTNAME]</span><span style="color: #75d5ad">:Hi John</span><span style="color: #fe746c">|Your name does not contain John?</span>]
  
 
If the first word is contained in the second word the first option is displayed, otherwise the second option is displayed
 
If the first word is contained in the second word the first option is displayed, otherwise the second option is displayed
 +
 +
9. [<span style="color: #019cde">IFIN:CHECKIN:[BOOKINGINFOITEMS]</span><span style="color: #75d5ad">:[BOOKINGINFOCODETEXT:CHECKIN]</span><span style="color: #fe746c">|</span>]
 +
 +
If the Booking Info Code CHECKIN has been added to the booking then you will see the value in the text (date/time) otherwise blank.
 +
 +
Using multiple IF statements to display special messages :-
 +
 +
10. [<span style="color: #019cde">IFIN:DEPOSIT:[BOOKINGINFOCODES]:|[IF=:[GUESTCOUNTRY2]:AU</span><span style="color: #75d5ad">:Credit card details are required </span><span style="color: #fe746c">|A deposit is required]|No deposit is required</span>]
 +
 +
You want  to display a special message to Australians if the booking has a DEPOSIT info item code, if a deposit is required from a non Australia they get "A deposit is required" and if no deposit is required they see "No deposit is required"
 +
 +
11. [<span style="color: #019cde">IF<:[INADVANCE]:|[IFIN:TRANSFER:[BOOKINGINFOCODES]:3</span><span style="color: #75d5ad">:Payment Due Date: ASAP </span><span style="color: #fe746c">|Payment Due Date: [FIRSTNIGHT:- 30days]]|</span>]
 +
 +
You want display a special message to your guests 3 days before checkin with a Booking Info Code = TRANSFER.
 +
 +
12. [<span style="color: #019cde">IF=:[STATUS]:Confirmed:PAID|[IF<^[INADVANCE]^30</span><span style="color: #75d5ad">^Payment Due Date: As soon as possible</span><span style="color: #fe746c">~Payment Due Date: [FIRSTNIGHT:- 30 days]]</span>]
 +
 +
You want to display a special message for your guests for any bookings with Status not = Confirmed, and if the checkin date is more than 30 days in advance, then send the message with "Payment Due Date : "or that the "Payment is due As soon as possible".
 +
 +
13. [<span style="color: #019cde">IFBETWEEN:[TURNOVERDAYS]:0:3:</span><span style="color: #75d5ad">yes|</span><span style="color: #fe746c">no</span>]
 +
 +
You want to test if the days until next arrival into the same unit is between 0 and 3 days. Could be used for offering Late Checkouts or additional days to the guest where there is a gap between bookings.
 +
 +
14. [<span style="color: #019cde">IF>:[VACANTDAYS]:1:</span><span style="color: #75d5ad">yes|</span><span style="color: #fe746c">no</span>]
 +
 +
You want to test if there is 1 day from the previous checkout to check in of current booking. Could be used for offering Early Checkouts or additional days to the guest where there is a gap between bookings.
 +
 +
15. [<span style="color: #019cde">IF=:[LEAVINGDAY:{%a}]:Sun:|[IF>=^[TURNOVERDAYS]^1</span><span style="color: #75d5ad">^yes</span><span style="color: #fe746c">~no]</span>]
 +
 +
You want to test if the leaving date is a Sunday and it there is a gap for 1 or more days between the current booking and the next booking.
 +
 +
16. [<span style="color: #019cde">IF=:[LEAVINGDAY:{%u}]:1:yes|[IF=^[LEAVINGDAY:{%u}]^3</span><span style="color: #75d5ad">^yes</span><span style="color: #fe746c">]</span>]
 +
 +
You want to test if the leaving date is a Monday or a Wednesday to send a specific message to the guest, for example a reminder that it is bin collection day.
 +
 +
17. [<span style="color: #019cde">IF=:[LEAVINGDAY:{%u}]:1:yes|[IF=^[LEAVINGDAY:{%u}]^3^yes][IF=^[LEAVINGDAY:{%u}]^6</span><span style="color: #75d5ad">^yes</span><span style="color: #fe746c">]</span>]
 +
 +
You have different cleaning teams for different days of the week, and you want to send a message to the appropriate team if leaving date is a Monday, Wednesday or Saturday.
 +
 +
18. [<span style="color: #019cde">IF<^[AUTHORIZEUNTIL{%Y-%m-%d}]^[CURRENTDATEYYYY-MM-DD]^yes~</span><span style="color: #75d5ad">no</span><span style="color: #fe746c"></span>]
 +
 +
You need to test if the Stripe authorisation has expired before the end of the booking. Then you want to automate the authorisation again . You will require multiple auto actions based on the min/max stay.
 +
 +
== Write out the number in Words. ==
 +
 +
[INWORDS]  - writes out a number in words. This works in English only.
 +
 +
Expamles:
 +
 +
[INWORDS] 10 will write "ten"
 +
 +
[INWORDS] [INVOICEPAYMENTSNUM] will write out the invoice sum of all payments
 +
 +
[INWORDS] [INVOICEPAYMENTSNUM] [+] 10 will write out the invoice sum of all payments plus 10
 +
 +
== Encoding Template Variables ==
 +
 +
[ENCODEURL:value] encode value for URL data format
 +
 +
[ENCODEJSON:value] encode value for JSON data format
 +
 +
 +
<span style="color: #f3e504; font-size: 150%;" >{{#fas:lightbulb}} </span>  Always use the template variables ending with NUM if numbers are involved. The math functions will only work with numbers with a decimal point (not a decimal comma) and no thousands separator and no currency symbol.

Latest revision as of 13:39, 14 October 2024

Template variables
On this page you find a list of template variables and information on how they are used. 

These variables (short codes) will be replaced by the relevant information from each booking. They can be used in every text settings that allows their use . Copy them exactly as shown, including the square brackets and upper case.

The date variables can have an optional offset value of a number of days added after a colon, for example [FIRSTNIGHT:-3 days]

The price variables can have an optional offset value applied which can be a percentage or fixed amount with or without minus sign added after a colon, for example [PRICE:-10] or [INVOICEBALANCE:25%]


1 Property Variables

[PROPERTYNAME] - property name

[PROPERTYADDRESS] - property address

[PROPERTYCITY] - property city

[PROPERTYSTATE] - property state

[PROPERTYCOUNTRY] - property country

[PROPERTYEMAIL] - property email

[PROPERTYWEB] - property web site

[PROPERTYPHONE] - property phone

[PROPERTYFAX] - property fax

[PROPERTYCONTACTLASTNAME] - property contact last name

[PROPERTYCONTACTFIRSTNAME] - property contact first name

[PROPERTYID] - property id number

[PROPERTYPOSTCODE] - property post code

[PROPERTYCURRENCY] - property currency code

[PROPERTYCURRENCYFRONT] - property currency symbol before number

[PROPERTYCURRENCYBACK] - property currency symbol after number

[PROPERTYLATITUDE] - property latitude

[PROPERTYLONGITUDE] - property longitude

[PROPERTYLOCATIONDESCRIPTION] - property location description

[PROPERTYLOCATIONDESCRIPTIONBR] - property location description with line break

[PROPERTYDIRECTIONS] - property directions from ( (SETTINGS) CHANNEL MANNAGER > PROPERTY CONTENT)

[PROPERTYHEADLINE] - property headline

[PROPERTYDESCRIPTION] - property description

[PROPERTYGENERALPOLICY] - property rental policy

[PROPERTYGENERALPOLICYBR] - property rental policy with line break

[PROPERTYLEGALPOLICY] - property rental policy / obsolete

[PROPERTYCANCELPOLICY] - property cancellation policy

[PROPERTYCANCELPOLICYBR] - property cancellation policy with line breaks

[PROPERTYHOUSERULES] - property house rules ( (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT)

[PROPERTYHOUSERULESBR] - property house rules ( (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT) with line break


[PROPERTYTEMPLATE1] - Property Template 1

[PROPERTYTEMPLATE2] - Property Template 2

[PROPERTYTEMPLATE3] - Property Template 3

[PROPERTYTEMPLATE4] - Property Template 4

[PROPERTYTEMPLATE5] - Property Template 5

[PROPERTYTEMPLATE5] - Property Template 6

[PROPERTYTEMPLATE7] - Property Template 7

[PROPERTYTEMPLATE8] - Property Template 8

[PROPERTYTEMPLATE1BR] - Property Template 1 with line breaks

[PROPERTYTEMPLATE2BR] - Property Template 2 with line breaks

[PROPERTYTEMPLATE3BR] - Property Template 3 with line breaks

[PROPERTYTEMPLATE4BR] - Property Template 4 with line breaks

[PROPERTYTEMPLATE5BR] - Property Template 5 with line breaks

[PROPERTYTEMPLATE6BR] - Property Template 6 with line breaks

[PROPERTYTEMPLATE7BR] - Property Template 7 with line breaks

[PROPERTYTEMPLATE8BR] - Property Template 8 with line breaks

[BOOKINGCOMHOTELID] - booking.com hotel id

[EXPEDIACOMHOTELID] - expedia.com hotel id

[PERMITID] - the permit ID

[CHECKINSTART] - check-in start time in 24hr format (From (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT 'Check-in start')

[CHECKINEND] - check-in end time in 24hr format (From (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT 'Check-in end')

[CHECKOUTEND] - check-out end time in 24hr format (From (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT 'Check-out end')

[CHECKINSTART12] - check-in start time in am/pm format (From (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT 'Check-in start')

[CHECKINEND12] - check-in end time in am/pm format (From (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT 'Check-in end')

[CHECKOUTEND12] - check-out end time in am/pm format (From (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT 'Check-out end')

[PROPERTYDESCRIPTION1] - Property Description 1 from (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT

[PROPERTYDESCRIPTION2] - Property Description 2 from (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT

[PROPERTYDESCBOOKPAGE1] - Property Description Booking Page 1 from (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT

[PROPERTYDESCBOOKPAGE2] - Property Description Booking Page 1 from (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT

[PROPERTYGUESTDETAILSHEADER] - Guest Details Header from (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT

[PROPERTYGUESTENQUIRYHEADER] - Guest Enquiry Header from (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT

[PROPERTYCONFIRMBOOKBUTTON] - Confirm Booking Button Message from (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT

[PROPERTYROOMNOTAVAIL] - Room Not Available Message from (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT

[PROPERTYROOMNOPRICE] - Room No Price Message from (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT

[PROPERTYNOROOMSAVAIL] - No Rooms Available Message from (SETTINGS) BOOKING ENGINE > PROPERTY BOOKING PAGE > CONTENT

[PROPERTYGROUP] - shows the group keywords

2 Room Variables

[ROOMID] - room id number

[ROOMNAME] - room names of all booked rooms (not for cancelled bookings use ROOMNAMEINC if used for cancelled bookings)

[ROOMNAMEBR] - room names with line break

[ROOMNAMEINC] room names of all booked rooms including for cancelled bookings

[ROOMNAMEINCBR] room names with line break

[ROOMNAME1] - room name of first booked room

[ROOMNAMES] - room names including quantity of each booked room

[ROOMNAMESNC] - room names including quantity of each booked room without cancelled rooms

[ROOMNAMESBR] - room names with line break

[ROOMNAMESNCBR] room names with line break without cancelled rooms

[ROOMNAMEOFFER] - room names of all booked rooms with offer name

[ROOMNAMEOFFERBR] - room names of all booked rooms with offer name with line break

[ROOMNAMEOFFERINC] room names of all booked rooms with offer name incl. cancelled bookings

[ROOMNAMEOFFERINCBR] - room names of all booked rooms with offer name with line break

[ROOMTYPEDESC] - room accommodation type first booked room

[ROOMTYPEDESCS] - room accommodation type all booked rooms

[ROOMTYPEDESCSINC] - room accommodation type all booked rooms including cancelled bookings

[ROOMSIZE] - size of the room

[ROOMTEMPLATE1] - ROOM Template 1

[ROOMTEMPLATE2] - ROOM Template 2

[ROOMTEMPLATE3] - ROOM Template 3

[ROOMTEMPLATE4] - ROOM Template 4

[ROOMTEMPLATE5] - ROOM Template 5

[ROOMTEMPLATE6] - ROOM Template 6

[ROOMTEMPLATE7] - ROOM Template 7

[ROOMTEMPLATE8] - ROOM Template 8

[ROOMTEMPLATE1BR] - ROOM Template 1 with linkbreak

[ROOMTEMPLATE2BR] - ROOM Template 2 with linkbreak

[ROOMTEMPLATE3BR] - ROOM Template 3 with linkbreak

[ROOMTEMPLATE4BR] - ROOM Template 4 with linkbreak

[ROOMTEMPLATE5BR] - ROOM Template 5 with linkbreak

[ROOMTEMPLATE6BR] - ROOM Template 6 with linkbreak

[ROOMTEMPLATE7BR] - ROOM Template 7 with linkbreak

[ROOMTEMPLATE8BR] - ROOM Template 8 with linkbreak

[ROOMMETAAUXTEXT] - room auxiliary text setting for first booked room (SETTINGS) PROPERTIES > ROOMS > SETUP > DISPLAY

[ROOMMETAAUXTEXTS] - room auxiliary text setting for all booked rooms

[ROOMMETAAUXTEXTSINC] - room auxiliary text setting for all booked rooms, incl. cancelled bookings

[INTERNALROOMNAME] - internal room name as used in the control panel, this is not the translated room name shown on the booking page

[OFFERID] - ID of the booked offer

[OFFERNAME] - booked offer name for all booked rooms

[OFFERNAME1] - offer name for this booked room only

[OFFERNAMEINC] - offer name for this booked room only including cancelled bookings

[OFFERDESCRIPTION1] - offer description 1 for all booked rooms

[OFFERDESCRIPTION1INC] - offer description 1 for all booked rooms incl. cancelled

[OFFERDESCRIPTION2] - offer description 2 for all booked rooms

[OFFERDESCRIPTION2INC] - offer description 2 for all booked rooms incl. cancelled

[OFFERDESCRIPTION1-1] - offer description 1 for this booked room

[OFFERDESCRIPTION2-1] - offer description 2 for this booked room

[OFFERSUMMARY] - summary offers

[OFFERSUMMARYINC] - summary offers including cancelled bookings

[UNITID1] - ID of the unit (number) for this booking number (coming soon)

[UNITNAME] - unit names of all the assigned room types in the booking group (cancelled bookings are not shown)

[UNITNAMEINC] - unit names of all the assigned room types in the booking group including cancelled bookings

[UNITNAME:1] - additional information (first) about the unit for all the assigned room types in the booking group (cancelled bookings are not shown)

[UNITNAME:2] - additional information (second) about the unit for all the assigned room types in the booking group (cancelled bookings are not shown)

[UNITNAME1] - unit name of the assigned room for this booking number

[UNITNAME1:1] - additional information about the assigned room for this booking number / add the additional information on each line after a | symbol where you set the unit names

[UNITSTATUS1] - the status of the unit

[ROOMDESCRIPTION] - Room description from (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT

[ROOMDESCRIPTION1] - Room description 1 from (SETTINGS) PROPERTIES > ROOMS > SETUP

[LEAVINGDAYAVAIL] - returns yes or no, can be used to trigger an Auto Action

[NUMROOMSAVAIL] - returns the number of available rooms (-1 if overbooked), can be used to trigger an Auto Action

[ROOMRACKRATENUM] - Rack Rate from (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT

[ROOMCLEANINGFEENUM] - Cleaning fee from (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT

[ROOMSECURITYDEPOSITNUM] - Securty deposit from (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT

[ROOMTAXPERCENTNUM] - Tax percentate from from (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT

[ROOMTAXPERSONNUM] - Tax per Person Night from from (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT

3 Booking Variables

[VIEWBOOKING] - create a URL to log into the control panel and view this booking (for hosts, not intended to be sent to guests)

[BOOKID] - booking reference number

[BOOKIDS] - booking reference numbers of all bookings in a group

[BOOKIDSINC] - booking reference of all bookings in a group including cancelled bookings

[GROUPID] - booking reference of the master booking

[REFERENCENUMBER] - booking reference (same as [BOOKID])

[BOOKIDLAST1] - Last 1 digit of booking number

[BOOKIDLAST2] - Last 2 digits of booking number

[BOOKIDLAST3] - Last 3 digits of booking number

[BOOKIDLAST4] - Last 4 digits of booking number

[BOOKIDLAST5] - Last 5 digits of booking number

[BOOKIDLAST6] - Last 6 digits of booking number

[BOOKIDLAST7] - Last 7 digits of booking number

[BOOKIDLAST8] - Last 8 digits of booking number

[BEDDING] - displays bedding info codes

[RANDOM1] - a 1 digit random number seeded from the booking number

[RANDOM2] - a 2 digit random number seeded from the booking number

[RANDOM3] - a 3 digit random number seeded from the booking number

[RANDOM4] - a 4 digit random number seeded from the booking number

[RANDOM5] - a 5 digit random number seeded from the booking number

[RANDOM6] - a 6 digit random number seeded from the booking number

[RANDOM7] - a 7 digit random number seeded from the booking number

[RANDOM8] - a 8 digit random number seeded from the booking number

[VOUCHERPHRASE1] - Voucher Phrase - change the number to the voucher you want to print out.

[VOUCHERAMOUNT1] - Voucher Amount - change the number to the voucher you want to print out.

3.1 Content from "Info" tab

[BOOKINGINFOITEMS] - Booking Info Codes - Codes and text

[BOOKINGINFOITEMSBR] - Booking Info Codes - Codes and text with line break

[BOOKINGINFOTEXTS] - Booking Info Codes - Text only

[BOOKINGINFOTEXTSBR] Booking Info Codes - Text only with line break

[BOOKINGINFOCODES] - Booking Info Codes - Codes only

[BOOKINGINFOCODESBR] - Booking Info Codes - Codes and text with line break

[BOOKINGINFOCODETEXT:infoCode] - the most recent Text value of the specified Booking Info Code, "infoCode" in this example

[BOOKINGINFOCODEDATE:infoCode]- the most recent date value of the specified Booking Info Code, "infoCode" in this example, supports custom date/time formats {%A, %e %B, %Y} after the infoCode

[INTERNALNOTES] - content from "Internal Notes" on the Info Tab

[INTERNALNOTESBR] - content from "Internal Notes" on the Info Tab with line break

[INTERNALNOTESHR] - content from "Internal Notes" on the Info Tab with separating line

3.2 Content from "Summary" tab see also under "Room" and "Property"

[STATUS] - status of booking

[SUBSTATUS] - sub status of the booking

[FIRSTNIGHT] - first night booked

[FIRSTNIGHTSHORT] - first night booked in 1 Apr 2016 format

[FIRSTNIGHTYYYY-MM-DD] - first night booked in YYYY-MM-DD format

[LASTNIGHT] - last night booked

[LASTNIGHTSHORT] - last night booked in 1 Apr 2016 format

[LASTNIGHTYYYY-MM-DD] - last night booked in YYYY-MM-DD format

[LEAVINGDAY] - check-out day

[LEAVINGDAYSHORT] - check-out day in 1 Apr 2016 format

[LEAVINGDAYYYYY-MM-DD] - check-out day in YYYY-MM-DD format

[NUMNIGHT] - number of nights

[NUMNIGHTS] - number of nights sum across group booking

[NUMNIGHTSINC] - number of nights sum across group booking incl. cancelled

[GUESTTITLE] - guest title on the "summary" tab of the booking

[GUESTFIRSTNAME] - first name on the "summary" tab of the booking

[GUESTNAME] - last name on the "summary" tab of the booking

[GUESTNAMES] - name of all guests in the booking on the "summary" tab of the booking

[GUESTNAMESINC] - name of all guests in the booking on the "summary" tab of the booking incl. cancelled bookings

[GUESTNAMESINCBR] - name of all guests in the booking on the "summary" tab of the booking incl. cancelled bookings with line break on the "summary" tab of the booking

[GUESTFULLNAME] - title, first name, last name on the "summary" tab of the booking

[GUESTFULLNAMES] - titles, first names, last names of all guests in the booking on the "summary" tab of the booking

[GUESTFULLNAMESBR] - titles, first names, last names of all guests in the booking with line break on the "summary" tab of the booking

[GUESTFULLNAMESINC] - titles, first names, last names of all guests in the booking on the "summary" tab of the booking incl. cancelled

[GUESTFULLNAMESINCBR] - titles, first names, last names of all guests in the booking with line break on the "summary" tab of the booking incl. cancelled

[GUESTCOMMENTS] - comments in the booking

[GUESTCOMMENTSBR] - comments in the booking with line breaks

[NOTES] - notes

[NOTESBR] - notes with line breaks

[GUESTARRIVALTIME] - arrival time

[NUMADULT] - number of adults in this room or in group if master booking (not for cancelled bookings use NUMADULTINC if used for cacelled bookings)

[NUMADULTINC] - number of adults in this room or in group if master booking incl. cancelled bookings

[NUMADULT1] - number of adults in this room

[NUMCHILD] - number of children in this room or in group if master booking (not for cancelled bookings use NUMCHILDINC if used for cacelled bookings)

[NUMCHILDINC] number of children in this room or in group if master booking including cancelled bookings

[NUMCHILD1] - number of children in this room

[NUMPEOPLE] - number of guests in this room or in group if master booking

[NUMPEOPLEINC] - number of guests in this room or in group if master booking incl. cancelled bookings

[NUMPEOPLE1] - number of people in this room

[GUESTPHONE] - guests phone number

[GUESTPHONENUM] - guests phone number with all non-numeric characters removed

[GUESTMOBILE] - guests mobile number

[GUESTMOBILENUM] - guests mobile number with all non-numeric characters removed

[MOBILELAST1] last digit of the guests mobile number, if mobile is empty the guests phone number will be used.

[MOBILELAST2] last 2 digits of the guests mobile number, if mobile is empty the guests phone number will be used.

[MOBILELAST3] last 3 digits of the guests mobile number, if mobile is empty the guests phone number will be used.

[MOBILELAST4] last 4 digits of the guests mobile number, if mobile is empty the guests phone number will be used.

[MOBILELAST5] last 5 digits of the guests mobile number, if mobile is empty the guests phone number will be used.

[MOBILELAST6] last 6 digits of the guests mobile number, if mobile is empty the guests phone number will be used.

[PHONELAST1] - last digit of the guests phone number if guest phone is empty it will use the guests mobile number

[PHONELAST2] - last 2 digits of the guests phone number if guest phone is empty it will use the guests mobile number

[PHONELAST3] - last 3 digits of the guests phone number if guest phone is empty it will use the guests mobile number

[PHONELAST4] - last 4 digits of the guests phone number if guest phone is empty it will use the guests mobile number

[PHONELAST5] - last 5 digits of the guests phone number if guest phone is empty it will use the guests mobile number

[PHONELAST6] - last 6 digits of the guests phone number if guest phone is empty it will use the guests mobile number

[GUESTSMS:49] - attempt to convert the guest mobile number into a format suitable for SMS, if country code is missing add the one supplied in the template variable, if mobile number is empty use guest phone number instead.

[GUESTCOMPANY] - company name

[GUESTCOMPANYBR] - company name with line breaks

[GUESTFAX] - guests fax number

[GUESTFAXNUM] - guests fax number with all non-numeric characters removed

[GUESTADDRESS] - guests address

[GUESTADDRESSBR] - guests address with line breaks

[GUESTSADDRESSSBR1INC] - guests address with line breaks incl. cancelled bookings

[GUESTPOSTCODE] - guests postcode

[GUESTCITY] - guests city

[GUESTSTATE] - guests state

[GUESTCOUNTRY] - guests country from free text field is not empty, otherwise from selector list

[GUESTCOUNTRYHL] - guests country from free text field is not empty, otherwise from selector list in hosts language

[GUESTCOUNTRYGL] - guests country from free text field is not empty, otherwise from selector list in guests language

[GUESTCOUNTRYSELECT] - guests country from selector list

[GUESTCOUNTRYSELECTHL] - guests country from selector list in hosts language

[GUESTCOUNTRYSELECTGL] - guests country from selector list in guests language

[GUESTCOUNTRYTEXT] - guests country from free text field

[GUESTCOUNTRY2] - guests country from selector list as two letter code

3.3 Content from "Details" tab

[MESSAGE] - the content of the booking message field

[MESSAGEBR] - the content of the booking message field with line breaks

[GUESTCUSTOMQ1] - answer to custom question 1

[GUESTCUSTOMQ1BR] - answer to custom question 1 with line breaks

[GUESTCUSTOMQ2] - answer to custom question 2

[GUESTCUSTOMQsBR] - answer to custom question 2 with line breaks

[GUESTCUSTOMQ3] - answer to custom question 3

[GUESTCUSTOMQ3BR] - answer to custom question 3 with line breaks

[GUESTCUSTOMQ4] - answer to custom question 4

[GUESTCUSTOMQ4BR] - answer to custom question 4 with line breaks

[GUESTCUSTOMQ5] - answer to custom question 5

[GUESTCUSTOMQ5BR] - answer to custom question 5 with line breaks

[GUESTCUSTOMQ6] - answer to custom question 6

[GUESTCUSTOMQ6BR] - answer to custom question 6 with line breaks

[GUESTCUSTOMQ7] - answer to custom question 7

[GUESTCUSTOMQ7BR] - answer to custom question 7 with line breaks

[GUESTCUSTOMQ8] - answer to custom question 8

[GUESTCUSTOMQ8BR] - answer to custom question 8 with line breaks

[GUESTCUSTOMQ9] - answer to custom question 9

[GUESTCUSTOMQ9BR] - answer to custom question 9 with line breaks

[GUESTCUSTOMQ10] - answer to custom question 10

[GUESTCUSTOMQ10BR] - answer to custom question 10 with line breaks

[REFERENCE] - content of the booking reference field

[NUMROOM] - the quantity of rooms booked (first room type only)

[NUMROOMS] - the quantity of rooms booked (sum of all rooms and room types)

[NUMROOMSINC] - the quantity of rooms booked (sum of all rooms and room types) inc. cancelled

[FLAG] - Flag

[STATUSCODE] - 'Status Code' (Under tab 'Detail'. Can be a value between 0-100.)

[ORIGINALREFERRER] - Original referrer

[REFERRER] - Referrer

[APIREF] - the booking number at the originating channel

[APISOURCE] - Beds24 channel number

[APISOURCETEXT] - human readable name of the channel

[BOOKINGIP] - ip address of booker's computer

[APIMESSAGE] - api message sent by originating channel from the Channel Info setting

[BOOKINGDATE] - booking date in guests language

[BOOKINGTIMEDATE] - booking date and time in guests language

[BOOKINGDATEYYYY-MM-DD] - booking date in YYYY-MM-DD format

see date and time variables below for custom time formats.

3.4 Content from "Charges and Payments" tab (also see "Invoice/Invoicee/Room")

[BOOKINGINVOICEEID] - invoicee id assigned to this booking, this comes from the booking invoicee setting, not from the bookings invoice items

[RATEDESC] - rate description (in the booking popup under the tab 'Charges & Payments')

[RATEDESCBR] - name of the rate with HTML <BR> to force new lines

[PRICE] - Value in price field (number entered in the price field of the booking) with currency symbol

[PRICENC] - Value in price field (number entered in the price field of the booking) without currency symbol (do not use in calculations, use PRICENUM)

[PRICE:10%] - Percentage value of Price

[PRICE:-10] - Price with offset amount

[PRICENUM] - As per [PRICE] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation).

[PRICENUM:] - As per [PRICE:] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation)

[PRICELESSCOMMISSION] - Value in price field less value in commission field with currency symbol

[PRICELESSCOMMISSIONNUM] - As per [PRICELESSCOMMISSION] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation)

[PRICELESSTAX] - Value in price field less value in tax field with currency symbol

[PRICELESSTAXNUM] - As per [PRICELESSTAX] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation)

[AVPRICE] - Average Nightly Price with currency symbol

[AVPRICENUM] - Average Nightly Price with a decimal point and no thousands separator and no currency symbols (for calculation)

[AVPRICE:20%] - Percentage value of Average Nightly Price

[AVPRICE:15] - Average Nightly Price with offset amount

[BASEPRICE] - Lodging Price

[BASEPRICENUM] - same as [BASEPRICE] with a decimal point and no thousands separator and no currency symbols (for calculation)

[BASEGROUPPRICE] - Lodging Price for Group

[BASEGROUPPRICENUM] - same as BASEGROUPPRICE] with a decimal point and no thousands separator and no currency symbols (for calculation)

[BASEVAT] - Lodging Price vat amount

[BASEVATNUM] - same as [BASEVAT] with a decimal point and no thousands separator and no currency symbols (for calculation)

[BASEGROUPVAT] - Lodging Price vat amount for Group

[BASEGROUPVATNUM] - same as BASEGROUPVAT] with a decimal point and no thousands separator and no currency symbols (for calculation)

[AVBASEPRICE] - Average Nightly Lodging Price

[AVBASEPRICENUM] - same as [AVBASEPRICE] with a decimal point and no thousands separator and no currency symbols (for calculation)

[AVBASEGROUPPRICE] Average Nightly Lodging Price for Group

[AVBASEGROUPPRICENUM] - same as [AVBASEGROUPPRICE] with a decimal point and no thousands separator and no currency symbols (for calculation)

[DEPOSIT] - Value in deposit field with currency symbol

[DEPOSITNUM] - As per [DEPOSIT] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation)

[TAX] - Value in tax field with currency symbol

[TAXNUM] - As per [TAX] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation).

[COMMISSION] - Value in commission field with currency symbol

[COMMISSIONNUM] - As per [COMMISSION] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation)

[COMMISSIONGROUP] - Value of the commission of the complete group booking with currency symbol

[COMMISSIONGROUPNUM] - As per [COMMISSIONGROUP] but the value is displayed with a decimal point and no thousands separator and no currency symbols (for calculation)

[GUESTVOUCHER] - voucher code used with booking

[CARDLASTFOUR] - last 4 digits of card

[CARDFIRSTSIX] - first 6 digits of card

3.5 Content from Invoice" tab

[BOOKINGINVOICEEID] - invoicee id assigned to this booking, this comes from the booking invoicee setting, not from the bookings invoice items

[BOOKINGINVOICEENAME] - invoicee name assigned to this booking, this comes from the booking invoicee setting, not from the bookings invoice items

3.6 Content from "Group Invoice" tab

[GROUPNOTE] - group note

3.7 Content from "Mail & Actions" tab

[GUESTEMAIL] - guest's Email address on the "Mail & Action" tab of the booking

[GUESTLANGUAGE] - guest language

[EMAIL:00] - Status of an Auto Action email. Replace 00 with the number of the Auto Action. This shows if the email has been sent and if so, the time it was sent.

3.8 Content from "Guests" tab

[GUESTSID] - all IDs of this booking

[GUESTSID1] - ID of the first guest

[GUESTSIDS] - all IDs for all bookings in the group

[GUESTSNAME] - name of all guests listed on the "guests" tab of this booking

[GUESTSNAMES] - name of all guests listed on the "guests" tab of the booking of the group booking

[GUESTSNAMESINC] - name of all guests listed on the "guests" tab of the booking of the group booking incl. cancelled

[GUESTSFIRSTNAMES] - first name of all guests listed on the "guests" tab of this booking last separated by an &

[GUESTSFIRSTNAMESINC] - first name of all guests listed on the "guests" tab of this booking incl. cancelled

[GUESTSLASTNAMES] - last name of all guests listed on the "guests" tab of this booking

[GUESTSLASTNAMESINC] - last name of all guests listed on the "guests" tab of this booking incl. cancelled

[GUESTSADDRESSSBR1] - address of the first guest on the "guests" tab of this booking group

[GUESTSADDRESSSBR1INC] - address of the first guest on the "guests" tab of this booking group incl. cancelled

[GUESTSAFULLADDRESSSBR1INC] - the first address including city, postcode, sate and country from the guests tab of the booking including cancelled bookings in international format

[GUESTSAFULLADDRESSSBR1] - the first address including city, postcode, sate and country from the guests tab of the booking in International format

[GUESTSBFULLADDRESSSBR1INC] - the first address including city, postcode, sate and country from the guests tab of the booking including cancelled bookings in European format

[GUESTSBFULLADDRESSSBR1] - the first address including city, postcode, sate and country from the guests tab of the booking in European format

[GUESTSNUMBOOKINGS1] - the total number of bookings made by the first guest, a group booking counts as one booking.

[GUESTSNUMSTAYS1] - the total number of bookings not cancelled and not in the future made by the first guest, a group booking counts as one booking.

[GUESTSCUSTOMQ1S] - answer to custom question 1 for all guests

[GUESTSCUSTOMQ1SINC] - answer to custom question 1 for all guests including cancelled bookings

[GUESTSCUSTOMQ2S] - answer to custom question 2 for all guests

[GUESTSCUSTOMQ2SINC] - answer to custom question 2 for all guests including cancelled bookings

[GUESTSCUSTOMQ3S] - answer to custom question 3 for all guests

[GUESTSCUSTOMQ3SINC] - answer to custom question 3 for all guests including cancelled bookings

[GUESTSCUSTOMQ4S] - answer to custom question 4 for all guests

[GUESTSCUSTOMQ4SINC] - answer to custom question 4 for all guests including cancelled bookings

[GUESTSCUSTOMQ5S] - answer to custom question 5 for all guests

[GUESTSCUSTOMQ5SINC] - answer to custom question 5 for all guests including cancelled bookings

[GUESTSCUSTOMQ6S] - answer to custom question 6 for all guests

[GUESTSCUSTOMQ6SINC] - answer to custom question 6 for all guests including cancelled bookings

[GUESTSCUSTOMQ7S] - answer to custom question 7 for all guests

[GUESTSCUSTOMQ7SINC] - answer to custom question 7 for all guests including cancelled bookings

[GUESTSCUSTOMQ7S] - answer to custom question 8 for all guests

[GUESTSCUSTOMQ8SINC] - answer to custom question 8 for all guests including cancelled bookings

[GUESTSCUSTOMQ9S] - answer to custom question 9 for all guests

[GUESTSCUSTOMQ9SINC] - answer to custom question 9 for all guests including cancelled bookings

[GUESTSCUSTOMQ10S] - answer to custom question 10 for all guests

[GUESTSCUSTOMQ10SINC] - answer to custom question 10 for all guests including cancelled bookings

3.9 Cancellation, Management and Guest Login

[CANCELLEDTIME] - date when the booking was cancelled

[CANCELLEDTIME:{%A, %e %B, %Y}] - date when the booking was cancelled display can be any valid PHP strftime format string

[CANCELURL] - URL to view and cancel bookings

[CANCELDATE] - date until when the booking is cancellable displaying a phrase

[CANCELDATEYYYY-MM-DD] - date until when the booking is cancellable displaying a date. If the date is in the past 00-00-0000 will be shown

[DAYSTOCANCEL] - number of days from today until booking can no longer be cancelled (Not applicable for OTA bookings)

[CANCELUNTIL] - shows the number of days between check-in and the last day the booking can be cancelled. If guest can always cancel it shows 0, if guest can never cancel it shows 999. (Not applicable for OTA bookings)

[GUESTLOGIN] - URL to view bookings

[TURNOVERDAYS] - days until next arrival into the same unit not considering black bookings

[TURNOVERDAYSB] - days until next arrival into the same unit considering black bookings

[VACANTDAYS] days from previous checkout to check in of current booking not considering black bookings

[VACANTDAYSB] days from previous checkout to check in of current booking considering black bookings

4 Date and Time

[CURRENTDATE] - current date

[CURRENTDATEYYYY-MM-DD] - current date in YYYY-MM-DD format

[CURRENTDATE:{%A, %e %B, %Y}] - current date

[CURRENTDATE:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format.

[CURRENTTIME] - current time and the display can be any valid PHP strftime format string.

[CURRENTTIME:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format.

[DAYSTOCHECKIN] - number of days until check-in

[INADVANCE] - number of days between booking and check-in

[DAYSBETWEEN:2019-11-01:2019-11-10] - this template variable will calculate the number of days between the :: the dates need to be in yyyy-mm-dd format. Template variables can be used for calculation.

Example: [[DAYSBETWEEN:[FIRSTNIGHT:+5 days{%G-%m-%d}]:[CURRENTDATE:{%G-%m-%d}]] will calculate the days between 5 days after check-in and today.

[FIRSTNIGHT:{%A, %e %B, %Y}] - first night booked

[FIRSTNIGHT:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format.

[LASTNIGHT:{%A, %e %B, %Y}] - last night booked

[LASTNIGHT:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format.

[LEAVINGDAY:{%A, %e %B, %Y}] - check-out

[LEAVINGDAY:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format.

[BOOKINGDATE:{%A, %e %B, %Y}] - booking date

[BOOKINGDATE:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format.

[MODIFYDATE:{%A, %e %B, %Y}] - last booking modification date/time, the display can be any valid PHP strftime format string.

[PAYMENTDATE:{%A, %e %B, %Y}] - most recent payment date

[PAYMENTDATE:+1day{%A, %e %B, %Y}:1:1000] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be in a custom format. The second parameter specifies the payment to show, 0 or missing means the most recent payment. The third parameter specifies the invoicee.

[AUTHORIZEUNTIL] - date until which a card is authorized, this is extracted from the most recent authorize booking info code.

[AUTHORIZEUNTIL{%A, %e %B, %Y}] - custom format date until which a card is authorized, this is extracted from the most recent authorize booking info code.

[FORMATDATE:[any template variable that creates a date]{%A, %e %B, %Y}] - custom format the date. The date value could be included by inserting a different template variable containing a date.


The following codes can be used in any order between the {} brackets to create custom time and date formats.

%a 	An abbreviated textual representation of the day 	Sun through Sat
%A 	A full textual representation of the day 	Sunday through Saturday
%d 	Two-digit day of the month (with leading zeros) 	01 to 31
%e 	Day of the month, with a space preceding single digits.	1 to 31
%j 	Day of the year, 3 digits with leading zeros 	001 to 366
%u 	ISO-8601 numeric representation of the day of the week 	1 (for Monday) through 7 (for Sunday)
%w 	Numeric representation of the day of the week 	0 (for Sunday) through 6 (for Saturday)
%U 	Week number of the given year, starting with the first Sunday as the first week 	13 (for the 13th full week of the year)
%V 	ISO-8601:1988 week number of the given year, starting with the first week of the year with at least 4 weekdays, with Monday being the start of the week 	01 through 53 (where 53 accounts for an overlapping week)
%W 	A numeric representation of the week of the year, starting with the first Monday as the first week 	46 (for the 46th week of the year beginning with a Monday)
%b 	Abbreviated month name, based on the locale 	Jan through Dec
%B 	Full month name, based on the locale 	January through December
%h 	Abbreviated month name, based on the locale (an alias of %b) 	Jan through Dec
%m 	Two digit representation of the month 	01 (for January) through 12 (for December)
%C 	Two digit representation of the century (year divided by 100, truncated to an integer) 	19 for the 20th Century
%g 	Two digit representation of the year going by ISO-8601:1988 standards (see %V) 	Example: 09 for the week of January 6, 2009
%G 	The full four-digit version of %g 	Example: 2008 for the week of January 3, 2009
%y 	Two digit representation of the year 	Example: 09 for 2009, 79 for 1979
%Y 	Four digit representation for the year 	Example: 2038
%H 	Two digit representation of the hour in 24-hour format 	00 through 23
%k 	Hour in 24-hour format, with a space preceding single digits 	0 through 23
%I 	Two digit representation of the hour in 12-hour format 	01 through 12
%l      (lower-case 'L') 	Hour in 12-hour format, with a space preceding single digits 	1 through 12
%M 	Two digit representation of the minute 	00 through 59
%p 	UPPER-CASE 'AM' or 'PM' based on the given time 	Example: AM for 00:31, PM for 22:23
%P 	lower-case 'am' or 'pm' based on the given time 	Example: am for 00:31, pm for 22:23
%r 	Same as "%I:%M:%S %p" 	Example: 09:34:17 PM for 21:34:17
%R 	Same as "%H:%M" 	Example: 00:35 for 12:35 AM, 16:44 for 4:44 PM
%S 	Two digit representation of the second 	00 through 59
%T 	Same as "%H:%M:%S" 	Example: 21:34:17 for 09:34:17 PM
%X 	Preferred time representation based on locale, without the date 	Example: 03:59:16 or 15:59:16
%z 	The time zone offset. Example: -0500 for US Eastern Time
%Z 	The time zone abbreviation. Example: EST for Eastern Time
%c 	Preferred date and time stamp based on locale 	Example: Tue Feb 5 00:45:10 2009 for February 5, 2009 at 12:45:10 AM
%D 	Same as "%m/%d/%y" 	Example: 02/05/09 for February 5, 2009
%F 	Same as "%Y-%m-%d" (commonly used in database datestamps) 	Example: 2009-02-05 for February 5, 2009
%s 	Unix Epoch Time timestamp (same as the time() function) 	Example: 305815200 for September 10, 1979 08:40:00 AM
%x 	Preferred date representation based on locale, without the time 	Example: 02/05/09 for February 5, 2009
%n 	A newline character ("\n")
%t 	A Tab character ("\t")
%% 	A literal percentage character ("%")

5 Booking Group variables

5.1 Custom Booking Group Table

create your own booking group list by specifying the columns in the order you want them to appear.

for example: [BOOKGROUP:PROP_ROOM_BREF_NAME]

column parameters

100% = 100% width

ADDR = Booking address

ADUL= the number of adults

ARIV = Arrival date

BOPR = Bold prices

BREF = Booking number

BRL1 = Last digit of booking number

BRL2 = Last 2 digits of booking number

BRL3 = Last 3 digits of booking number

BRL4 = Last 4 digits of booking number

BRL5 = Last 5 digits of booking number

BRL6 = Last 6 digits of booking number

CITY = Booking city

CHAC = Charges with currency symbol

CHAR = Charges

CHIL = Number of children

COUN = Booking country

DEPT = Departure date

EMAI = Booking Email

EXSP = extra space between rows

FLAG = Booking flag text

FNAM = Booking first name

GADD = Guest address

GCIT = Guest city

GCOM = Guest company

GCOU = Guest country

GFLA = Guest flag text

GFNA = Guest first name

GLNA = Guest last name

GMOB = Guest mobile

GNAM = Guest full name

GEMA = Guest Email

GNOT = Guest note

GPOS = Guest postcode

GREF = Guest Id

GSTA = Guest state

GTEL = Guest phone

ICAN = Include cancelled bookings

LNAM = Booking last name

MOBI = Booking mobile

NAME = Booking full name

NOHE = no header

NOTE = Booking note

NUMN = Number of nights booked

ONAM = Offer Name

ONLY = Just show the one booking

PAIC = Payment amount with currency symbol

PADD = Property Address

PAID = Paid amount

PCIT = Property City

PEOP = Number of guests

PHON = Booking phone

POST = Booking postcode

PROP = Property name

RDE0 = Room description from (SETTINGS) CHANNEL MANAGER > PROPERTY CONTENT > ROOM CONTENT

RDE1 = Room description 1 from (SETTINGS) PROPERTIES> ROOMS > SETUP

RNAM = Room Display Name

ROOM = Room name

RQTY = shows the number of rooms for each booking and a total at the bottom

STAT = Booking state

STUS = Status

TEXT = Prints a plain text table instead of HTML

TOTA = Total price

UNI2 = Unit first additional information

UNI3 = Unit second additional information

UNIT = Unit name


Connect the parameters with an underscore.

Examples:

[BOOKGROUP:PROP_ROOM_BREF_NAME] will display the property name, room name, booking number and guest name in this order.


[BOOKGROUP:BREF_NAME_PROP_ROOM] will display the booking number, guest name property name and room name in this order.

5.2 Booking Group Table with fixed content

[BOOKGROUPROOMLIST] - create a table of guest names including room type for a group booking

[BOOKGROUPROOMLISTTOTAL] - create a table of guest names including room type for a group booking with guest totals

[BOOKGROUPROOMLISTCHARGETOTAL] - create a table of guest names including room type and charge for a group booking with guest totals

[BOOKGROUPNAMELIST] - create a table of guest names including room type and unit for a group booking

[BOOKGROUPNAMELISTTOTAL] - create a table of guest names including room type and unit for a group booking with guest totals

[BOOKGROUPNAMELISTCHARGETOTAL] - create a table of guest names including room type and unit and charge for a group booking with guest totals

[BOOKGROUPUNITLIST] - create a table of guest names including unit for a group booking

[BOOKGROUPUNITLISTTOTAL] - create a table of guest names including unit for a group booking with guest totals

[BOOKGROUPUNITLISTCHARGETOTAL] - create a table of guest names including unit and charge for a group booking with guest totals

6 Invoice Variables

[INVOICENUMBER] - invoice number

[INVOICENUMBERS] - invoice number if invoicees are involved

[INVOICEDATE] - invoice date

[INVOICEDATES] - invoice date invoice number if invoicees are involved

[INVOICEDATE:+1day{%A, %e %B, %Y}] - optional date offset and display format. The offset can be any plus or minus any number of days and the display can be any valid PHP strftime format string.

[INVOICEDATES:+1day{%A, %e %B, %Y}] - optional date offset and display format - invoice date invoice number if invoicees are involved, The offset can be any plus or minus any number of days and the display can be any valid PHP strftime format string.

6.1 Invoice Values

These template variables will display a value form the invoice.

6.1.1 Custom Invoice Values

You have the option to create a custom invoice variable to display a value from an invoice. [INVOICEVAL with a selection of the following variables specifies the calculation:

CHA - charges

CON - currency conversion. Example: CONEURUSD will convert the first currency (Euros) to the second currency (USD). CON1.234 would multiply the prices by 1.234

DEC - Decimal points. Example: DEC, will show a comma as decimal point. If nothing is set the system will use the default for the language

DP0 - no decimal places

DP1 - 1 decimal place

DP2 - 2 decimal places

DP3 - 3 decimal places

DP4 - 4 decimal places

DES - used as "DESsome description" - gives the sum of values containing the description "some description"

INV - invoicee, add the invoicee number at the end. Example: INV20 to show invoicee number 20, INV0 will show items not assigned to an invoicee, INV-1 will show all items from the booking regardless of invoicee. You can combine INV[BOOKINGINVOICEEID]] to add the invoicee from the booking

IT1 - item 1 in the invoice

IT2 - item 2 in the invoice

IT3 - item 3 in the invoice

IT4 - item 4 in the invoice

IT5 - item 5 in the invoice

MUL - multiplier. Example: MUL1.2 will multiply all prices by 1.2

NUM - show with decimal place (for scripts)

THO - thousands separator. THO. will show a dot as thousand separator. If nothing is set the system will use the default for the language

UPS1 - upsell 1

UPS2 - upsell 2

UPS3 - upsell 3

UPS4 - upsell 4

UPS5 - upsell 5

ONE - shows only items from the specified booking (not the booking group)

PAY - shows payments

QTY - shows quantity

SEX - status excluded. Calculate the balance of all invoice items except for the ones with these status, the status items can be a comma separated list. Example: SEX status1,status2,status4 will not show items with this status.

SIN - status included. Calculate the balance of all invoice items with matching status, the status items can be a comma separated list. Example: SIN status1,status2,status4 will only show items with this status.

VAT - VAT summary


Connect the variables with an underscore.

Examples:

[INVOICEVAL:PAY_THO] will show payments with a thousands separator

[INVOICEVAL:UPS1_UPS2] will show the sum of upsell 1 and upsell 2

6.1.2 Standard Invoice Values

[INVOICEBALANCE] - invoice balance

[INVOICEBALANCE:50%] - percentage of invoice balance

[INVOICEBALANCE:-100] - invoice balance with offset amount

[INVOICEBALANCENUM] - As per [INVOICEBALANCE] but the value is displayed with a decimal point and no thousands separator (for calculation).

[INVOICEBALANCENUM:] - As per [INVOICEBALANCE:] but the value is displayed with a decimal point and no thousands separator (for calculation).

[INVOICEPARTBALANCE:status1,status2,!status4:10%] - Calculate the balance of all invoice items with matching status and apply optional multiplier or offset. The status items can be a comma separated list. To exclude status items prefix them with an exclamation mark, for example !status1. The offset is optional and can be specified after a second colon (:) and it can be a percentage by ending the number with the percent (%) symbol or a numeric value offset.

[INVOICEPARTBALANCENUM:status1,status2,status4:10%] - As per INVOICEPARTBALANCE but the value is displayed with a decimal point and no thousands separator (for calculation).

[INVOICEBALANCE1] - invoice balance of one booking only, not the booking group

[INVOICEBALANCE1NUM] - As per [INVOICEBALANCE1] but the value is displayed with a decimal point and no thousands separator (for calculation)

[INVOICECHARGES] - invoice sum of all charges

[INVOICECHARGES:50%] - invoice sum of all charges with percentage multiplier

[INVOICECHARGES:-100] - invoice sum of all charges with offset

[INVOICECHARGESNUM] - As per [INVOICECHARGES] but the value is displayed with a decimal point and no thousands separator (for calculation)

[INVOICECHARGESNUM:] - As per [INVOICECHARGES:] but the value is displayed with a decimal point and no thousands separator (for calculation)

[INVOICEPARTCHARGES:status1,status2,!status4:10%] - Calculate the balance of all invoice charges with matching status and apply optional multiplier or offset. The status items can be a comma separated list. To exclude status items prefix them with an exclamation mark, for example !status1. The offset optional and can be specified after a second colon (:) and it can be a percentage by ending the number with the percent (%) symbol or a numeric value offset.

[INVOICEPARTCHARGESNUM:status1,status2,status4:10%] - As per INVOICEPARTCHARGES but the value is displayed with a decimal point and no thousands separator (for calculation).

[INVOICEPAYMENTS] - invoice sum of all payments

[INVOICEPAYMENTS:50%] - invoice sum of all payments with percentage multiplier

[INVOICEPAYMENTS:-100] - invoice sum of all payments with offset

[INVOICEPAYMENTSNUM] - As per [INVOICEPAYMENTS] but the value is displayed with a decimal point and no thousands separator (for calculation)

[INVOICEPAYMENTSNUM:50%] - As per [INVOICEPAYMENTS:50%] but the value is displayed with a decimal point and no thousands separator.

[INVOICEPARTPAYMENTS:status1,status2,!status4:10%] - Calculate the balance of all invoice payments with matching status and apply optional multiplier or offset. The status items can be a comma separated list. To exclude status items prefix them with an exclamation mark, for example !status1. The offset optional and can be specified after a second colon (:) and it can be a percentage by ending the number with the percent (%) symbol or a numeric value offset.

[INVOICEPARTPAYMENTSNUM:status1,status2,status4:10%] - As per INVOICEPARTCHARGES but the value is displayed with a decimal point and no thousands separator (for calculation).

[INVOICEPENDPAY] - all (auto and manual) pending payments including failed

[INVOICEPENDPAYNEXTDATE] - date of the next pending payment

[INVOICEPENDPAYNEXTDATE:] - date of the next pending payment display can be any valid PHP strftime format string. Information about PHP strftime Strings can be find found here: http://php.net/manual/de/function.strftime.php

[INVOICEPENDPAYNUM] - all (auto and manual) pending payments including failed but the value is displayed with a decimal point and no thousands separator (for calculation).

[INVOICEPENDPAY1234] - all (auto and manual) pending payments including failed for the specified invoicee (-1 will include all items regardless of invoicee)

[INVOICEPENDPAYNUM1234] - all (auto and manual) pending payments including failed for the specified invoicee (-1 will include all items regardless of invoicee) The value is displayed with a decimal point and no thousands separator (for calculation).

[INVOICEPENDPAYAUTO] - auto pending payments before due date

[INVOICEPENDPAYAUTONUM] - auto pending payments before due date but the value is displayed with a decimal point and no thousands separator (for calculation).

[INVOICEPENDPAYAUTO1234] auto pending payments before due date for the specified invoicee but the value is displayed with a decimal point and no thousands separator (for calculation) (-1 will include all items regardless of invoicee)

[INVOICEPENDPAYAUTONUM1234] auto pending payments before due date for the specified invoicee but the value is displayed with a decimal point and no thousands separator (for calculation) (-1 will include all items regardless of invoicee)

[INVOICEPENDPAYFAIL] - failed pending payments (all also past)

[INVOICEPENDPAYFAILNUM] - failed pending payments (all also past) but the value is displayed with a decimal point and no thousands separator (for calculation)

[INVOICEPENDPAYFAIL234] - failed pending payments (all also past) for the specified invoicee (-1 will include all items regardless of invoicee)

[INVOICEPENDPAYFAILNUM234] - failed pending payments (all also past) for the specified invoicee but the value is displayed with a decimal point and no thousands separator (for calculation) (-1 will include all items regardless of invoicee)

[INVOICEPENDPAYRULE1] - shows all pending payment for this rule (exchange 1 for the rule number)

[INVOICEPENDPAYRULENUM1] - shows all pending payment for this rule (exchange 1 for the rule number) displayed with a decimal point and no thousands separator (for calculation)

[INVOICEPENDPAYMANUAL] - manual pending payments

[INVOICEPENDPAYMANUALNUM] - manual pending payments but the value is displayed with a decimal point and no thousands separator (for calculation).

[INVOICEPENDPAYMANUALNOTDUE] manual pending payments before due date

[INVOICEPENDPAYMANUALNOTDUENUM] manual pending payments before due date but the value is displayed with a decimal point and no thousands separator (for calculation).

[INVOICEPENDPAYMANUALOVERDUE] manual pending payments after due date

[INVOICEPENDPAYMANUALOVERDUENUM] manual pending payments after due date but the value is displayed with a decimal point and no thousands separator (for calculation)

[INVOICECREDITS] - invoice sum of all credit items (negative items)

[INVOICECREDITS:50%] - invoice sum of all credit items with percentage multiplier

[INVOICECREDITS:-100] - invoice sum of all credit items with offset

[INVOICECREDITSNUM] - As per [INVOICECREDITS] but the value is displayed with a decimal point and no thousands separator (for calculation)

[INVOICECREDITSNUM:] - As per [INVOICECREDITS:] but the value is displayed with a decimal point and no thousands separator (for calculation)

[INVOICEDEBITS] - invoice sum of all debit items (positive items)

[INVOICEDEBITS:50%] - invoice sum of all debit items with percentage multiplier

[INVOICEDEBITS:-100] - invoice sum of all debit items with offset

[INVOICEDEBITSNUM] - As per [INVOICEDEBITS] but the value is displayed with a decimal point and no thousands separator (for calculations) (for calculations)

[INVOICEDEBITSNUM:] - As per [INVOICEDEBITS:] but the value is displayed with a decimal point and no thousands separator (for calculations)

[INVOICEVAT] - invoice sum of all vat value

[INVOICEVATNUM] - invoice sum of all vat value for calculations)

[INVOICEFIRSTITEM] - price of the item listed first in the invoice

[INVOICEFIRSTITEMNUM] - price of the item listed first in the invoice but the value is displayed with a decimal point and no thousands separator (for calculations)

[INVOICESECONDITEM] - price of the item listed second in the invoice

[INVOICESECONDITEMNUM] - price of the item listed second in the invoice but the value is displayed with a decimal point and no thousands separator (for calculations)

[INVOICETHIRDITEM] - price of the item listed third in the invoice

[INVOICETHIRDITEMNUM] - price of the item listed third in the invoice but the value is displayed with a decimal point and no thousands separator (for calculations)

[INVOICEFOURTHITEM] - price of the item listed fourth in the invoice

[INVOICEFOURTHITEMNUM] - price of the item listed fourth in the invoice but the value is displayed with a decimal point and no thousands separator (for calculations)

[INVOICEFIFTHITEM] - price of the item listed fifth in the invoice

[INVOICEFIFTHITEMNUM] - price of the item listed fifth in the invoice but the value is displayed with a decimal point and no thousands separator (for calculations)

[INVOICEUPSELL0] - base price without upsell items or other charges added later

[INVOICEUPSELLNUM0] - as per [INVOICEUPSELL1] but the value is displayed with a decimal point and no thousands separator (for calculations)

[INVOICEUPSELL1] - value of upsell item 1 (number can be between 0 to 20)

[INVOICEUPSELLNUM1] - as per [INVOICEUPSELL1] but the value is displayed with a decimal point and no thousands separator (for calculations)

[INVOICEUPSELLQTY1] - quantity of upsell item 1 (number can be between 1 to 20)

[INVOICEUPSELLNAME1] - name of the headline field of upsell item 1 (number can be between 1 to 20)

[INVOICEUPSELLSTATUS1] - stautus of the headline field of upsell item 1 (number can be between 1 to 20)

[INVOICEUPSELLHEADLINE1] - headline (name and status if used of upsell item 1 (number can be between 1 to 20)

[INVOICEUPSELLDESCRIPTION1] - description of upsell item 1 (number can be between 1 to 20)

[INVOICEUPSELLAMOUNTNUM1] - amout of upsell item 1



[INVOICEUPSELLTYPE1] - type of upsell item 1

[INVOICEUPSELLPER1] - per of upsell item 1

[INVOICEUPSELLPERIOD1] - period of upsell item 1


[INVOICEEXTRAITEMDESC1] - Name of extra invoice item 1 (number can be between 0 to 20)

[INVOICEEXTRAITEM1] - value of extra invoice item 1 (number can be between 0 to 20) Note: the order goes by the order in the dropdown list not by the order the items are entered.

[INVOICEEXTRAITEM1] - value of extra invoice item 1 (number can be between 0 to 20) Note: the order goes by the order in the dropdown list not by the order the items are entered.

[INVOICEEXTRAITEMNUM1] - as per [INVOICEEXTRAITEM1] but the value is displayed with a decimal point and no thousands separator (for calculations).

[INVOICEEXTRAITEMQTY1] - quantity of extra invoice item 1 (number can be between 0 to 20) Note: the order goes by the order in the dropdown list not by the order the items are entered.

[INVOICEGROSS:1] - gross amount of the inserted VAT rate (number is the VAT rate), value is displayed with a decimal point and no thousands separator (for calculations)

INVOICEGROSSNUM:1] gross amount of the inserted VAT rate (number is the VAT rate)

[INVOICENET:1] - net amount of the inserted VAT rate (number is the VAT rate)

[INVOICENETNUM:1] - net amount of the inserted VAT rate (number is the VAT rate), value is displayed with a decimal point and no thousands separator (for calculations)

[INVOICEVAT:1] - VAT amount of the inserted VAT rate (number is the VAT rate)

[INVOICEVATNUM:1] VAT amount of the inserted VAT rate (number is the VAT rate), value is displayed with a decimal point and no thousands separator (for calculations)

[INVOICEITEMBYDESC:Searchterm] - searches the invoice for items with this search term and adds them up

[INVOICEITEMBYDESCNUM:Searchterm] - searches the invoice for items with this search term and adds them up, value is displayed with a decimal point and no thousands separator (for calculations)

[INVOICEPAYMENTBYDESC:Searchterm] - searches the payments for items with this search term and adds them up

[INVOICEPAYMENTBYDESCNUM:Searchterm] - searches the payments for items with this search term and adds them up, value is displayed with a decimal point and no thousands separator (for calculations)

6.2 Invoice Table

These template varibles will display an invoice table.

6.2.1 Standard Invoice Tables

[INVOICETABLE] - invoice table

[INVOICETABLEVAT] - invoice table with vat information and vat summary

[INVOICETABLE:$1.1$] - invoice table and currency multiplier with optional new currency symbol before or after price.

[INVOICETABLEPART:status1,status2,!status4] - Invoice table showing only items with matching status. The status items can be a comma separated list. To exclude status items prefix them with an exclamation mark, for example !status1.

[INVOICETABLE2] - invoice table with status field

[INVOICETABLE2:$1.1$] - invoice table with status field and currency multiplier with optional new currency symbol before or after price.

[INVOICETABLECHARGES] - invoice table showing charges only

[INVOICETABLECHARGESINVOICEE1234] - invoice table showing charges only assigned to the specified invoicee, specify the invoicee Id number.

[INVOICETABLENOTOT] - invoice table without grand total

[INVOICETABLENOTOT:$1.1$] - invoice table without grand total and currency multiplier with optional new currency symbol before or after price.

[INVOICETABLENOTOT2] - invoice table with status field without grand total

[INVOICETABLENOTOT2:$1.1$] - invoice table with status field without grand total and currency multiplier with optional new currency symbol before or after price.

[INVOICETABLEVAT:$1.1$] - invoice table with vat information and currency multiplier with optional new currency symbol before or after price.

[INVOICETABLEVATCOMPACT] - compact version of invoice table with vat information and vat summary

[INVOICETABLEVATCOMPACT:$1.1$] - compact version of invoice table with vat information and vat summary and currency multiplier with optional new currency symbol before or after price.

[INVOICETABLEVATCOMPACTNOSUM] - compact version of invoice table with vat information without vat summary

[INVOICETABLEVATCOMPACTNOSUM:$1.1$] - compact version of invoice table with vat information without vat summary and currency multiplier with optional new currency symbol before or after price.

[INVOICETABLEVATNOSUM] - invoice table with vat information without vat summary

[INVOICETABLEVATNOSUM:$1.1$] - invoice table with vat information without vat summary and currency multiplier with optional new currency symbol before or after price.

[INVOICETABLEDATEVATNOSUM] - invoice table with vat information and date without vat summary

[INVOICETABLEDATEVATNOSUM:$1.1$] - invoice table with vat information and date without vat summary and currency multiplier with optional new currency symbol before or after price.

[INVOICETABLEVAT2] - invoice table with vat information and status field and vat summary

[INVOICETABLEVAT2:$1.1$] - invoice table with vat information and status field and vat summary and currency multiplier with optional new currency symbol before or after price.

[INVOICETABLEVAT2NOSUM] - invoice table with vat information and status field without vat summary

[INVOICETABLEVAT2NOSUM:$1.1$] - invoice table with vat information and status field without vat summary and currency multiplier with optional new currency symbol before or after price.

[INVOICETABLEVATCHARGES] - invoice table showing charges only with vat information and vat summary

[INVOICETABLENOPRICE] - invoice table with no price information

[INVOICETABLEINVOICEE] - invoice table excluding items assigned to an invoicee.

[INVOICETABLEINVOICEE1234] - invoice table for a specific invoicee, specify the invoicee Id number.

[UPSELLTABLE] - table with all upsell items

[UPSELLTABLEVAT] - table with all upsell items with vat information and vat summary

[UPSELLTABLENOREFUND] - table with all upsell items except refundable items

6.2.2 Custom Invoice Table

You have the option to create a custom invoice table. Available content variables are:

AMO - shows the net value (price x quantity)

CEX - charges excluded (charges will not be shown)

CON - currency conversion. Example: CONEURUSD will convert the first currency (Euros) to the second currency (USD). CON1.234 would multiply the prices by 1.234

CUA - currency symbol showing after the numbers. Example: CUA€ will show € after the figures

CUB - currency symbol showing before the numbers. Example: CUB€ will show € before the figures

DAT - adds a date column - you have the option to control the format of the date using date and time variables for example DAT{%d-%m-%Y}

DEC - Decimal points. Example: DEC, will show a comma as decimal point. If nothing is set the system will use the default for the language

DP0 - no decimal places

DP1 - 1 decimal place

DP2 - 2 decimal places

DP3 - 3 decimal places

DP4 - 4 decimal places

GAT - sum for each column

GRP - Group Totals. Displays the same items as a total

GRT - Grand Total

INV - invoicee, add the invoicee number at the end. Example: INV20 to show invoicee number 20, INV0 will show items not assigned to an invoicee, INV-1 will show all items from the booking regardless of invoicee. You can combine INV[BOOKINGINVOICEEID]] to add the invoicee from the booking

LAN - language. Example LANDE will force the language to German

MUL - multiplier. Example: MUL1.2 will multiply all prices by 1.2

NIN - do not show invoice number and invoice date on locked invoices

NOC - charges will not be displayed but their vat values are still calculated for the vat summary (VAT)

NOP - payments will not be displayed

ONE - shows only items from the specified booking (not the booking group)

ORB - order by booking, this keeps the items for each booking (room) together in the table

PAA - shows a column with payment amounts

PAY - shows payments

PEN - shows pending payments description

PPA - shows pending payments amount

PRI - shows prices in a column

QTY - shows quantity

SEX - status excluded. Calculate the balance of all invoice items except for the ones with these status, the status items can be a comma separated list. Example: SEX status1,status2,status4 will not show items with this status.

SIN - status included. Calculate the balance of all invoice items with matching status, the status items can be a comma separated list. Example: SIN status1,status2,status4 will only show items with this status.

STA- shows staus

THO - thousands separator. THO. will show a dot as thousand separator. If nothing is set the system will use the default for the language

TOT - shows total amounts

VAA - shows VAT amounts

VAP - shows VAT percents

VAT - VAT summary


Connect the variables with an underscore.

Examples:

[INVOICE:PRI_QTY_CUA€] will create an invoice table with price and quantity in Euros.

[INVOICE:PAY_TOT_CEX] will create an invoice table which will only show payments.

[INVOICE:PRI_QTY_CUA_TOT_VAT_QTY_PAY_GRT_AMO_VAA] will create an invoice table with more information.

[INVOICE:SIN TRANSPORT] will create an invoice table with the Invoice item description for any items with the Status = Transport.

7 Invoicee Variables

[INVOICEEBALANCE] - invoice balance for unassigned invoice items.

[INVOICEEBALANCENUM] - invoice balance for unassigned invoice items displayed with a decimal point and no thousands separator.

[INVOICEEBALANCE1234] - invoice balance for invoice items assigned to invoicee 1234 (change 1234 to the required Invoicee Id number).

[INVOICEEBALANCENUM1234] - invoice balance for invoice items assigned to invoicee 1234 (change 1234 to the required Invoicee Id number) displayed with a decimal point and no thousands separator.

[INVOICEECHARGES] - invoice charges for unassigned invoice items.

[INVOICEECHARGESNUM] - invoice charges for unassigned invoice items displayed with a decimal point and no thousands separator.

[INVOICEECHARGES1234] - invoice charges for invoice items assigned to invoicee 1234 (change 1234 to the required Invoicee Id number).

[INVOICEECHARGESNUM1234] - invoice charges for invoice items assigned to invoicee 1234 (change 1234 to the required Invoicee Id number) displayed with a decimal point and no thousands separator.

[INVOICEEPAYMENTS] - invoice payments for unassigned invoice items.

[INVOICEEPAYMENTSNUM] - invoice payments for unassigned invoice items displayed with a decimal point and no thousands separator.

[INVOICEEPAYMENTS1234] - invoice payments for invoice items assigned to invoicee 1234 (change 1234 to the required Invoicee Id number)

[INVOICEEPAYMENTSNUM1234] - invoice payments for invoice items assigned to invoicee 1234 (change 1234 to the required Invoicee Id number)

[INVOICEENAME] - name of the invoicee account the invoice is assigned to or blank

[INVOICEECODE] - code of the invoicee account the invoice is assigned to or blank

[INVOICEECURRENCY] - currency of the invoicee account the invoice is assigned to if it is not the property default or blank

[INVOICEENOTES] - value of the "Notes" field for the invoicee

[INVOICEETEMPLATE1] - template value 1 of the invoice account the invoice is assigned to or blank

[INVOICEETEMPLATE2] - template value 2 of the invoice account the invoice is assigned to or blank

[INVOICEETEMPLATE3] - template value 3 of the invoice account the invoice is assigned to or blank

[INVOICEETEMPLATE4] - template value 4 of the invoice account the invoice is assigned to or blank

[INVOICEETEMPLATE5] - template value 5 of the invoice account the invoice is assigned to or blank

[INVOICEETEMPLATE6] - template value 6 of the invoice account the invoice is assigned to or blank

[INVOICEETEMPLATE7] - template value 7 of the invoice account the invoice is assigned to or blank

[INVOICEETEMPLATE8] - template value 8 of the invoice account the invoice is assigned to or blank

[INVOICEETEMPLATE1BR] - template value 1 of the invoice account the invoice is assigned to or blank with linkebreak

[INVOICEETEMPLATE2BR] - template value 2 of the invoice account the invoice is assigned to or blank with linkebreak

[INVOICEETEMPLATE3BR] - template value 3 of the invoice account the invoice is assigned to or blank with linkebreak

[INVOICEETEMPLATE4BR] - template value 4 of the invoice account the invoice is assigned to or blank with linkebreak

[INVOICEETEMPLATE5BR] - template value 5 of the invoice account the invoice is assigned to or blank with linkebreak

[INVOICEETEMPLATE6BR] - template value 6 of the invoice account the invoice is assigned to or blank with linkebreak

[INVOICEETEMPLATE7BR] - template value 7 of the invoice account the invoice is assigned to or blank with linkebreak

[INVOICEETEMPLATE8BR] - template value 8 of the invoice account the invoice is assigned to or blank with linkebreak


8 Payment Request Variables

[PAYURL] - Creates a payment url for the payment request for the amount in the booking deposit field if non zero, otherwise the outstanding balance.

[PAYURL:25%] - Creates a payment url for the payment request for a percentage of the outstanding balance. Use 100% to specify the full outstanding balance.

[PAYURL:200] - Creates a payment url for the payment request url for a fixed amount. nt.

[PAYLINK] - 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.

[PAYLINK:25%] -Creates a payment link (HTML A tag) for the payment request for a percentage of the outstanding balance. Use 100% to specify the full outstanding balance.

[PAYLINK:200] - Creates a payment link (HTML A tag) for the payment request) for a fixed amount.

[PAYBUTTON] - Creates a payment button for the payment request for the amount in the booking deposit field if non zero, otherwise the outstanding balance. Not recommended for emails.

[PAYBUTTON:25%] - Creates a payment button for the payment request for a percentage of the outstanding balance. Use 100% to specify the full outstanding balance. Not recommended for emails.

[PAYBUTTON:200] - Creates a payment button for the payment request for a fixed amount.

[PAYPALURL] - Creates a Paypal payment url for the amount in the booking deposit field if non zero, otherwise the outstanding balance.

[PAYPALURL:25%] - Creates a Paypal payment url for a percentage of the outstanding balance. Use 100% to specify the full outstanding balance.

[PAYPALURL:200] - Creates a Paypal payment url for a fixed amount. A zero amount will cause paypal to provide a field to enter an amount.

[PAYPALLINK] - Creates a Paypal payment link (HTML A tag) for the amount in the booking deposit field if non zero, otherwise the outstanding balance.

[PAYPALLINK:25%] - Creates a Paypal payment link (HTML A tag) for a percentage of the outstanding balance. Use 100% to specify the full outstanding balance.

[PAYPALLINK:200] - Creates a Paypal payment link (HTML A tag) for a fixed amount. A zero amount will cause paypal to provide a field to enter an amount.

[PAYPALBUTTON] - Creates a Paypal payment button for the amount in the booking deposit field if non zero, otherwise the outstanding balance. Not recommended for emails.

[PAYPALBUTTON:25%] - Creates a Paypal payment button for a percentage of the outstanding balance. Use 100% to specify the full outstanding balance. Not recommended for emails.

[PAYPALBUTTON:200] - Creates a Paypal payment button for a fixed amount. A zero amount will cause paypal to provide a field to enter an amount. Not recommended for emails.

Add a H to exclude a gateway from displaying. Example: [PAYURL:200:HST] will hide Stripe

9 Text Operators

[REPLACE|searchForThisText|replaceWithThisText|textToSearch] - replace "searchForThisText" with "replaceWithThisText" within the text "textToSearch"


[SUBSTR|startCharacterNumber|numberOfCharacters|textToGetSubstringFrom] - get a sub string from "textToGetSubstringFrom" starting at character "startCharacterNumber" (integer, 0 is the first char) with a length of "numberOfCharacters" (integer)


1. [SUBSTR|0|4|[GUESTPHONENUM]]

This will test for the first 4 characters of the Guest phone number.


[TRIM| string to trim ] - remove whitespace from the start and end of " string to trim "

10 iCal Links

These template variables will create iCal links which allow the booking to be added to a calendar.

[ICALURL] - Calendar link

[ICALURL:16] - Calendar link with check-in hour. Replace '16' with the hour check-in starts.

[ICALURL::10] - Calendar link with check-out hour. Replace '10' with the hour with the hour check-out ends.

[ICALURL:::summary text] - Calendar link with a summary text

[ICALURL::::description text] - Calendar link with a descriptive text

Example:

Calendar link with check-in time 16:00, check-out time 10:00, the summary text "Booking" and the description text "Sunny Hotel":

[ICALURL:16:10:Booking:Sunny Hotel]

11 Mathematical Operators

Place mathematical operators between two numbers or between two template variables that return a number.

[+] - Example: 2 [+] 3 = 5

[-] - Example: 5 [-] 1 = 4

[*] - Example: 3 [*] 4 = 12

[/] - Example: 15 [/] 5 = 3

[MIN] - Example: 2 [MIN] 3 = 2

[MAX] - Example: 2 [MAX] 3 = 3

Brackets are not supported as a way to control processing order, the processing order is fixed as *, /, +, -, MIN, MAX

If you want to use * and - in the same calculation, for example you need 20% of the result, then you will need to use the calculation below as a * calculation will be calculated first.

[INVOICECHARGESNUM][*]0.2[-][INVOICESECONDITEMNUM][*]0.2[-][COMMISSIONNUM][*]0.2

Property Template 1-8 and Room Template 1-8 can be used to set calculations. If using Room Templates to make a calculation, then use Room Template 8 before Room Template 7.

If you want to see the value 10. Set Room template 6 = [ROOMTEMPLATE7][+][ROOMTEMPLATE8] and enter 4 in Room template 7 and 6 in Room template 8.

You can set a calculation in Room Templates to show in Property Templates, but not the other way around. So "Property Template1" could pull the calculation of [ROOMTEMPLATE6] and the result = 10.


11.1 Rounding and controlling decimal places

11.1.1 Default

2 [/] 3 = 0.66666666666667

11.1.2 Rounding to the nearest integer

2 [/.0] 3 = 1

11.1.3 Rounding to 1,2,3 or 4 decimal place(s)

2 [/.1] 3 = 0.7

2 [/.2] 3 = 0.67

2 [/.3] 3 = 0.667

2 [/.4] 3 = 0.6667


This works on all operators including [MIN] and [MAX]

Note:  Always use the template variables ending with NUM. The math functions will only work with numbers with a decimal point (not a decimal comma) and no thousands separator and no currency symbol.

12 Currency Conversion

[CONVERT:EUR-USD] - get the actual conversion rate between two currencies, this can be used with math functions to show alternative currency values. All currencies supported by the booking page currency selector can be used.

Example: [INVOICECHARGESNUM] [*.2] [CONVERT:EUR-USD] will convert the invoice charge value from Euros to USD with two decimal points.

If you use the multiplier to convert currencies for channels: For example hotel id 123456 and a multiplier to convert USD to EUR at todays rate:

123456*[CONVERT:USD-EUR]*

or this to convert EUR to USD

123456*[CONVERT:EUR-USD]

123456*[CONVERT:USD-EUR][/]0.85 will convert to Euros and divides the price by 0.85 which raises it by circa 15%

13 Account Variables (account of the booking)

[ACCOUNTUSERNAME] - Username of the account owning the booking

[LOGGEDINACCOUNTUSERNAME] - Username of the person logged in

[ACCOUNTID] - account id of the booked property

[ACCOUNTTEMPLATE1] - Account Template 1

[ACCOUNTTEMPLATE2] - Account Template 2

[ACCOUNTTEMPLATE3] - Account Template 3

[ACCOUNTTEMPLATE4] - Account Template 4

[COMMISSIONLIMIT] - shows the available commission amount for the owner account of the booking

[MASTERACCOUNTTEMPLATE1] - Account Template 1 from master account

[MASTERACCOUNTTEMPLATE2] - Account Template 2 from master account

[MASTERACCOUNTTEMPLATE3] - Account Template 3 from master account

[MASTERACCOUNTTEMPLATE4] - Account Template 4 from master account

14 Account Variables (logged in account, only for display in control panel , not for auto actions or emails etc.)

These variables can for example used by resellers who added a custom tab to the bookings.

[LOGGEDINACCOUNTID] - account id of the logged in user

[LOGGEDINACCOUNTTEMPLATE1] - Account Template 1

[LOGGEDINACCOUNTTEMPLATE2] - Account Template 2

[LOGGEDINACCOUNTTEMPLATE3] - Account Template 3

[LOGGEDINACCOUNTTEMPLATE4] - Account Template 4

[LOGGEDINAPIKEY] - apiKey

[MASTERLOGGEDINACCOUNTTEMPLATE1] - Account Template 1 from master account

[MASTERLOGGEDINACCOUNTTEMPLATE2] - Account Template 2 from master account

[MASTERLOGGEDINACCOUNTTEMPLATE3] - Account Template 3 from master account

[MASTERLOGGEDINACCOUNTTEMPLATE4] - Account Template 4 from master account

15 Smart Logic Template Variables

IF style template variables will compare two values and display a text if the comparison is true and an alternative text if the comparison is false. Colons : are used between the two comparison values and the first text, a pipe | is used between the two texts. Empty text is allowed if you do not want to display anything for a condition.

[IF=:if this:equals this:display this text|otherwise display this text]

[IFIN:if this:is contained in this:display this text|otherwise display this text]

[IFLIKE:if this:is like this:display this text|otherwise display this text]

[IF>:if this:is greater than this:display this text|otherwise display this text]

[IF>=:if this:is greater than or equal to this:display this text|otherwise display this text]

[IF<:if this:is less than this:display this text|otherwise display this text]

[IF<=:if this:is less than or equal to this:display this text|otherwise display this text]

[IFBETWEEN:if this:is between this:and this:display this text|if it is lower display this text|if it is higher display this text]


You can use IF variables inside other IF variables to create complex logic but the internal IF: must be processed before the external IF

There are special versions of each IF constructed with ^ and ~ separators like [IF=^this^this^same~different]

Only one IF of each type can be used to create complex logic.

The special versions are processed first so should be used as the internal IF so it's result can be processed by the outer if.

The special versions can also be used if you expect : or | characters within your data.


IF's are processed in the following order. i.e. all the [IF=^ will be processed first, then all the [IFIN^ etc.

[IF=^ [IFIN^ [IFLIKE^ [IF>^ [IF>=^ [IF<^ [IF<=^ [IFBETWEEN^ [IF=: [IFIN: [IFLIKE: [IF>: [IF>=: [IF<: [IF<=: [IFBETWEEN:


15.1 Examples

Template variables can be used inside this template variable as per the examples comparison in blue, positive result in green, negative result in red:

1. [IF=:[GUESTNAME]:Miller:yes |no]

If the guestname is Miller the text "yes" will display. If the guest name is not Miller the text "no" will display

2.[ IF>:[NUMADULT]:2:please contact us about you bedding requirements|]

If the number of adults is higher than 2 the text"please contact us about you bedding requirements" will display. If the number of adults is lower than or equal 2 nothing will display.

3. [IF<:[NUMADULT]:3:|linen for two adults is included free of charge]

If the number of adults is lower than 3 nothing will display. If the number of adults is not lower than 3 the text "linen for two adults is included free of charge" will display.

4. [IF<=:[NUMADULT]:2:yes|no]

5. [IF>=:[NUMADULT]:2:yes|no]

6. [IFBETWEEN:[NUMADULT]:1:3:yes|too low|too high]

7. [IFLIKE:[GUESTTITLE]:Mr:Dear|Hi]

IFLIKE works like IF= except it is case insensitive and removes any spaces from the start and end of the words

8. [IFIN:John:[GUESTFIRSTNAME]:Hi John|Your name does not contain John?]

If the first word is contained in the second word the first option is displayed, otherwise the second option is displayed

9. [IFIN:CHECKIN:[BOOKINGINFOITEMS]:[BOOKINGINFOCODETEXT:CHECKIN]|]

If the Booking Info Code CHECKIN has been added to the booking then you will see the value in the text (date/time) otherwise blank.

Using multiple IF statements to display special messages :-

10. [IFIN:DEPOSIT:[BOOKINGINFOCODES]:|[IF=:[GUESTCOUNTRY2]:AU:Credit card details are required |A deposit is required]|No deposit is required]

You want to display a special message to Australians if the booking has a DEPOSIT info item code, if a deposit is required from a non Australia they get "A deposit is required" and if no deposit is required they see "No deposit is required"

11. [IF<:[INADVANCE]:|[IFIN:TRANSFER:[BOOKINGINFOCODES]:3:Payment Due Date: ASAP |Payment Due Date: [FIRSTNIGHT:- 30days]]|]

You want display a special message to your guests 3 days before checkin with a Booking Info Code = TRANSFER.

12. [IF=:[STATUS]:Confirmed:PAID|[IF<^[INADVANCE]^30^Payment Due Date: As soon as possible~Payment Due Date: [FIRSTNIGHT:- 30 days]]]

You want to display a special message for your guests for any bookings with Status not = Confirmed, and if the checkin date is more than 30 days in advance, then send the message with "Payment Due Date : "or that the "Payment is due As soon as possible".

13. [IFBETWEEN:[TURNOVERDAYS]:0:3:yes|no]

You want to test if the days until next arrival into the same unit is between 0 and 3 days. Could be used for offering Late Checkouts or additional days to the guest where there is a gap between bookings.

14. [IF>:[VACANTDAYS]:1:yes|no]

You want to test if there is 1 day from the previous checkout to check in of current booking. Could be used for offering Early Checkouts or additional days to the guest where there is a gap between bookings.

15. [IF=:[LEAVINGDAY:{%a}]:Sun:|[IF>=^[TURNOVERDAYS]^1^yes~no]]

You want to test if the leaving date is a Sunday and it there is a gap for 1 or more days between the current booking and the next booking.

16. [IF=:[LEAVINGDAY:{%u}]:1:yes|[IF=^[LEAVINGDAY:{%u}]^3^yes]]

You want to test if the leaving date is a Monday or a Wednesday to send a specific message to the guest, for example a reminder that it is bin collection day.

17. [IF=:[LEAVINGDAY:{%u}]:1:yes|[IF=^[LEAVINGDAY:{%u}]^3^yes][IF=^[LEAVINGDAY:{%u}]^6^yes]]

You have different cleaning teams for different days of the week, and you want to send a message to the appropriate team if leaving date is a Monday, Wednesday or Saturday.

18. [IF<^[AUTHORIZEUNTIL{%Y-%m-%d}]^[CURRENTDATEYYYY-MM-DD]^yes~no]

You need to test if the Stripe authorisation has expired before the end of the booking. Then you want to automate the authorisation again . You will require multiple auto actions based on the min/max stay.

16 Write out the number in Words.

[INWORDS] - writes out a number in words. This works in English only.

Expamles:

[INWORDS] 10 will write "ten"

[INWORDS] [INVOICEPAYMENTSNUM] will write out the invoice sum of all payments

[INWORDS] [INVOICEPAYMENTSNUM] [+] 10 will write out the invoice sum of all payments plus 10

17 Encoding Template Variables

[ENCODEURL:value] encode value for URL data format

[ENCODEJSON:value] encode value for JSON data format


Always use the template variables ending with NUM if numbers are involved. The math functions will only work with numbers with a decimal point (not a decimal comma) and no thousands separator and no currency symbol.