### Advanced operators

Logic operators represent a logical expression and always return a true or false value. They can be used as a standalone rule for your rulesets, meaning just one of these will evaluate properly to a “pass” or “decline” message.

Operator Usage Explanation Example
`IF` `IF([param] [operator] [value], [when true], [when false])` When the first condition is evaluated as true, the second condition is triggered. If the first condition is evaluated as false, then the third condition is triggered. `IF(SCOR > 50, (AUTO = "D"), (AUTO = "E"))`
`AND` `AND(([param1] [operator1] [value1]), ([param2] [operator1] [value2]))` Evaluates both conditions. If the first is truthy, the second also needs to be, otherwise it will return false. `AND((SCOR > 50), (AUTO = "D"))`
`OR` `OR(([param1] [operator1] [value1]), ([param2] [operator2] [value2]))` Evaluates one or the other condition. If any of the conditions evaluates as true, returns true. `OR((SCOR > 50), (AUTO = "D"))`
`CONTAINS` `CONTAINS([value], [param])` Evaluates if the parameter includes the value. If yes, retuns true. `CONTAINS("CERT", TEXT)` when parameter TEXT = “PAYCERTIFY”

Numeric operators work with mathematical expressions and return a number. They cannot be used as a standalone rule for your rulesets, meaning you will need to evaluate the results of these operatios (numbers) with either a comparison or a logical to properly transimit a “pass” or “decline”.

Operator Usage Explanation Example
`MIN` `MIN([param1], [param2])` Returns the lesser of both numbers. `MIN(10,20)` will return 10
`MAX` `MAX([param1], [param2])` Returns the greater of both numbers. `MAX(10,20)` will return 20
`SUM` `SUM([param1], [param2])` Returns the sum of both numbers. `SUM(10,20)` will return 30
`AVG` `AVG([param1], [param2])` Returns the average for numbers. `AVG(10,20)` will return 15
`ROUND` `ROUND([param])` Rounds the number to the closest integer. `ROUND(1.4)` will return 1 while `ROUND(1.6)` will return 2
`ROUNDUP` `ROUNDUP([param])` Rounds the number up to the closest integer. `ROUNDUP(1.3)` will return 2
`ROUNDDOWN` `ROUNDDOWN([param])` Rounds the number down to the closest integer. `ROUNDDOWN(1.3)` will return 1