Forms Overview

   Journey Manager (JM) The transaction engine for the platform. |   Platform Developer Form Builder |   23.10This feature was updated in 23.10

Journey Manager allows you to host Maestro forms so they are available to form users and applicants. Forms are exposed to users by being hosted on a user space. Each form has at least one form version, an entity that wraps the set of form-related data to be versioned. If multiple form versions exist, one of them is distinguished as the current form version, and is used when rendering the form. There is some data shared by all form versions, but most settings are maintained separately for each form version.

Manager recognizes forms of different form types, such as dynamic PDF forms or Composer SmartForms. Each form version has a form type and the artifacts needed to render the form. The form template file is used to render the form and possibly the form receipt. The receipt template file can be used to render the receipt instead. The form data configuration file defines the data structure underlying the form, and is vital for dynamic SmartForms hosted on Manager.

Journey Manager defines the life cycle of a form, which is important in providing the business context for the system.

The form life cycle has the following phases:

Form Definition & Publishing
Links to Manager forms are typically embedded in your organization’s website. When users click these links they are redirected to the Manager server, which retrieves the appropriate form definition, pre-populates it and then renders the form to the user. You can create individual branding, look and feel and business rules within each organizational profile for flexible form presentation.
Form Submission
Once a user has completed the form, the user submits it to Manager where the form data is processed. Manager supports several post-submission services that can be invoked at this stage including attachments, payment and signature services. When a submission is complete, Manager generates a receipt, which can be emailed to or downloaded by the user.
Submission Delivery
The final step is the delivery of the completed form, form XML data and relevant attachments to a recipient. Manager provides various delivery mechanisms along with custom processes or an organization-based stand-alone delivery mechanism that provides integration with existing systems.

You create a form in Maestro using the Maestro editor. This form is called a Maestro form. Then you deploy it in Manager and then configure it to implement a user journey functionality, such as a back-end connectivity, transactions or receipts delivery. However, you are not limited to the Maestro tools to create a form and can use other alternatives.

Manager defines various form events, which you can use to trigger a function implementing some specific business requirements.

Note

A Manager's form is represented differently in Maestro. For more information, see Maestro's form overview.

Global Forms

Warning

Global Forms is an experimental feature which may be subject to improvements and breaking changes in upcoming releases. If you have questions not covered by the documentation, contact your Client Services Team for assistance.

Warning

The experimental Global Forms feature has been temporarily disabled while we continue improving it. This feature will be disabled in releases starting from 24.10 and going back to 23.10.

Journey Manager allows you to host a special type of Maestro forms - global forms - that can be used across multiple organizations. This is achieved by dynamically assigning different organizations to these forms depending on which client is using them. A form, global or not, must have a valid organization assigned to it.

The global forms let you run Journey Manager in multi-tenanted environments, that is, global forms are used by various tenants. A tenant is our client, also known as an organization, who is identified by a Client Code. When a tenant is using a global form, a tenant's organization is automatically passed to the global form so all delivery channels and services get the correct organization, as well as all transactions and form submissions are linked to that organization. This is a crucial difference between global and standard forms, where standard forms are statically assigned to one organization.

Let's look how you set up a form to be global.

You design and build a global form in a same fashion as you do a standard form using your favorite tool, for example, the Maestro editor. You may want to create a dedicated organization, for example, My Global Organization, or a project, for example, My Global Project, for such global forms, so Manager automatically deploys them to a correct place.

When the form is ready, you deploy it to Manager and change its configuration to make it global. Alternatively, you import it as a global form. You can also take any existing form and import it as a global one.

Manager allows you to change a form's behavior depending on whether it is global or not. For example, a form space now comes with the Default Client dropdown list, which you can configure to populate transactions of global forms served through the form space. Depending on your privileges as a user, you are limited to see only these form spaces that are assigned to you. This is another feature that enables Journey Manager to be used for multi-tenanted solutions, as well as improves overall security for all tenants who are using this solution.

Manager allows you to see at a glance whether a form is global or not by adding the Global column to form view interface, as well as in the form dashboard.

You can delete a global form, but additional care must be takes as the global form can be used across multiple organizations.

A global form can use both standard organization-specific and global services. However, we allow only the following 3 types of services to be global:

Further to this, when you assign services to a global form version, Manager checks whether these services are allowed to be global or not. If a service is incorrectly assigned, it throws an Illegal Argument Exception (java.lang.IllegalArgumentException) when you try to render the form. If a service and a form are under the same organization, the form will render fine. However, if they are from different organizations - an exception is thrown.

For a collaboration job, a delivery channel belonging to an organization is used.

The diagram below shows that an organization is central to all interactions during user onboarding journey and how an organization is used and referred to parts of the system to identify every transaction between a user and a form.

Manager form overview diagram

A Maestro form is a single-page app, which is viewed and navigated by a form user as a series of logical screens where the user is required to perform some actions, for example, type an address or review prefilled data. This is referred as a user onboarding journey or a workflow. Workflows vary in complexity, so Manager comes with the collaboration job framework allowing you implement complex journeys involving multiple participants, steps and forms.

To start using collaboration jobs, you need to configure a form to use a Job Controller service, which is called to initiate a collaboration job. This can be done within Manager or manually using Fluent API.

In an onboarding journey, when a user first access a form that gathers initial information about a user, for example, a full name and address, this form is often referred to as the initial or triage form. After that stage, we simply refer to it as a form.

Manager allows you to use several forms to implement onboarding journeys. These forms are called a form bundle. A first form of the bundle displayed to a user is called the initial or triage form.

Next, learn about the form life cycle.