Workflows help you automate your processes, regardless of their complexity in a simple way through a visual diagramming feature that is BPMN 2.0 compliant (Business Process Model and Notation).
They are similar to the Automations, since they are executed based on triggers and rules defined by you. They also provide a monitoring tool that allows you to review their execution in real-time.
User Permissions: Only Administrators or App Admin users can create Workflow.
In this tutorial, we will cover the following topics:
Create a New Workflow
Since they are BPMN 2.0 compliant, Workflow includes support for sub-processes, wait-events, and full access to FreeAgent's open APIs. Great for approvals, sales cadences, lower volume marketing drip campaigns, integrations, and more.
If you are an App Admin, you will find Workflows under Admin Settings > Automations > Workflows. There select the desired App. You can also use the Global search to get there faster, just start typing "Workflow". If you are a team admin, you can navigate to the bottom of the Admin Settings menu, where you will be able to see all the Workflows that exist for all Apps.
Once there, click the 'Create New Workflow' button.
FIELD | DESCRIPTION |
Name |
Use something that identifies your workflow. Ie. Quote approval. |
App | Shows the current App. |
Triggers |
Select one from the list: On App Action - As soon as you click the App Action Button, the workflow will be triggered. After Create - As soon as you create a new record on the specified App, the workflow will occur. After Update - When a change in the selected field is detected, the workflow will take place. After Create / Update - A useful combination of triggers that will consider both the 'After Create' and 'After Update' scenarios described above. On Webhook - Requires Webhook. When the webhook is triggered the workflow will begin. Schedule Chron- Think of this as a recurring event, you will be able to specify how often you want the workflow to occur. Schedule Field - A single event triggered on a specif date, determined by the field selected. |
Fields |
Only available if the Trigger is either 'After Update' 'After Create / Update' or 'Schedule Field'. Here you will need to select one more multiple fields that will be used to trigger the workflow if they are updated. |
Schedule Chron |
Available only when the trigger type is 'Schedule Chron'. Here is where you specify the frequency of the event. You can use Crontab, to help you define the desired frequency. |
Conditions
If you would like to specify some rules for your Workflow, here is where you create them. The conditions will help you prevent your Workflow from being triggered if they are not being met. This means that you can define as many rules as you need to ensure that this only happens when the conditions are right.
e.g. For a Quote approval process, you could add a condition to verify that the Quote status is 'Awaiting Approval'.
Workflow
Here is where the magic happens. Draw your process in the BMPN 2.0 compliant diagrammer. Once you are done, save your changes.
Take a look at the table below to learn more about the different elements available in the diagrammer.
ICON | NAME | DESCRIPTION |
![]() |
Hand Tool | Selects a single element in the diagram to either move or delete. |
![]() |
Lasso Tool | Select a number of diagram elements. You can then proceed to move or delete the selected elements. |
![]() |
Space Tool | Create or remove space both horizontally and vertically in a diagram. |
![]() |
Connect Tool | Draw a line between the two selected elements. |
Events - Represented with a circle. They denote something that happens. Each Workflow needs to begin with a 'Start Event' and end with an 'End Event'. | ||
![]() |
StartEvent | The starting point of a Workflow. Required. |
![]() |
Message Intermediate |
Occurs between a start and end of a process. |
![]() |
Timer Intermediate Catch Event |
Allows you to create waiting periods before a new activity. |
![]() |
Error Boundary Catch Event |
Adds validations for your workflow. |
![]() |
EndEvent | The ending point of a Workflow. Required. |
![]() |
Gateway | Determines forking and merging of paths, depending on the conditions expressed. |
Activity - Represented with a rounded-corner rectangle. They describe the kind of work which must be done. | ||
![]() |
Create Record | Creates a new Record in the desired App with the specified parameters. |
![]() |
Edit Record | Updates an existing Record in the desired App with the specified parameters. |
![]() |
Delete Record | Deletes an existing Record in the desired App. |
![]() |
Get Record | Obtains the information of the specified Record. |
![]() |
Script | Allows custom code for the Activity. |
![]() |
Receive Task | Waits for an external event to take place. |
![]() |
Integration | Select an existing integration in FreeAgent. |
![]() |
Create expanded |
Used to create a subprocess within the main one. Subprocess requires StartEvent and EndEvent. |
![]() |
Create Pool/Participant | Represents major participants in a process, typically separating different organizations. A pool contains one or more lanes |
Diagrammer Actions
Once you have created one of the elements above, select it to show the available options. There at the bottom, you have the option to edit or delete the selected element. If you selected a connection then an additional option will be available to define the type.
ICON | ACTION | DESCRIPTION |
![]() |
Connection Type |
Default flow Conditional flow |
![]() |
Edit |
Customize the task. Add a name, select the App and define the input parameters. |
![]() |
Delete | Deletes an existing element from the diagrammer. |
Editing a Workflow
When you add an Activity for your Workflow, you will need to edit it in order to configure the expected action and the information it should include.
In a Create Record, for example, you will need to define the name of the Activity, select the App for which you want to create the new record, and then define the Input Parameters, meaning the information that is going to be used to create your record.
You will need to define a type for each field you add here. There are two types available, static and dynamic.
Static is mostly used when the information for the field has a single value that will not change over time. For example, if you want to assign a record to a specific sales rep, then your configuration would look like this:
On the contrary, you would need a Dynamic type, something like this:
Workflow Activities - Monitoring
Administrators and App Admins can review the status of the Workflow Activities thanks to the Monitoring tool we provide for this purpose. As an App Admin, to get to the Workflow Activities Monitoring, open your menu, navigate to Admin Settings > App Setup > {Your App} > Workflow Activities. If you are an Admin, go to Admin Settings > Workflow Activities, to visualize all Workflow Activities .
Note: If you are now on Hazel, go to Admin Settings > Automations > Workflow Activities.
Here you can learn all about your Workflow. For their status, to when they started and ended. If there were any errors during its processing, including the error type and message to give you a better insight of what the problem was.
Use Case Walkthroughs
To see this powerful feature in action, we have prepared walkthroughs for popular Workflow processes. Get the step by step configuration following the links below:
Lead Follow-Up
Quote Discount Approval
Workflow Definitions
If this is your first time constructing a Workflow in a BPNM 2.0 layout or you need further explanation of the tools available to you, refer to the Workflow Definitions article. This article covers the different events and task types as well as other concepts related to constructing Workflows.