Decision Tables are built in the OmniStudio Business Rules Engine Designer. The fastest path is to start with a CSV of your rules and import; the Designer then lets you refine inputs, outputs, and version the table for deployment.
- Open the BRE Designer
OmniStudio app, then Business Rules Engine tab, then Decision Tables, then New. Give the table a name (PriceTier_ByQuantity, EligibilityCheck_ByState) and a brief description.
- Define input and output columns
On the Columns tab, add input columns one per condition (Quantity, State, CustomerType) and output columns one per result (PricePerUnit, DiscountPct, Notes). Choose the right data type for each: numbers, picklists, and dates have distinct comparison semantics.
- Add rule rows
On the Rules tab, add a row per rule. Fill in the input cells with values, ranges (10..50), or comparison operators (>= 100). Fill in the output cells with constants or formulas. Order matters in first-match mode: put the most specific rules at the top.
- Import from CSV if you have one
From the Designer, use Import to upload a CSV. Map the CSV columns to input and output column definitions. The Designer warns about type mismatches and unmapped columns before committing.
- Save and activate the version
Save the draft. When the rules look right, click Activate. The previous active version is automatically deactivated, and incoming requests start hitting the new rules.
- Invoke from an Expression Set
In an Expression Set, add a Decision Table Lookup step. Pick your table, map the request's fields to the input columns, and route the output columns to subsequent steps or to the response.
The engine returns the first row whose inputs match. Order-sensitive rules belong here. Default for most policy and eligibility tables.
The engine returns every matching row. Used for cumulative logic like layered fees or stacked discounts.
Numeric, picklist, text, date. Typed inputs are indexed for fast lookup; free-text inputs are not.
Constants, formulas, or references to other tables. Formula outputs let you compute derived values without a separate calculation step.
- First-match order matters. A general rule above a specific one shadows the specific one. Always test edge cases after reordering.
- Activation deactivates the prior version. There is no automatic A/B test; if you need staged rollout, route different request types to different table names.
- CSV imports overwrite existing rows. The Designer warns you, but a careless import can wipe your tuned table. Export first, then import the edited version.
- Decision Tables are part of OmniStudio. Orgs without OmniStudio licensing do not have access; check the licensing constraint before designing around them.