New releases > ELMA365 SaaS / 2023.4




1. TEAM-11476 Source apps can now be deleted from contract sources.


2. TEAM-12514 Contract export/import/update has been improved. The sources are checked, and if a source belonging to a workspace that is not being exported/imported/updated is found, the user sees an alert, but can still complete the action if necessary.


Document Management


1. TEAM-14156 Files that users send to each other in the Activity Stream, chats, and app activity stream can now be saved to the Files workspace. To do that, select Create Copy in the context menu of the file.


2. TEAM-16069 The size of a file uploaded to the system can now be limited. The limit is set in elma365-env-config using the ELMA365_MAX_FILE_SIZE_MB key. You can use a positive integer to set the limit in MB. The default limit is 100 MB.


3. TEAM-16184 You can get the size of the file with a TS SDK method. For the File data type, we added a new data field: size. It returns the size of the file in bytes.


4. TEAM-16857 For the File data type, custom statuses in approval/information activities are now available. When creating a custom status, a new button is added to the approval task. With this button, users can make custom decision within the standard approval or rejection procedure.


5. TEAM-16974 We added password caching for the certificate secret key of the CryptoPro browser plug-in. The password is cached on the side of CryptoPro browser plug-in for the current login session. After signing a document for the first time, you do not need to select the certificate and enter the password to access the key for further signing.


ELMA365 Service


1. TEAM-16592 Operators working with sessions can now mark certain sessions as spam.


2. TEAM-18497 Sessions can now be sorted by the Date of last activity property.


Business Processes


TEAM-12045 For tasks with multiple executors with the First Response option selected, transition buttons can now be hidden until the moment someone starts working on the task. When opening a task, users will only see one button: Start Task. The rest of the buttons will be hidden and unavailable. After the user clicks Start Task, the buttons will appear on the task form.

This option is activated with the feature flag hideWorkflowTaskActionButtonsBeforeStartWorking. The Administrator or Supervisor will see the buttons regardless of these settings.




1. TEAM-17596 In interface designer, all CRM widgets were grouped and placed under a separator.


2. TEAM-17700 When creating an e-mail campaign, you can now select the "not equal" condition to exclude certain emails. For example, you can select all the leads and exclude "Leads from Webinar Y", because those leads are targeted with a different campaign.


3. TEAM-17740 You can now track how long an item stays in a particular status. This information is displayed on the Kanban board, in search parameters, on the item's side panel. In CRM apps it is shown as duration in hours and days.


4. TEAM-17745 We added subscriber name sync with Unisender. When integrating with the Unisender email gateway, the contact's name is inserted as Name/Surname to personalize the campaign.


5. TEAM-17802 We added the Export to XLSX button to the page displaying subscribers from a particular campaign (Marketing Email Campaigns > Name of the campaign). Use it to download the data as an *.xlsx file.


6. TEAM-17951 In the Marketing workspace, on campaign pages you can now create linked campaigns. A linked campaign is a campaign containing actions taken during a previously completed campaign, for example, a list of clicks.


External users and external portal


1. TEAM-4117 In order for our applications to be used with an external portal, we implemented certain changes.


  • We added the elma365:// protocol, that processes our applications on different OS.


  • We added a new method to TSSDK: Namespace.portal.generateELMAAppURL(), which generates a sign-in link for the portal with the elma365:// protocol.


  • We improved the QR code scanning in applications, it now also recognizes links with the elma365:// protocol.


  • In TSSDK on the client side you can now define how the apps works: Browser or Application.


Now, you can add a sign-in link to your portal. You can also use the generateELMAAppURL method to create a QR code for your users. In either case, the user will be able to access the portal from the ELMA365 application.

To use these features, update your applications:


  • ELMA365 for Desktop: version 2.0.6 and higher.


  • ELMA365 for Mobile: version 1.3.0 and higher.


2. TEAM-16656 SMS verification is now available for external users if this feature is enabled on the portal.


3. TEAM-16657 External users can now sign into the portal with their phone number or password. In the previous version of the platform we added sign-in with phone number or SMS code.




1. TEAM-8988 We added new methods with working with portals in scripts:


  • System.portals.get(code: String)
  • System.portals.list()
  • System.portals.getAvailableForUser(user: UserItem)


The Portal interface was extended with properties namespace and published.


2. TEAM-17610 We added a TSSDK method for generating a link to the external portal for the desktop and mobile apps. The app recognizes the link and opens the portal in the app.


Method:  Namespace.portal.generateELMAAppURL(withToken : bool)


3. TEAM-17636 We added the UI.getViewMode() method that allows defining the form for displaying a client's interface.

* # User interface display modes.
export enum UIViewMode {
      * # Mobile app.
    MobileApp = 'MOBILE_APP',
     * # Desktop app.
    DesktopApp = 'DESKTOP_APP',
     * # View mode on mobile devices.
    MobileWeb = 'MOBILE_WEB',
     * # View mode on o desktops.
    DesktopWeb = 'DESKTOP_WEB',

4. TEAM-16861 In TSSDK scripts, we removed the __id  field from the ProcessTemplate interface. It was marked as deprecated in March 2021.

This has made execution and compilation of scripts, on average, 5-10% faster.

If you have been using this field in your scripts, rewrite them with namespace and code.


5. TEAM-15417 We added Web API methods for reading configuration indo. For more details, see Help:


At the moment, metadata is read for:

