Skip to content

Workflows

Automate a response to a billing event with a trigger, conditions, and steps.

A workflow watches for something to happen and then does something about it, without a person in the loop. Email a customer when their payment fails. Tag an account when it upgrades. Pause a subscription at the end of a contract. You build a workflow from three parts: a trigger, some conditions, and a set of steps.

A workflow: trigger, condition, then actions
Trigger
When an invoice's payment fails.
↓ check a condition
Condition
Is the invoice over $100?
Yes: email the customer, then ask a teammate to approve a credit
No: send a payment reminder
↓ run the matching branch
Actions run
The steps on the branch that matched run in order, with any delays and waits along the way.

What starts a workflow: the trigger

Every workflow starts on a trigger. There are three kinds:

Trigger Starts the workflow when
Event Something happens, like a payment failing or a subscription being created.
Schedule A time comes around, on a recurring schedule in your timezone.
Date offset A set time before or after a date, like three days before a contract ends.

A workflow is scoped to a module, the kind of record it is about, such as a customer or a subscription. The module decides which triggers and fields are available.

Deciding what to do: conditions

A condition checks the record before acting. You can require that all of a set of checks pass, or that any one of them does. "The invoice is over $100 and the customer is on the Pro plan" is a condition that must match before the steps below it run. A condition branches: one set of steps runs when it matches, another when it does not.

The steps

The steps are what the workflow does. A step is one of:

Step What it does
Action Does something, like sending an email or applying a credit. See workflow actions.
Condition Branches into a "matched" path and a "did not match" path.
Delay Waits a set amount of time, then continues.
Wait for an event Pauses until something happens, like the invoice being paid, or until a timeout.
Approval Pauses until a teammate approves or rejects it, for steps you want a human to sign off on.

These combine into a tree. A workflow can send an email, wait for the invoice to be paid, and if it is not paid within a week, ask a teammate to approve a write-off.

Edge cases

  • A workflow is scoped to one module. Its trigger and its condition fields come from that module.
  • Waits and delays are durable. A workflow can pause for days waiting for an event, then pick up exactly where it left off.
  • An approval step means a human decides. Use it to make sensitive automations safe rather than banning them.