Creating Journeys
Building multi-step automated journeys
This guide walks you through creating a journey from scratch, configuring steps, and publishing it so it begins processing enrollments automatically.
Starting a new journey
Navigate to Journeys and click New Journey. You can either start from a blank canvas or choose one of the pre-built templates (Appointment Reminder, Invoice Payment Reminder, or Proposal Follow-up).
When starting from scratch, you will need to configure three things:
- Name -- a descriptive name for the journey, such as "Post-job review request" or "Overdue invoice reminders."
- Trigger -- the event that enrolls clients into the journey.
- Steps -- the sequence of actions the journey performs.
Configuring the trigger
The trigger determines which event starts the journey. Select a trigger type from the dropdown:
- Job Completed -- fires when a job is marked as completed.
- Job Scheduled -- fires when an appointment is created for a job.
- New Lead -- fires when a new client is created.
- Proposal Sent -- fires when a quote or estimate is sent to a client.
- Invoice Sent -- fires when an invoice is sent.
- Payment Schedule Created -- fires when a payment plan is set up.
- Payment Schedule Activated -- fires when a payment plan begins processing.
- Payment Schedule Item Overdue -- fires when an installment becomes overdue.
Triggers can optionally include conditions to narrow which events qualify. For example, you can filter proposal triggers to only match quotes (not estimates) or require a minimum invoice amount.
Adding steps
Steps are added to the visual journey builder canvas. Each step has a type, a name, and configuration specific to its type. Connect steps together to define the execution order.
Step types
| Type | Purpose |
|---|---|
| Send an email to the enrolled client. | |
| Delay | Wait a fixed amount of time before proceeding to the next step. |
| Scheduled Delay | Wait until a specific time relative to an entity date (e.g., 24 hours before an appointment). |
| Wait for Reply | Pause until the client replies to an email or a timeout is reached. |
| Condition | Branch the workflow based on a field value, email open, or reply status. |
| Action | Perform an operation such as adding a tag, calling a webhook, or removing a tag. |
| Notification | Send an in-app notification to team members. |
Configuring email steps
Email steps require a subject line and body. You can use template variables to personalize the content:
{{clientFirstName}}-- the client's first name.{{companyName}}-- your company name.{{serviceName}}-- the service associated with the job.{{appointmentDate}}-- the scheduled appointment date.{{invoiceNumber}}-- the invoice number.{{invoiceTotal}}-- the invoice total amount.{{propertyAddress}}-- the service property address.
Configuring delay steps
Delay steps accept a duration and a unit. Supported units are hours, days, weeks, and months. For example, setting duration to 3 and unit to "days" will pause the journey for three days before moving to the next step.
Configuring scheduled delays
Scheduled delay steps wait until a time calculated relative to a date on a related entity. You configure:
- Relative to -- a field path such as
appointment.scheduledStartorinvoice.dueDate. - Offset -- a number of hours, days, or weeks. Use negative values for "before" (e.g., -24 hours before) and positive values for "after."
Supported entity fields:
| Entity | Available fields |
|---|---|
| Appointment | scheduledStart, scheduledEnd |
| Invoice | dueDate, createdAt, sentAt |
| Proposal | createdAt, sentAt, approvedAt |
| Job | createdAt, completedAt, scheduledStart |
If the calculated time is already in the past when the step runs, the journey proceeds immediately.
Setting exit conditions
Exit conditions remove a client from the journey when a specific event occurs. Common examples:
- Invoice Paid -- exit the invoice reminder journey when payment is received.
- Proposal Accepted -- exit the proposal follow-up journey when the client approves.
- Unsubscribed -- exit any journey when the client opts out of emails.
- Job Completed -- exit when the related job is completed.
You can also enable re-enrollment on exit, which allows the same client to re-enter the journey if the trigger fires again after they have exited.
Publishing the journey
Before a journey can start processing enrollments, it must be published. Click Publish to activate it. Publishing requires:
- At least one step in the journey.
- At least one email step.
Once published, the journey status changes to Active and it begins listening for trigger events.
Modifying an active journey
You cannot modify the steps or trigger of an active journey directly. To make changes:
- Pause the journey first. This stops new enrollments and holds existing ones.
- Make your changes to steps, connections, or trigger configuration.
- Publish again to resume.
Duplicating a journey
If you want to create a variation of an existing journey, use the Duplicate action. This creates a copy in Draft status with all the same steps and configuration, ready for you to modify.
What's Next
- Triggers and actions reference -- full reference of every trigger and action type.
- Managing clients -- understand the client records that journeys enroll.