Skip to Content
PercenyPerceny
All Tutorials
Clients & Marketing

Use Custom Fields in Workflows

Start a workflow when a custom field changes or a custom date comes up, branch on a field, print it in a message and set it from a step, for clients, appointments, tickets, team members, services and products, memberships and gift cards.

Intermediate8 minWeb dashboard

A custom field is something your shop decided to keep. A workflow can act on it four ways: start when it changes or when its date comes up, take a different path depending on its value, write it into a message, and fill it in.

Define the fields first, under Features Configuration → Custom Fields. See Add Your Own Fields.

Start a workflow from a fieldCopy a link to this section

Open Workflows, press Create Workflow, and choose the trigger.

When Something Happens has one event per kind of record:

  • Client Custom Field Changed
  • Appointment Custom Field Changed
  • Ticket Custom Field Changed
  • Team Member Custom Field Changed
  • Service or Product Custom Field Changed
  • Membership Custom Field Changed
  • Gift Card Custom Field Changed

Under the event, pick the field that should start the workflow, or leave it on Any field to start on every change. A change fires once per field, whoever made it: a person, the API or another workflow.

Relative to a Date can count from one of your own date fields:

  • Client Custom Date: a date field on clients, such as a contract renewal.
  • Team Member Custom Date: a date field on your team, such as a licence expiry or a start date.

Pick the field, then the Offset (negative is before the date, positive after it) and the time of day. Turn on Every year to repeat on the date's month and day, like an anniversary. A team member's date is only checked for people who are still working with you.

Which fields a workflow can useCopy a link to this section

A workflow can only use the fields of a record its runs are actually about:

The workflow starts fromFields it can readFields it can set
Anything about a clientClientClient
An appointmentClient, appointment, the appointment's stylistClient, appointment
A ticketClient, ticket, the ticket's ownerClient, ticket
A membershipClient, membershipClient, membership
A gift cardClient, gift cardClient, gift card
A team member (their field changed, their date, attendance)That team memberThat team member
A service or product (its field changed, stock low or back)That service or productThat service or product

The builder only offers what fits, and Publish tells you when a step names a field the workflow cannot reach.

So an appointment reminder can mention the stylist's licence number, and a workflow that starts from a team member's licence date can update a field on that team member.

Branch on a fieldCopy a link to this section

Add an If / Else step. In the field list your custom fields appear under their record: Client Custom Fields, Appointment Custom Fields, Team Member Custom Fields, and so on. The comparisons fit the field's type: is empty or not, equals, contains, greater or less than for numbers and amounts, before or after for dates, yes or no, and one of the options for a dropdown.

The same fields can narrow the trigger itself, in the trigger's own conditions.

In any message, the variable picker has a Custom Fields group. Picking one inserts a tag:

RecordTag
Client{client.custom.allergies}
Appointment{appointment.custom.occasion}
Ticket{ticket.custom.po_number}
Team member{member.custom.licence_number}
Service or product{offering.custom.supplier}
Membership{membership.custom.locker}
Gift card{giftCard.custom.occasion}

The last part is the field's key. A tag prints the value the way a person reads it: a dropdown's label, an amount in your currency, a date as a date. An empty field prints nothing.

Set a fieldCopy a link to this section

The Set Custom Field step fills in or clears one field. Choose the Record, the field and the Value; text values can use variables. Clear the field removes whatever it holds. The value is checked against the field's type, so a step that would store something the field cannot hold fails instead of saving it.

Setting a field counts as a change, so it can start another workflow that listens for that field. A workflow does not restart itself from its own change.

Team members: who can build theseCopy a link to this section

A team member's custom fields are private to owners, managers and the person themselves. Workflows follow the same rule: only an owner or manager can publish a workflow that starts from a team member's field or date, branches on one, prints one or sets one. Anyone else sees "Only an owner or manager can use team member custom fields in a workflow."

To reach the person the workflow is about, choose Team Member the Workflow Is About under Send to in a Notify Staff or Text Staff step.

Example: remind a stylist before their licence expiresCopy a link to this section

  1. Add a Date field called Licence Expires on the Team tab of Custom Fields, and fill it in on each team member's General Info.
  2. Create a workflow with the trigger Relative to a Date → Team Member Custom Date, field Licence Expires, offset -30 days, at 9:00.
  3. Add Notify Staff, sent to Team Member the Workflow Is About: "Your licence expires on {member.custom.licence_expires}. Please renew it and bring the new one in."
  4. Add a second Notify Staff for Managers if you want to hear about it too.
  5. Publish.

Each team member gets the reminder once, 30 days before their own date.

Example: tell the front desk when a supplier changesCopy a link to this section

  1. Add a Text field called Supplier on the Services & Products tab.
  2. Create a workflow with the trigger Service or Product Custom Field Changed, field Supplier.
  3. Add Notify Staff for Managers: "Supplier is now {offering.custom.supplier}."

In a group of locationsCopy a link to this section

Each location defines its own fields, and a workflow finds a field by its key. A workflow shared across your group works at every location that has a field with that key on that kind of record.

Share this tutorial

Spend Your Day On Clients, Not On Spreadsheets And Group Chats.

Live in about a week. We move your data over for free and set it up with you, and real people help 7 days a week.

Get Started
  • No long-term contracts
  • Free migration
  • Live in about a week, set up with you
  • Support 7 days a week