Skip to main content

Changelog 2022


  • Extended process module Live
    • A conversation can now switch between agents, e.g. for handover between departments.
    • While typing an text, a preview will be shown in the chat window.
    • Sending a text will automatically set the agent as present, i.e. the agent does not have to set itself as present before.
    • Presence indicators are visible for all agents and devices all the time.


  • Model checking rules
    • Added model checking rule for broken jump targets.
    • Added model checking rule for intermediate events with short durations.
  • Optimized ItemsAccordion
  • You can now adjust the maximal height of the chat window in Branding > Conversation by selecting from xs, sm, md, lg and xl instead of typing in pixels.
  • Fixed password mode in Beiersdorf process module.


  • Most entities such as Giveaway, Product and Prize are now draggable, so they can be reordered.
  • New analytics events for products module
    • product_shown counts each product in a gallery that is shown
    • product_gallery_shown counts the times product galleries are shown


  • In process module NPS Survey it can now be deselected that after restarting the chat the NPS is asked again.
  • Finished process module Sikom for production.
  • Live Chat
    • Simplified the live chat UI with tab pills for All conversations and Mine conversations.
    • Refreshed Live Chat UI.


  • In process module Live now conversations always show the last message, email address and further customer data.
  • In process module Data Collection questions by default now ask again, even when the associated variable already exists.


  • Added Optimizely process module / integration.


  • You can now adjust the maximal height of the chat window in Branding > Conversation > Settings-Popover
  • Process module Live chat
    • Customers can now always cancel the live chat.
    • In asynchronous request now the email address is mandatory


  • Added support for Serbian with Latin characters.
  • Formal German (Deutsch Siezen) is now represented as de-x-formal instead of de__formal for conformity with BCP 47.


  • Postal address process module
    • If only one country is available, this country is preselected in the dropdown
    • Salutation is added as an optional field
    • Optional ask for street number seperately
  • Chat bubble size
    • Adjust the size of the chat bubble that opens the chat
  • Static code analysis for BPMN models
    • Check processes for common errors
  • New Process pattern Loop
    • Execute a sequence of modules several times until associated conditions are not met
  • New Event Wait
    • Use this event when you want to wait for a certain duration in the chat to continue
  • Chat preview
    • Default delay increased from 1 second to 3
  • New Process module Hubspot
    • Create new contacts in hubspot with properties provided in LoyJoy
  • Process module API client
    • Add mode to send x-www-form-urlencoded bodies on POST & PUT requests
  • New role: Translator
    • Can see all processes, but only edit the texts
  • Texts table minor rework
  • For LoyJoy super admins: Add function to reset user chats
  • Image orientation selection reworked


  • Process module Data collection
    • Constraints of min date for question type Date now support a variable
  • Add new function IsoLocalDateTomorrow
  • In Publish tab added consent manager Atruvia, enabling an easier integration with proprietary Volksbanken consent manager.
  • Process modules Participation, Prize, Quiz now can be configured with shortened dates, e.g. 12-24 instead of 2022-12-24. This helps to reuse advent calendar experiences each year.
  • I18n entries also now can be configured with shortened dates, e.g. 12-24 instead of 2022-12-24.
  • Process module Participation
    • Removed participation confirmation emails, as they lead to complaints, injuring SMTP sending reputation.
  • Implemented new multi-text input for entering multiple texts, e.g. for tags or email addresses.
  • Module Edit Header Bar redesigned
    • Added storage duration
  • Questionnaire process module
    • You can now add units to numerical questions


  • Process module PDF can now fill PDF form fields. This adds a faster alternative to creating PDF files from HTML templates, as now you can simply create a PDF form in Adobe Acrobat and let the chat fill out the form.


  • New Process Editor
    • Build and manage your chat flow and keep the overview
    • Process representation and content management side-by-side
  • Process module Split (XOr)
  • Process module Split Decision (XOr)
  • New Event Timer
    • Model different start events within time periods in BPMN standard
  • New Event End
    • Model end event according to BPMN standard
  • Annotations
    • Create annotations for each process module
    • Special hint: Start with the keyword TODO to highlight your annotation
  • 📈 Analytics
    • The welcome module distinguish between new customers, recurrent customers and signed in recurrent customers with name.
    • New events for email send module
    • New events for PDF module
    • New events for phone module
    • Show warning in case of potential questionnaire loops
    • Show complete questionnaire questions
    • Allow clicking jump target to go to analytics


  • Added OAuth2 session payload for OAuth2 authorization code flow callbacks with page redirects.
  • Added process module Auth0, which enables to authenticate in the chat with OAuth2 provider Auth0.
  • Added general OAuth2 capabilities in the chat to LoyJoy Marketing Cloud for a unified solution for different OAuth2 providers.
  • Code process module:
    • Added option to skip the module
    • Added input variable code_in as an alternative to the code input form
    • Added option to not ask again for code after unsuccessful code input
  • Web service process module:
    • Add google service account authentication option
  • API client process module:
    • Add payload JSON parsing
    • Add option to strip JSON prefix from response
    • Check headers for saving as well as for sending
  • Added expires_at for OAuth2 sessions.
  • In Inxmail process module added payload description.
  • Process module Lottie: add mode to send Lottie animation in chat flow
  • Changed default expiry for codes to 180 days and for coupons to 360 days.
  • Optimized UI of button send paylod.
  • Extracted API widget params into separate file.
  • Products can have a CTA button


  • Added new language: Latvian (lv)
  • Optimized email and device ID in variables


  • Add functionality to search all variables by email and device ID


  • In tab Publish there is now a locale select, which adapts the JavaScript snippet to optionally override the locale of the web browser with a specific locale
  • In stories moved the close button from top right to top left, so that it does not overlap with buttons in AMP stories.


  • Assets now can contain an image URL instead of a static asset file.


  • ⏱️ New process module Opening Hours
    • Provide your opening hours and react differently depending on your opening status
  • 🗓️ Process module Appointment
    • Entering slots has been simplified


  • In tab Publish now custom tracking JavaScript can be entered.
  • Process module ReachFive now supports full OAuth code flow, i.e. supports single sign-on (SSO).
  • The launcher can now be configured with its own color.
  • For a tenant it can now be configured, that by default the LocalStorage should be disabled.
  • For slow SMTP servers in SMTP settings an email queue can be activated.
  • In tab Customers now the CSV file download can include all customer variables including questionnaire answers, not only master data such as first name.


  • 🗣️ New locales
    • Estonian
    • Lithuanian
  • 🎫 Process module coupon codes
    • Add option to send warning when coupons run low
  • Added skip answer option to process modules Birthdate, Email, Firstname, Lastname, Password, Phone, Postal address, SMS opt-in.
  • In process module Phone added options for checking if phone number is mobile or land line, and which country the phone number belongs to.
  • In Publish tab added CookieFirst.


  • Redesigned loyalty mechanics:
    • Process modules Loyalty, Loyalty referral and Code can create loyalty points. This enables multiple sources of loyalty points in chat flows.
    • Process module Rewards can show loyalty rewards for loyalty points, and offer a redeem button, if the customer has enough loyalty points. This enables to show the value loyalty points have, i.e. what can be redeemed.
    • Process modules Redemptions, Coupon code and Win can be configured to consume loyalty points. This enables multiple redemption points for loyalty points in chat flow. Process module Redemptions simply consumes loyalty points and converts them to a list of customers with postal address, i.e. for sending out physical rewards. Process module Coupon code consumes loyalty points and converts them to coupon codes, which can represent digital rewards such as Web shop coupons. Process module Win enables to integrate raffle instant win mechanics with loyalty points.
  • Added functions LocationHrefHost, LocationHrefHostLowerCase, LocationHrefPath, LocationHrefPathLowerCase that enable you to read URL components of window.location.href.


  • Entity storage time
    • The expiry time of relevant entities after which entities are deleted can now be configured
  • The initial badge number (red messages number indicator) for the chat bubble can now have a delay in tab Branding.


  • Process module BDF now offers a Write password option.
  • List items in process module List do now prevent double clicks, so that list item jumps are not executed twice on double clicks.


  • In tenant settings owners can now configure alerts that should be raised if an external API is not available or returns errors.
  • The Publish tab has been redesigned with consent managers in mind. LoyJoy now provides a preconfigured JavaScript snippet for the most important consent managers, i.e. cookie managers.
  • A new function num_participations_bpmn_process has been introduced, which in contrast to num_participations return the number of participations only for the current experience.
  • Mappings and params now are configured in a table view, not a tab view, which is helpful when there are lots of items.
  • In tab Branding the widget call-to-action now can be de delayed and have a specific duration.
  • An initial badge number (red messages number indicator) can now be defined in tab Branding for the chat launcher.