  • Workspaces
  • Apps
    • App properties
    • Forms (standard ones)
  • Processes


6. TEAM-13815 We added an article on filters in WebAPI


Performance report


TEAM-16409 [telemetry v1] We added a built-in performance report.

It is hidden under the following feature flags:


  • enableDevToolsAdminPage enables/disables the display of Developer tools in Administration.


  • enableInternalTelemetryactivates/deactivates the Diagnostics section in Developer tools.


At the moment, metrics of web requests and server scripts are collected.


The report is exported as as xlsx file. You can set the reports to be saved with a certain periodicity.




TEAM-17290 We added module protection within a paid solution. Modules installed as part of a paid solution cannot be exported or edited via a feature flag.


Bugs fixed


1. TEAM-4534 The comment that a user makes when reading a document sent for information is now displayed in the List of informed users widget.


2. TEAM-12397 We fixed how the system behaves when restoring a business process version:

  • After a process version is restored, the publication button becomes active and the process can be published.
  • If the publication button is inactive (grayed out), the pop up with a suggestion to publish the process does not appear.
  • Previously, when running debugging for the first time after changing the process version, the old process diagram was displayed. Now the relevant process diagram is displayed.


3. TEAM-12456 We fixed the following errors that appeared when working with files:


  • Impossible to restore a file from the recycle bin under a non-admin user.
  • Error when opening a file in the recycle bin.
  • Files added to Favorites by a non-admin user were added as links to the My Files folder instead of being added to the Favorites folder.


4. TEAM-13416 We fixed the error that made the Edit button invisible on a task form if the Buttons: Download and Edit widget was added to the form. Now the button is available if the user has permissions to edit the file in the app sent for signing.


5. TEAM-16172 We fixed the error that didn't allow automatically updating the value of a File-type property value when adding a new version. Now, if the value is changed in a client script, its value is updated correctly.


6. TEAM-16754 We fixed the behavior when files of other users that the current user has no access to appeared in search results.


7. TEAM-16844 We improved data export and import in hierarchical folders so that the data structure is kept unchanged.


8. TEAM-16866 We added handing for sending large size files for approval or information, so that that the processor microservice does not fail during the approval or information process.


9. TEAM-17237 We fixed the asynchronization of data when uploading several identical files.


10. TEAM-17780 We fixed the behavior of the Removed filter in the Log.


11. TEAM-17947 In case of multiple parallel signing tasks, the process may get stuck if one of the users declines to sign. We added a check for outgoing transitions for the sign activity to make sure that there is a default transition. If there is no default transition, an error will appear during process execution which you can fix by republishing the process and specifying the default transition.


12. TEAM-18050 We fixed the signature settings export. Previously, the "not found: no rows in result set: no rows in result set" error sometimes appeared.


13. TEAM-18207 We fixed the generateText method for putting a generated text in quotation marks. Now, simple text in templates is displayed correctly, and escaping is not applied to text and special symbols.


14. TEAM-17600 We fixed the error that caused the edit form of the inbox to close when clicking the tooltip button.


15. TEAM-18096 We fixed the error that appeared when trying to use a template with the Customer's name variable in it.


16. TEAM-18119 We fixed the error in the Session app that appeared when a wrong separator was used in Live Chats.


17. TEAM-18199 We fixed the error that appeared when saving a session in a server script.


18. TEAM-18239 We fixed the error in the "First session with the client" routing rule that appeared when setting up the No parameter.


19. TEAM-18737 We fixed the error that didn't allow selecting groups from the Live Chats workspace only.


20. TEAM-16347 We fixed the error that didn't allow saving a scripts name for a service variable in a non-exclusive gateway.


21. TEAM-16986 We fixed the error that appeared when reassigning a task.


22. TEAM-17626 We fixed the errors in request syntax for updates.


23. TEAM-18023 We fixed the behavior when a process start request returned null. Also, we added the enableAMQPStartProcess feature flag for activating process start via AMQP (the flag is by default disabled).


24. TEAM-17681 We fixed the incorrect sorting of linked emails in the widget. Now the emails are sorted by date.


25. TEAM-17953 We fixed the incorrect operation of the Qualified without a deal filter in Leads.


26. TEAM-18779 We fixed how a call recording is displayed on an app item's page. Now the recordings are correctly displayed, can be played and are not downloaded.


27. TEAM-18817 We improved the Unisender module to include the case when the __name field's value is null.


28. TEAM-13506 We fixed the incorrect operation of the control for selecting several values for Arbitrary App fields.


29. TEAM-16944 We fixed the error in registering an account with an email that has already been registered in the system.


30. TEAM-17022 Certain system pages are now unavailable to an external user.


31. TEAM-17242 We fixed the behavior that didn't allow opening a handler's settings if the name of the handler contained a space.


32. TEAM-17306 We fixed the problem with getting data from Context on the settings form of a custom module. Now the scripts work correctly.


33. TEAM-18272 The logo on the external portal was fixed.


34. TEAM-18457 We added a password recovery button for external users in the browser on mobile devices.


35. TEAM-18707 We fixed how the portal page is displayed on mobile devices after two-factor authentication.


36. TEAM-18799 We fixed the "Cannot read properties of undefined" error that appeared when trying to open the script editor.

Found a typo? Highlight the text, press ctrl + enter and notify us