New releases > ELMA365 SaaS / 2023.1


Document Management


  1. TEAM-9393: When sending a package of documents for approval, reading rights for all documents included in the package are automatically granted.
  2. TEAM-14695: The link in the notification about a new task to read a document has been changed. Now the user is immediately directed to the task page and not the preview form.
  3. TEAM-15098: We implemented paginated display of the list of users in approval sheets and lists of informed users.
  4. TEAM-15099: Filtering by the Approved/Informed, Rejected, Pending statuses has been added to approval sheets and lists of informed users. This allows you to quickly view lists of users who, for example, have not yet reviewed the document or have not approved it. To filter, click on the status name.



  1. TEAM-13733: A new LiveChat widget has been added. It is an online chat for communication with customers. With the activated ELMA365 Service paid solution, you can configure LiveChat in ELMA365, connect it to a Live Chat, and then place it on a third-party website. The visitors of the website will be able to send requests to the online chat, and operators will respond to them from the ELMA365 interface. At the same time, the entire chat history with each user will be saved in the Live Chats workspace.
    In addition, several communication channels, such as messengers and email, can be connected to the LiveChat widget. In this case, the user will be able to choose where to communicate with the operator: on the website in the online chat window, in a messenger, or by email.




  1. TEAM-13808 A new feature has been added for working with a deal or lead: users can now specify a reason for rejection even if the item is manually moved to the final status on the Kanban board. Previously, this feature was only available for converting a lead or deal to the statuses "Unqualified" or "Deal closed", when the user clicked on the button on the item page or used the side panel to change the status.


  1. TEAM-14617 In order to reduce the workload of the duplicate detection service we did the following:
  • Added several types of queues for duplicate search.
  • Increased the number of processed duplicates by increasing the number of pods when the workload is high.


  1. TEAM-14623 We improved the duplicate search settings to make them more user-friendly.


  1. TEAM-14668 Localization was implemented for widgets in the Incoming Payments workspace.


  1. TEAM-14858 In the CRM workspace, we added a dashboard for sales reps so that users can track their metrics: the sales goal and its progress, estimated and received payments.
    The report is a widget that displays charts with the following data:
  • Lead/deal pipeline with the number of leads and deals for each status.
  • CRM tasks showing the number of leads and deals assigned to the user. It is possible to track the CRM tasks (phone call, meeting, event) scheduled for the deals and leads and see how many tasks lack progress or are overdue.
  • Top 5 deals showing the active tasks of the current user that have the highest budget.
  • CRM tasks for today.


  1.  TEAM-15345 In the CRM workspace, we added a dashboard for the sales manager. Now the head of sales can track the work of all the sales reps on one page. It shows:
  1. Lead/deal pipeline showing the workload of each employee and the number of deals on each stage per employee.
  2. Lead/deal conversion showing a regular sales pipeline as percentages: the percentage of leads and deals that have passed through all the stages to being successfully completed.
  3. Top deals showing 10 deals with the highest budget per selected group of employees.
  4. Goal/estimated/received showing data on created goals per employee, as well as estimated and received payments.

You can filter by period, sales team or assigned sales rep.

A dashboard is a page with a widget and filters. The widget and can be modified as well as copied to other pages.


  1. TEAM-15284 In the Register of incoming payments app you can now select 0% in the Probability field when adding a new payment for a more precise forecasting in case deals are interrupted or payments are canceled.


  1. TEAM-15855 We added a new Indicators widget to the Incoming payments app. It is located on the All incoming payments and My incoming payments pages on the Indicators tab The charts and diagrams showing estimated and received payments will now load and refresh faster.


  1. TEAM-15970 The pages where CRM dashboards were added can be edited in the low-code designer to add or delete other widgets. The widgets used in dashboards can also be reused on other pages, which allows creating flexible and customizable reports.


TS SDK, internal services, API


  1. TEAM-4004 We added permission chehck hasPermission() that takes hierarchy into account.