Process Modules

  • Process module Pdf
    • It is now possible to add static file attachments to emails
  • Process module Send Email
    • It is now possible to add static file attachments to emails
  • Process module Variable
    • It is now possible to set multiple variables
  • Process module Welcome
    • Returning customers are now greeted differently
  • Process module External link
    • Configuration in the manager has been simplified
    • Links can now be opened in the current tab, i.e. not opening a new tab, when clicked
  • Sessions
    • The expiry time of a session in the chat can now be adjusted in the branding tab of an experience
  • Imprint and Privacy
    • These options are now available to be shown in the menu of the navigation bar
  • NLU
    • It is now visible which intents were edited since the last AI training
  • Analytics
    • The amount of total answers for decision jumps will now be shown
  • Some JavaScript Events now offer a label in the event body, e.g. describing which button was clicked in the chat
  • By default, using the chat in the manager does not log analytics events anymore. To log analytics event, use the option at the refresh preview button.
  • Persistent quick replies are now hidden when the customer enters a live chat
  • When a form-based question has been asked, clicking on a persistent quick reply will no longer be treated as a form answer
  • Products in the product selection of the shopify module can now be add to the cart although the chat is no longer in the shopify module
  • If there are duplicate entries in a decision table, these are cleaned up automatically.


  • Added process module Lottie for Lottie background animations.
  • In chat bubbles and chat forms now line breaks are enforced in case of too long texts.


  • Process module Snapshot does not overwrite existing snapshots in case of repeated snapshots, but instead stores a snapshot history.
  • Process module ApiClient writes variable api_client_status_code containing the HTTP status code.


  • Process module Handover
    • The user request can now be made obligatory
  • Process module Live
    • The user request in asynchronous answers can now be made obligatory
  • Process module Prizes
    • A prize can now be expanded instead of indirectly asking through the "More" Button on details regarding that prize
  • Live
    • The live chat now displays the user answers provide in a form. E.g. Email or postal address
    • Notifications are played up to three times if an agent has not given an answer
    • Notifications are played only when the agent is inactive, switches browser tab or works in a different app
  • Variables
    • New function: Formatted Date Today. Evaluate the localized date of today in conditions or store it as variables
    • New function: Formatted Date Tomorrow. Evaluate the localized date of tomorrow in conditions or store it as variables
  • A problem is fixed that causes the live chat to end too early


  • Process module Handover
    • Transition from assignments determined by quiz answers to assignments determined by expressions.


  • New process module OneTrust integration
    • Create or update consent receipts in OneTrust.
    • Retrieve existing consent receipts from OneTrust.
  • New process module JavaScript
    • Allows you to execute arbitrary JavaScript code in the user’s browser
    • Results can be set as variables
  • New process module PDF 📄
    • Generate a PDF from a HTML template and populate user information using variables
    • Either offer it for download directly in the chat...
    • ... and/or send the PDF via email to the customer and/or to a specified set of emails
  • New process module Jump to home view
    • If a home view is configured this process module jumps to it.
  • Added bulk operations for multiple experiences
    • Move, archive, and pause multiple experiences simultaneously.
    • Paste the branding of one experience into muliple experiences simultaneously.
  • Images in the image gallery are now zoomable
  • Process module NPS
    • Switch between emoji slider and numbers slider.
  • BPMN Connectors - Google sheets
    • Connect your data in Google Sheets with LoyJoy modules. Currently available for the places module.
  • 📈 Analytics
    • Analytics for NLU models
    • Analytics for persistent jump quick replies
  • 💬 Live chat
    • The current experience of the user is now shown in the sidebar
    • Added an analytics event for live chat requests missed by an agent
    • The agent can now add a display name, role, and a personalized welcome message
    • ... together with the agent's avatar these are sent to the customer for greeting
    • A notification is now played when the agent switches tabs and a new conversation arrives or a new message of the current conversation comes in
    • Default waiting time is now increased to 120 seconds
  • Process module birthdate
    • Minimum age can now be checked automatically based on the current date
  • Questionnaire process module
    • The question type NPS now enables NPS score calculation in the analytics
    • It is now possible to edit the variable value for the skip button
    • The default value of the variable was changed to skip
  • Add check for regular expression for email input
  • Shopify OAuth
    • Integrate LoyJoy into your shopify store with a few clicks thanks to OAuth
  • Design your chat
    • Change the appearance of your chat like colors and border colors for each item individually
    • Use your own font and give the chat your own visual touch
  • NLU Evaluation
    • While evaluating NLU messages an intermediary step is now necessary to assign messages to intents
    • When adding messages to intents, the text can be modified beforehand
  • Chat preview now collects data about
    • Messages shown
    • Message clicked
    • Quick replies shown
    • Quick reply clicked
  • New send icon ➡️
  • Search 🔎
    • By default the user input below the chat is now a search input field.
    • Let your user search your experiences and let them start experiences on their own
    • To make an experience searchable, make sure you provide a title and a description for the experience
  • UX
    • Experiences are now grouped by folders while selecting e.g. in jumps
    • Copy text IDs on click in texts table
    • Improved decision table presentation (show function arguments, show spaces)
    • Improve fixed value expression input (no enter to confirm, warn if padded with whitespace)
  • Places/Address query
    • Redesigned autocomplete
  • The chat preview has been updated visually
  • PIN / Code input field is not type password
  • Fixed swipe behaviour in carousels for safari
  • Fixed performance issues in template store


  • New process module Places 📍
    • Ask your customers for their address and calculate the distances to a set of locations. Show the closest 4 locations as a list and offer direct navigation.


  • New API client module
  • Assets are now delivered from a CDN
  • Added OpenTelemetry for continuous performance analysis
  • Image gallery images can now be rendered with orientation landscape, square or portrait.


  • 📁 Grouping of experiences
    • Process groups are now identified by their creation date, the identifier can be edited in the process group view.
    • Customize the process group of an experience using the popover in the process edit menu.
  • 🗂️ Archiving of experiences
    • Experiences now have one of the following states: active (default), suspended, archived.
    • Archive experiences via the respective popover in the process list view.
    • Experiences with state archived behave like experiences with state inactive, furthermore they are hidden in the process list view by default.
    • Show all archived experiences of a group by toggling the respective popover in the process group view.
  • Moved management of home views to experience
    • To add a home view to an experience select the desired one in the leave button (<) of the branding tab in the experience view
  • Copy branding
    • Copy the branding of an existing process into the current process.
    • All current brand attributes are lost in this process.
    • The process from which the copy was made is displayed along with the date of the operation.
    • The copied assets are stored separately, changing the branding attributes of the process that was copied from will not affect the copied branding attributes.
  • Template store
    • Prefilled Templates got a whole rework. Create prefilled experiences with ease and joy.
    • In addition, you can subscribe to templates of other tenants. This allows for simple sharing of your curated processes with other tenants.
  • New data view replaces old customers view.
    • All tables are presented with their expiry duration.
    • Role editor can view anonymized customer data.
  • 🎊 New animations: Magenta confetti, magenta snowflake, golden raining stars.
  • Inxmail integration
    • Subscription and unsubscription of customers to mail listings via inxmail.
  • 🛒 Shopify OAuth-Flow
    • Integrate LoyJoy into your shopify store with few clicks.
  • Process module Code
    • Codes are now entered into a form, not into the footer text input.
  • 📈 Analytics
    • Sign-in module shows number of correct and incorrect code entries.
    • Questionnaire shows advanced data for NPS questions
    • Add count of connected API errors over time in overview and drilldown
  • 💬 Live chat
    • If the chat is not in the current tab, the customer now receives an audio notification on new messages
    • Additional information like current website, referral and user agent of the customer are now displayed right next to the chat
  • 🗣️ NLU
    • The management of intents are now entirely decoupled from bots respectively experiences
    • In order to use NLU in an experience, create a Model in the NLU section with a certain language
    • Create and maintain intents for different models separately
    • To make a Model available for an experience, select it in the free text input of the branding tab in the experience view
    • Redesigned the procedure for the approval of NLU messages.
    • New NLU engine based on RASA open source
  • 🖼️ Image buttons
    • Download (new) and delete (change) button
  • Participation module
    • Add participated_at column for selected random participants
  • 📜 Log
    • Split the log for manager and runtime. The runtime log is purged every 7 days.
  • 🏛️ ChatUi
    • All inserted links sent to the customer are now clickable
  • ℹ️ Reworked Help-Sidebar
  • Outdated users
    • User confirmation emails are no longer sent twice.
  • Analytics
    • Various small fixes for graph labels
  • ❓ Quiz
    • Freetext answer options were removed