Throw
Stops the process with an error and your own error message when this step is reached.
Throw makes the process fail on purpose, with an error message you write. Use it at the end of a branch that should never be reached, or after a check that found bad data, so the run is marked as failed and the reason is clear in the run details.
Add the action
In the Process Designer toolbox, pick Throw (or type Throw in the search box).

Inputs and outputs
| Field | Direction | Type | Required | What to put / what you get |
|---|---|---|---|---|
| Custom Message | Input | Text | No | The error message the step fails with. Can include process variables. |
Throw has no outputs.
Example
Real runs with Test Action:
| Custom Message | Result |
|---|---|
Invoice total is negative | The step fails with the error Invoice total is negative. |
| (empty) | The step fails with the error An exception occurred. |
A typical use: a Decisional checks invoiceTotal < 0; that case leads to a Throw with Custom Message Invoice <%invoiceNumber%> has a negative total, so the run fails and the message names the invoice.
Good to know
- The step always fails: that is its job. The run then ends with an error, like any other failed step, and the message appears on the failed step in the run details.
- The panel prefills Custom Message with An exception occured.; if you clear it, the message is An exception occurred.
- In a subprocess started with Call Subprocess, the error makes the Call Subprocess step in the parent fail too.

