Skip to Content
Flower 3.2.7 is released 🎉
Image

Jira Forms meets Flower BPM

Jira Forms meets Flower BPM

Never lose track of important data again.
Flower BPM integrates seamlessly with Jira Forms, ensuring structured data collection and automation in your workflows.

This guide explains how Jira Forms work, how they differ depending on the project type, and how you can integrate them into your BPMN processes in Flower.


Understanding Jira Forms

Jira Forms are user-friendly form layouts that allow structured data collection without customizing field screens. For better organization, consider creating a dedicated Jira Forms project, where each issue type represents a separate form.

Jira Form Project holding all Flower Forms

Their availability and features differ based on project type, described as follows.

Jira Service Management (JSM) Forms

  • Rich form builder with drag-and-drop interface
  • Available under the “Forms” tab in each issue
  • Only available in Jira Service Management projects (not Jira Software)
  • Team-managed JSM projects only support the native form builder

Jira Form Builder

Team-managed vs Company-managed Projects

Project TypeForms Support
Jira Service Management✅ Full form builder support under “Forms” tab
Team-managed✅ Simple form builder suppot under “Forms” tab
Company-managed⚠️ No “Forms” tab; forms are configured via field screens
Atlassian MarketplaceAdvanced forms can also be added using apps. See Atlassian Marketplace 

Using Forms in Flower BPM

Forms in Jira are always tied to issue types. Since Flower BPM models both process instances and activities as Jira issues, you can use Jira forms in both contexts:

Process Instance Forms

  • Attach a form to the issue type used by your Flower process instance
  • All data submitted is available across the entire BPMN process
  • To configure: select the issue type with a form when creating or mapping a process model in the Flower Modeler

How to Link Flower to a Jira Form

ℹ️

Form fields from the process instance are visible and editable from all connected BPMN tasks.

Activity Forms

  • Each BPMN activity can use a different Jira issue type (and thus a different form)
  • This allows you to collect step-specific information
  • Useful for approvals, checks, handovers, etc.
ℹ️

You assign an activity form by selecting a custom issue type for that activity in the Flower Modeler.


Starting Processes from a Form

You can start a Flower BPM process in two ways:

From a Jira Form (JSM Form Submission)

  • When a user submits a JSM form, a Jira issue is created
  • If the issue type is mapped to a Flower BPMN model, a process instance is automatically started and the created issue becomes the process instance ticket.

From the “Create” Button (Standard Jira UI)

  • Users can create issues directly from the Jira top navigation
  • If the issue type is mapped to a Flower process, it becomes a process instance

To enable this:

  1. Go to Flower Settings → Issue Type Mapping
  2. Map a Jira issue type to a BPMN model

Flower BPM Issue Type Mapping

⚠️

Be careful: All issues of the mapped type will trigger Flower process instances. Do not reuse for modeling or unrelated tasks.

Accessing Form Data

  • Process instance form data is accessible in all tasks

Flower Form Context in a Jira Issue screen

  • Activity form data is only visible in that activity’s issue
  • You can also reference form fields in BPMN expressions (e.g. gateways)

Validating Required Fields

Ensuring that required fields are filled out at the right moment is essential — but must be done carefully depending on how and when a Jira issue is created.


Mandatory Fields in Process Instance Forms

Jira Forms allow you to mark fields as mandatory in the form builder.
However, this validation happens only at issue creation time.

This can work only if the process instance is created by a user filling out a Jira form, e.g. via a JSM form submission. In that case, Jira enforces the required field when the issue is submitted.

âť— But if the process is started via API or internally in Jira (e.g. by another process, automation, or script), and the required field is not filled yet, the issue creation will fail.
This is a common and dangerous mistake.

⚠️

Only mark fields as required in process instance forms if you’re certain the issue will be created by a user submitting a form.


Mandatory Fields in Activity Forms

In BPMN tasks (activities), it’s often necessary to enforce that a field is filled before resolving the task — not at creation time.

You might be tempted to mark such a field as mandatory in the form builder,
but this will break your process!

Flower creates activity issues automatically – not through user input – and it cannot guess how to fill required fields.

Instead, what you really want is to enforce that a specific field is filled before transitioning the task to “Done” or “Resolved”.

This is done with Jira workflow validators.


Use Validators – Not Form-Level Mandatory Fields

Validators are part of the Jira workflow configuration.
They let you define checks before a status transition can happen.

How to add a Field Required Validator

To enforce that a specific field is required before resolving a task:

Open your workflow for editing
Click on the transition you want to validate (e.g. “Done”)
Go to the Validators tab
Click Add Validator on the right
Select Field Required Validator from the list

Jira workflow validator

Choose the specific field you want to make required

Validator Options:

  • Jira Cloud: Built-in Field Required Validator is available by default
  • Jira Data Center: Use apps like ScriptRunner to perform required field checks

This ensures users cannot complete a task unless all necessary form fields are filled — without breaking the automated issue creation.

ℹ️

Validators apply only to activity issues.
Process instance issues typically do not use transitions while the BPMN process is running.


Avoiding Automation Pitfalls

Another common mistake is trying to check field values via Jira Automation after a task is transitioned.
While you can technically detect empty fields this way and even set the issue back to “Open”, the resolved event has already been sent to Flower – so the process has already moved forward.

Avoid using automation to reverse transitions after the fact – use validators to prevent incorrect transitions from happening in the first place.


Learn More

Last updated on