Now the item.hasPermission() takes into account structure and group hierarchy and returns the actual result about a user having permissions to an item. For new app items that haven't yet been saved, hasPermission() will always return false.


  1. TEAM-15073 The consistent-hash-exchange plugin was deleted, the system no longer requires it for operation.


  1. TEAM-15463 We stabilized the start of the event-bus service. We increased the time for checking the service status, which shall reduce the probability of it restarting when the workload is at peak.
  2. TEAM-14789 We deleted from Help Center the outdated Web API authentication mechanics via X-Token header.




  1. TEAM-6524 You can now edit the settings form in custom widgets. For that purpose, we added the Create form button to the Context tab of the widget builder. The button opens the form builder for the widget's settings form. After being published, this form is displayed whenever the widget is added to another form or page.


  1. TEAM-15032 Error alert window can now be hidden. We added the Hide button link to the validation widget. When clicked, the widget is hidden. It is then shown at the next attempt to save the form.


  1. TEAM-15258 We added a new widget to widget builder:  Zone for inserting widget. It allows you to create reusable widgets that can receive data. It can be useful for development within the configuration and for developing widgets in distributed modules.




  1. TEAM-12331 We added notifications for when project tasks are completed, closed, deleted or archived. All the notifications are grouped into one message regardless of the type of changes made.


  1. TEAM-14578 We added a new project plan approval feature. When enabled, publishing a project plan is only possible after it is approved by a selected user .
    Approval settings are located in Administration > Projects > Project Plan Approval.
    There is a pre-built approval process but a custom one can be used instead.


  1. TEAM-14715 We made changes to the project plan widget. The elements on the diagram now show the end date. It is displayed both on the time line and in the Duration column.
    Note: on edit and create forms of project plan elements, the duration is calculated with scripts. These scripts were updated for the users who did not edit these forms. Duration is now calculated in the new manner, however, the business calendar is not taken into account.  After saving the forms, the duration will be recalculated on the diagram, taking into account the enabled work calendar option.




  1. TEAM-3403 When working with a list of items, for example, when a user wants to perform bulk actions, it is now possible to select all existing items in the app, not just those displayed on the page.




  1. TEAM-8230 A prohibition on deleting AD/LDAP settings has been added. When deleting an AD server, a check runs to see if there are any users imported from that server. If users are found, the server cannot be deleted.


  1. TEAM-15481 The Main positionDate of birthHired on parameters can now be used to map fields in AD/LDAP modules.


Export and import


  1. TEAM-8573 When exporting data with the Export system information option selected, the values of the Status field are also exported.
  2. TEAM-15451 The Status field in apps can now be imported. To make it available for import, specify the status ID in the status column as follows: [status: 4]. If you import a status with an ID that doesn't exist, the first status will be set by default.
  3. TEAM-13025 Paid solutions can now be exported. When exported, the solutions are marked as paid, this cannot be revoked. 
  4. TEAM-14575 We improved the the following behavior during data export:
  • The Export system information option affects the presence of system fields and app collection IDs in the exported file.
  • If the Export names of app items, users, files option is enabled, only the names are exported.
  • If both of these options are selected, the names and the IDs are exported.
  • If the Export names of app items, users, files option is disabled, only IDs are exported.




  1. TEAM-12283 We added user authentication with phone number.

The settings are located in Administration > Security Settings > Advanced authentication options.

The Allow authentication with phone number option enables authentication, user invite and password recovery via phone number:

  • The user's cell phone number is used for signing in.
  • Authentication, password recovery and user invite via email remain available. Authentication via AD, LDAP, SAML, OAuth remains available.
  • The field for entering a phone number becomes required, the email field becomes optional and editable.

The Use one-time authentication codes option makes it possible to sing in using an SMS code:

  • When signing in with a one-time code, two-factor authentication is not used even if it is set up.
  • To sign in with login, phone number, email or password, click Use another sign-in method. In this case, two-factor authentication is used, if set up.

At the moment, one-time authentication codes are sent only via SMS and require enabling a built-in SMS integration module.




  1. TEAM-14936 We added a new field to the User object: Additional data. Administrator can fill it out manually, or it can be filled by a script or via AD/LDAP import.




  1. TEAM-14513 In Administration > Company Settings you can now set up a theme using your own fonts.


