Hailer is a cloud platform designed for process-driven business management and communication, sold as a SaaS (Software as a Service). The biggest unit in Hailer is a workspace. Typically, one customer has one Hailer workspace.



Activities are the most central part of Hailer, allowing the whole organization to work in a structured way. Activities can include things such as sales cases, tasks and projects. The activities are run through processes and datasets according to predefined workflows and data structures. In order to create an activity, a process or dataset must be created first.


Processes are predefined workflows, configured in the process editor. This allows the process owner to define which steps the process consists of in addition to what data is collected within the process. The phases of the process can be linked to each other in any order specified by the process owner. 


Datasets are also configured in the process editor and have the same properties as processes. In datasets, moving the activities between the phases, which we in this case call categories is disabled.


Configuring processes and datasets in Hailer requires no coding skills and can easily be done by the workspace or process owner. When an activity reaches a particular phase, an automatic feed post can be generated in the workspace feed. Users following a phase, can also be notified when new activities are inserted or moved into that particular phase.


Activities can contain any number of fields. The available field types are:

  • Text
  • Predefined Options
  • Text Area
  • Numeric
  • Numeric Unit
  • Date
  • Date Range
  • Time
  • Time Range
  • Date + Time
  • Date + Time Range
  • Country
  • Activity - Link activity to any activity in any module
  • User - Link activity to any user present in the workspace
  • Team - Link activity to any team present in the workspace


In addition to these fields, any activity can have a location - specified with coordinates and visible on a map. Files can be attached to any activity. See Appendix 1 for a complete description of the product data structure.


Most field types can also be made into function fields. In this case, the user can type in with Javascript a set of rules according to which the function returns a certain value or result. The function fields are automatically sandboxed on a virtual server.


Any field in a process or dataset can be set as mandatory. It is also possible to specify which fields are visible in each phase/category. Visibility of processes and datasets can be limited either on a user or a team level. One user can belong to one or many teams.


The activities also come with a PDF document generator. This can be configured to produce for instance the following documents based on the activity data:

  • Offers
  • Invoices and proforma invoices
  • Packing lists and other logistics documents
  • Order confirmations
  • Certificates
  • Reports


Another very central part of Hailer is the instant messaging functionality, allowing users to communicate directly with each other, either privately or in context.  The discussions bring together all messaging channels of each Hailer user regardless of which Hailer workspace, which process or event the discussion channel is about.

There are four different types of discussions in Hailer:


Private discussions can take place between any users having at least one workspace in common. The discussion is private and not visible to other users in the workspace.


Group discussions can take place between multiple users having at least one workspace in common. Users can be added and removed from the discussion if needed. The discussion is private and not visible to other users, if not in the discussion.


Activity discussions are in-context discussions related to a specific task or activity in a process or dataset. The discussion is created automatically upon activity creation and the activity creator is added to the discussion automatically. Anyone with access to the activity can join the discussion and add more participants. This discussion type is typically used for discussing the particular topic of the activity, such as managing the project, task or sales case at hand.


Event discussions are in-context discussions related to a specific event in the event calendar. The discussion is created automatically when the event is created. All users invited to the event are automatically added to the discussion. Anyone with access to the event can join the discussion and add more participants. This discussion type is typically used for discussing practicalities regarding an event, such as selecting meeting rooms, arranging transportation, sharing meeting links etc.


All discussions support sending attachments, such as files, videos and documents. Discussions can also be starred, indicating that the particular discussion is e.g. important or unread. Messages can be replied to and users can react to messages. In addition, a user can edit and delete their own messages.



Every Hailer workspace comes with a feed, available for all workspace members. Feed posts are usually used for sharing information that concerns or is of interest for the whole organization.


Hailer can also produce feed posts automatically. When an activity reaches a significant point in any process or dataset, a feed post can be generated to announce the event on the workspace feed. This feature is typically triggered when e.g. a sales case is closed or a project starts.


Feed posts can be pinned, making them stay on the top of the feed until unpinned. Feed posts can also be liked and commented on, as well as edited by the author.


In every Hailer workspace, one or many calendars can be created. It is possible to restrict the visibility of a calendar to a certain set of users or user groups. Any event can act as a discussion channel, i.e a group chat connected to the event. The channel is typically used to track participation in the event as well as for e.g. practical arrangements.

Users & Teams

This is the most important part of any workspace. Everyone can create a Hailer profile and this profile can be invited to one or multiple workspaces. The profile is private and secure and is identified with an email address as the username.

All members of a Hailer workspace can also be given attributes such as contact details, phone numbers or custom information that is unique to your business. All users in a workspace can be separated into different teams, allowing the workspace administrator to restrict the visibility of the workspace content to different teams.


While Hailer is mainly designed for communication, in-context files make up an important part for collaboration and information sharing. Hailer, therefore, has an inbuilt file management system to make it easy to store, track, find and share files. All files and links posted in a discussion, are collected and made easily accessible by anyone participating in the discussion.



Hailer has an HTTP REST API which can be used by selected partners. All functions can be reached through the API. Authentication is done with a username and password, returning a user-specific key which then can be used when sending requests. The requests are sent in JSON format.

Platform support

The fully responsive Hailer web application is supported on the two latest versions of Chrome, Firefox, Safari and Edge and works on all devices. 


Hailer also has an Android application that can be found at:



Supported on iOS 13 and up, Hailer has a native iOS application equipped with central features, typically needed in field operations. 


The application can be found at:


Technology stack

The web frontend is currently built on Angular 10.

Our iOS application is a native application written in Swift, while our Android application in the Play Store is a web based application (Trusted Web Activity), identical to our web application on app.hailer.com.

The backend runs on node.js and we use MongoDB for databases. Both the frontend and backend are written in TypeScript.

Our infrastructure runs on Amazon Web Services (AWS).

Appendix 1: Product Data Structure

Product Hierarchy@2x (7)