Workflow Steps
Complete reference for all workflow steps (OrderActions) in Omnium OMS - the building blocks of order processing workflows.
Workflow steps are the core building blocks of order processing in Omnium. Each step performs a specific action on an order or shipment, such as allocating inventory, capturing payments, sending notifications, or exporting to external systems.
How Workflow Steps Work
Workflow steps are configured in Workflows and execute automatically as orders move through different statuses. Each step:
- Receives the current Order, optional Shipment, and WorkflowStep configuration
- Performs its action and returns a result (Success, Warning, or Error)
- Can optionally trigger a status change or cancel the workflow on failure
Configuration
Each workflow step can be configured with:
| Setting | Description |
|---|---|
| Properties | Key-value pairs that control step behavior |
| Market restrictions | Limit execution to specific markets |
| Store/Warehouse restrictions | Limit execution to specific locations |
| Shipment options | Filter by shipping method |
| Tags | Filter by order tags |
| StopOnError | Whether to halt the workflow if this step fails |
Step Categories
Workflow steps are organized into functional categories:
| Category | Description | Steps |
|---|---|---|
| Allocation | Warehouse assignment, order splitting, reallocation | 26 |
| Payment | Payment capture, authorization, refunds, invoicing | 18 |
| Inventory | Stock reservation, reduction, ATP calculation | 14 |
| Shipments | Shipment creation, label printing, status updates | 14 |
| Enrichment | Order data enrichment, tagging, barcode generation | 22 |
| Validation | Order validation, fraud checks, payment verification | 7 |
| Export | ERP export, webhooks, external system integration | 5 |
| Notifications | Email and SMS notifications | 1 |
| Customers | Customer creation, loyalty points | 6 |
| Workflow | Status changes, workflow control | 5 |
| Analytics | Analytics indexing | 1 |
| Subscriptions | Subscription order creation | 2 |
| Purchase Orders | PO creation from orders | 3 |
Identifying Workflow Steps
Each workflow step has a unique Key identifier used in configuration. This key is shown in the documentation for each step and matches the value in FactoryContants.OrderActions.
Example: The "Allocate to Warehouse" step has key AllocateToWarehouse.
Common Patterns
Test Mode
Most workflow steps support test mode (context.IsTest = true), which returns a simulated result without performing actual operations. This is useful for validating workflow configuration.
Market/Store Restrictions
Steps can check workflowStep.IsAvailableForMarket(order.MarketId) to skip execution for orders from non-configured markets.
Property Configuration
Steps read configuration from workflow step properties:
Result Handling
| Status | Meaning |
|---|---|
| Success | Step completed successfully |
| Warning | Step completed with a non-critical issue |
| Error | Step failed - may cancel workflow if StopOnError is set |
When a step sets CancelWorkflow = true, remaining steps in the workflow are skipped.
When a step sets TriggerNewStatus, the order transitions to that status after the workflow completes.
