Skip to main content
Actions are the steps that do work. Click Add step on the canvas to open Add a step, then search or browse by area and pick an action. Select the step and fill in its fields in the side panel. Most text and number fields accept variables, so you can pull in the trigger record or the output of an earlier step. Actions are grouped the same way as in Add a step.
Send letter, Grant loyalty points, and Create maintenance issue only appear if that product is enabled on your account.

Core

Create task

Create a task assigned to a teammate.
  • Title and Description — what the task is. You can insert variables into both.
  • Due date — when the task is due. Choose When the action runs, After the action runs (minutes, hours, days, or weeks), or a custom value. For example, due one day after the run is {{ now + 1d }}.
  • PriorityLow, Medium, High, or Urgent.
  • StatusTo do, In progress, or Done.
  • Assignee — the teammate who should pick it up.

Create note

Attach a note to a record.
  • Text — the note body.
  • Parent type — the kind of record to attach to, such as customer, invoice, tenancy, unit, application, or maintenance.issue.
  • Parent ID — the record ID. For a database event, this is often {{ trigger.object.id }}.

Send email

Send an email to a customer, owner, or address. The email is sent as soon as the step runs, from your agent address unless you set From. The send is stored as an outbound message in Inbox. You need a provisioned address first.
  • Recipient typeCustomer, Owner, or Email address.
  • Recipient — the customer ID, owner ID, or email address, matching the recipient type. Defaults to {{ trigger.object.customer }} when the trigger has a customer. Inside a loop, use {{ loop.item.id }}.
  • Subject — the email subject. You can insert variables.
  • Body — the plain-text message. Do not start with “Subject:” — that belongs in Subject. You can insert variables, for example Hi {{ trigger.object.customer_name }}.
  • TemplateBranded or Plain text. Branded wraps the body in your account branding — logo, colours, and support details. Plain text sends the body as-is, which is better for a reply on an existing thread. Defaults to Branded.
  • From — optional. A provisioned sending address. Leave blank to use the account’s agent address.
  • Thread — optional. An Inbox thread to reply on. Leave blank to start a new conversation.
The recipient needs an email address on their record when you send to a customer or owner.
Unlike the assistant, a workflow send does not wait in Approvals. Only publish a workflow when you are happy with the recipient, subject, and body.

Update unit fees

Set the percentage management fee on a unit, and optionally the tax.
  • Unit ID — the unit to update. Defaults to {{ trigger.object.unit }} when the trigger has a unit.
  • Management fee — the percentage charged to the landlord, for example 8 for 8%.
  • Tax — the VAT rate applied to the fee, for example 20. Leave blank to keep the current rate.

Billing

Create invoice

Create an invoice with a single line item for a customer. See Invoices.
  • Customer — the customer ID. Defaults to {{ trigger.object.customer }} when the trigger has a customer.
  • Amount — the line item amount in the smallest currency unit, such as pence.
  • Description — the line item description, for example a late payment fee.
  • Collection methodSend invoice or Charge automatically.
  • Finalize now — turn this on to finalise the invoice immediately so it can be sent or charged. This is on by default.
Amounts are stored in pence. If you later print the amount in a letter, insert the field and choose Currency from Format. See Variables.

Letters

Send letter

Print and post a letter from a template. The letter is sent as soon as the step runs — it does not stay as a draft. See Send a letter.
  • Template — the letter template to copy content from.
  • Recipient typeCustomer or Owner.
  • Recipient — the customer or owner ID, matching the recipient type.
  • DeliveryStandard or Premium.
  • Name — optional. Defaults to the template name if you leave it blank.
If the template has variables, fill in each one. You can insert a field from the trigger. The recipient needs a name and address, and your account needs a return address, the same as when you send a letter yourself.

Loyalty

Grant loyalty points

Grant points from a loyalty programme to a customer, resident, or email.
  • Loyalty programme — the programme to grant points from.
  • Recipient typeCustomer, Email, or Resident.
  • Recipient — the customer ID, resident ID, or email, matching the recipient type. Inside a loop, use {{ loop.item.id }}.
  • Points — optional override of the programme’s default points. Leave blank to use the programme reward.
  • Spend amount — required for earn-rate programmes. The spend amount in the smallest currency unit, such as pence.
  • Statement descriptor — optional text that appears on the customer’s statement.
  • Expires at — optional. When the granted points expire.

Maintenance

Create maintenance issue

Raise a maintenance issue, optionally against a unit or application. See Manage issues.
  • Name and Description — what needs fixing.
  • TypeInternal, Planned, or Customer request.
  • PriorityLow, Medium, High, Urgent, or Critical.
  • Unit ID — optional. Defaults to {{ trigger.object.unit }} when the trigger has a unit.
  • Application ID — optional.
Unlike creating an issue from the Dashboard, a unit is optional here so you can raise work from triggers that do not have one.