Bugs fixed

  1. TEAM-10764 We fixed the group export error that appeared when transferring the configuration from one system instance to another.
  2. TEAM-11457 Registration error fixed. Previously, when a user created document categorization and offices and then added folders without adding categories, manual registration would only be available to system administrators. This behavior is now fixed.
  3. TEAM-11481 When settings up the Approval activity, the Signature Settings tab doesn't disappear anymore.
  4. TEAM-13134 We fixed the error that appeared when opening a file generated during the debugging of a process.
  5. TEAM-13171 We fixed the behavior of the Only on weekdays check box in the process start schedule settings.
  6. TEAM-13415 Fixed the generation of s3 links.
  7.  TEAM-14171 The JobPosition function no longer returns deleted positions. 
  8. TEAM-14730 We fixed the error that appeared when moving an item in a hierarchical folder.
  9. TEAM-14734 We fixed the error that wouldn't allow editing an app item stored in a hierarchical folder if the user didn't have access to the folder, but had access to the item.
  10. TEAM-14883 We fixed how the Signature Settings app menu item is displayed.
  11. TEAM-14986 We fixed the error that appeared when printing a signed document with an e-signature stamp.
  12. TEAM-14996 We fixed the error in file generation that appeared when converting the file from .xlsx to .pdf.
  13. TEAM-15230 We fixed the error that appeared when opening an app item page that was sent for approval or information.
  14. TEAM-8440 Previously, files from technical support chats were stored in a system folder that the supervisor had access to. This was fixed. Files from folders located in the Live Chats workspace and tech support were moved to the Company Files where they can be deleted. The folders are available only to administrators.
  15. TEAM-13766 We fixed how audio messages are displayed in a Telegram session.
  16. TEAM-15035 Files larger than 20 MB can now be sent from a Telegram bot to a live chat.
  17. TEAM-15110 We fixed how the operator group is displayed on the side panel of a session in a live chat.
  18. TEAM-15336 Data from a session is now correctly passed into a business process.
  19. TEAM-14901 We added an error check in getImapMailboxName.
  20. TEAM-15093 We fixed how the header with buttons is displayed on an email page.
  21. TEAM-15095 We fixed check box display in email settings.
  22. TEAM-15214 On the Incoming Payments page, when creating a table, a horizontal a slider has been added. It is pinned at the bottom of the page.
  23. TEAM-15215 We improved the operation of the All Incoming Payments widget.
  24. TEAM-15317 We fixed how columns are re-sized on the Subscribers page.
  25. TEAM-15356 We fixed the date of the notification about a received payment in the Incoming Payments process.
  26. TEAM-15495 We improved the settings of CRM task activities in the process designer. Now only CRM apps can be selected in these activities.
  27. TEAM-15773 In the All Inocoming Payment and My Incoming Payments в reports, year 2023 was added for setting goal dates.
  28. TEAM-10195 We added new error notifications for when an internal user that has an account in the cluster tries to authenticate on the external portal.
    - If the email matches a user in the same company, the notifications says: "The user is already registered in the company. Please log in or contact the administrator."
    - If the email does not match any user in this company (meaning that it matches a user in another company): "A user with this email is already registered in another company in the ELMA365 cloud, try another email address."
  29. TEAM-12977 When a user follows the invite link for the second time, he or she is directed to the sign in page and sees the following message: The invitation is not found. Maybe you have already accepted it.
  30. TEAM-13308 When installing a custom service with a module, the service works correctly from a private image.
  31.  TEAM-15069 We fixed the user validation error in module settings.
  32. TEAM-15074 Modules can be activated and deactivated only by administrators.
  33. TEAM-15131 The Show only when a condition is met option in a custom module now works correctly.
  34. TEAM-14045 We added validations during export to check for invalid widgets. Only published widgets are now exported.
  35. TEAM-12734 Custom task forms in processes now load correctly after import.
  36. TEAM-13746 Custom forms now load faster.
  37. TEAM-14141 We fixed how a custom process works.
  38. TEAM-14509 Tasks in a custom process didn't open right after the process was started by the initiator. Fixed.
  39. TEAM-14610 A variable in a process context now stores the only real user who has completed the task.
  40. TEAM-15189 We fixed how access was assigned to files on the external portal.
  41. TEAM-15262 Previously, when completing a process bound to a project plan element, the progress of corresponding elements wouldn't change. What was fixed:
    - A plan element's progress of the Process type is now updated if the process is completed successfully.
    - Processes are started in a sequence according to the project in case of manual start from an element's page and completion of a process.
  42. TEAM-15359 We fixed how a process got stuck on a timer.
  43. TEAM-15464 We replaced the edge/testing/  repository branche from which the  libgdiplus package was taken with the latest-stable/community/ branch.
  44. TEAM-15699 The Name field in a project task is now edited correctly through Gantt chart.
  45. TEAM-15834 We fixed the errors in updating the progress of a stage task.
  46. TEAM-7468 The Object activity stream widget didn't pass data from a process task. Now, the Associated activity stream setting was added to the Settings tab of process designer.
    Available options:
    - Business process associated activity stream. Messages are sent to the activity stream of the process instance.
    - Associated activity stream of an app or file. Variables of the App/File (one) type are selected. Messages are sent to the activity stream of the item stored in the context. If a context variable is empty, the message is sent to the instance activity stream.
  47. TEAM-10143 Access permissions to a file sent to the activity stream of an item now inherit app/app item permissions (depending on access settings).
  48. TEAM-11916 We fixed the error that appeared when importing several files on a File type (many) variable.
  49. TEAM-12290 The task counter is now updated without having to reload the page.
  50. TEAM-14183 A task is now deleted from a user's calendar if it is deleted by one of the participants.
  51. TEAM-14213 We fixed the task reassignment feature in substitutions.
  52. TEAM-14609 We added a horizontal slider at the bottom of the item search window.

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