FAQ: Strategies
In a Segmentation step, if a claim matches more than one condition, do all of them run?
No. A Segmentation step checks its conditions in the order they are listed and runs the action of the first condition that is true. The conditions after it are not evaluated. If no condition is true, the action of the Default condition runs. If the chosen action is empty, the step simply finishes. In every case the strategy then continues with the step after the Segmentation step.
Two conditions with identical criteria therefore never both run: the second one can never be reached. See Step: Segmentation.
How do I send both an SMS and an email when one Segmentation condition matches?
The Strategy Builder lets you pick one action per condition. To trigger several steps, make that action an Insert path:
- Create a small strategy that contains the SMS step followed by the Email step.
- In the Segmentation condition, choose Insert path and select that strategy.
When the condition matches, both messages are sent and the claim then carries on with the rest of the original strategy. Do not use Switch path for this, because Switch path discards the rest of the original strategy.
What is the difference between Insert path and Switch path?
Insert path runs all the steps of the selected strategy and then returns to the next step of the current strategy. Switch path replaces every remaining step of the current strategy with the steps of the selected strategy; nothing after it in the original strategy runs.
Use Insert path for a detour that should come back, and Switch path when the claim should leave the current strategy for good. See Insert path and Switch path.
Can a Recursive Step decide at runtime which strategy a claim moves to?
Yes. The code of a Recursive Step returns a list of steps, and those steps run right after it. The helper switchPathIfExists('Strategy name') returns a Switch path step to the strategy with that name (or ID), for example:
if (meta?.email_counter <= 2) {
return [switchPathIfExists('Dunning Stage 0')];
} else if (meta?.email_counter <= 4) {
return [switchPathIfExists('Dunning Stage 1')];
}
return [switchPathIfExists('Ready for DCA')];
If no strategy has that name, switchPathIfExists returns nothing and the strategy continues with its next step. insertPathIfExists works the same way for Insert path. insertPath('Strategy name') with a name that does not exist makes the step fail. Inside the code you can read the claim's fields, its meta object and daysInExecution. See Step type: Recursive Step.
A claim returned from a "blocked" or "parked" strategy and now loops without sending anything. Why?
This happens when the parked strategy sends every claim back to the first stage of a dunning flow, but that stage only has conditions for early claims (for example, an email counter of 0 to 2). A claim that was already further along matches none of the stage's conditions, waits a day and checks again, indefinitely.
To avoid it, route the claim by its progress when it leaves the parked strategy: use a Segmentation step or a Recursive Step that checks the counter and switches to the stage that matches it. Also give every stage a Default condition that sends unexpected values somewhere sensible. Test the path with the Simulator.
Why does the Strategy Builder warn me about a loop when I save?
The builder checks whether saving would let claims cycle between strategies (through Insert path, Switch path, If and Segmentation branches) without any wait step on the way. Such a loop runs continuously. Add a wait step (Wait, Wait time of day, Wait until next day or Wait days past due) on the branch that closes the loop, or choose Save anyway if the cycle is intended.
The check only looks for cycles with no wait step. It does not evaluate conditions, and it cannot see paths chosen by Recursive Step code, so a loop that waits a day between rounds (like the one in the previous question) is not flagged.
At what time does a strategy send its emails? Which timezone is used?
A strategy sends an email when the claim reaches the Email step. To send at a set time of day, place a Wait time of day step before it. That step waits until the chosen time in your client's timezone, which is set under Configuration > General > Timezone; it is not the debtor's timezone. If the chosen time has already passed when the claim reaches the step, the claim continues within a few minutes rather than waiting until the next day.
To find out when a strategy sends, open it in the Strategy Builder and look at the Wait time of day steps in front of each Email step. See Step type: Wait time of day.
How do I move a claim to a different strategy, or stop, pause or resume its strategy?
Go to Account > Claim overview, tick the claim (or several claims), and open the Actions menu:
- Assign new strategy: the claim starts the selected strategy from its first step. Assigning the claim's current strategy again restarts it.
- Stop current strategy, Pause current strategy and Resume current strategy.
These actions apply to active claims and require the matching permissions in your role. See Claim overview page.
Why wasn't my new claim assigned to a strategy straight away?
Strategy assignment is intentionally delayed by about 15 minutes after a claim is created. This gives the platform time to finish building the account and claim before the first steps, such as message generation, run.
Why did a Segmentation or If condition send a claim down an unexpected branch?
Condition values are compared exactly, including upper and lower case: DE does not match de. Check the value stored on the claim (for example in its meta fields) against the value in the condition. If a value can arrive in different forms, cover each form or normalise it before the condition.
Why did a reaction change the strategy of a claim I did not expect?
A reaction fires on every update to the value it watches, including updates made by your own strategies, not only updates from your system. If the reaction inserts or switches a path, it changes the running strategy of every claim where that value changed. Add a condition to the reaction to exclude the flows that should not trigger it.
Why did a customer with several claims get the same email once per claim?
Each claim runs its own copy of the strategy, so a step that sends an email runs for every claim that reaches it. To send one email per account, put a condition before the email step that is true for only one of the account's claims, for example its oldest claim, and send the email only on that branch.
How do I split claims randomly between two paths?
Use an If condition in advanced mode with an expression such as Math.random() < 0.5. About half of the claims take the Yes branch. Change the number (between 0 and 1) to change the share. See Randomising strategies.
Can a custom trigger step send extra data to my webhook?
Yes. Add variables to the custom trigger step, each with a name and a value. The value is either fixed text or a placeholder chosen from the list, which is filled from the claim when the step runs. The variables arrive in the executed-trigger webhook event under triggerContext. A placeholder must be the whole value (not mixed with other text), and source is a reserved name.
Why did the strategy stop when I resolved a claim through the API?
Strategies only run on active claims. Resolving a claim sets its status to resolved and stops its strategy, even if an amount or fees are still outstanding. Resolve a claim only when nothing more should be collected on it.
Can I export my strategies through the API?
No. Strategies are managed in the Strategy Builder; there is no API endpoint to export them.