Order

Configuration

Learn how to configure order types, workflows, and return charges in Omnium. This guide covers order statuses, workflow steps, and key properties to customize order processing.

Order types

The order workflow is built around order types. An order type will be configured with order statuses, each with a set of workflow steps.

An order type could, for instance, be:

  • Online
  • Click And Collect
  • POS Order
  • Subscription order
  • Edge case order

The purpose of separating orders into different order types is to enable multiple workflows. An online order might have three statuses (New, In progress, Sent). Click and Collect orders could have four statuses (New, In progress, Ready for pickup, Picked up). A POS order might only have one status (Completed). There are no limits in Omnium regarding the number of order types, number of statuses, and number of workflow steps.

Order type model

PropertyTypeDescription
Name *stringOrder type name (E.g. Online, ClickAndCollect, Pos, etc)
OrderStatuses *List<OrderStatus>List of available order statuses
EnableEditboolIs order editable in GUI
EnableCreateFromCartboolTrue if it is possible to create order type from cart
DisableWorkflowboolTemporarily disable workflow for order type
DefaultOrderTypeboolTrue if the order is the default. Autofilter by default types in the order list.
DefaultExternalIdProviderstringExternal ID provider (Added to list of external IDs)

Order statuses

In the order processing, the order will go through the configured order statuses. Each status will trigger a workflow of each workflow step for the order status. The workflow execution will result in a list of execution results. Read more about order workflow.

Order status model

PropertyTypeDescription
Name *stringOrder status name
Order *intStatus sort order index
WorkflowSteps *List<WorkflowStep>Workflow steps to run
DisplayNamestringAlternative order status name
IsMainFilterboolIs main filter
ConditionstringCondition for showing order status (if more statuses have the same sort order)
IsCanceledStatusboolTrue if orders with this status are canceled
IsDeliveredStatusboolTrue if orders with this status are delivered to the customer
IsInProgressStatusboolTrue if orders with this status are in progress
IsPickedboolTrue if orders with this status are picked. Used by picklist to set the correct status when the order is ready to ship/pick up
ShipmentStatusUpdatestringIf set, the shipments on order will get this status
AvailableStepsList<string>List of available next order statuses
TranslateKeystringTranslation key for order status
PropertiesList<PropertyItem>Custom properties

Workflow steps

PropertyTypeDescription
Name *stringWorkflow step name
Connector *stringConnector to use for workflow step
ActiveboolTrue if step should be run
RunAfterOrderIsSavedboolTrue if step should run after order is saved
ContinueOnErrorboolIf true, the workflow will continue if the current step fails to execute
TranslateKeystringTranslation key for workflow step name
IsInvisibleboolTrue if result should not be shown in GUI
EnabledForMarketsList<string>List of markets where this workflow step should be enabled (all markets available if empty)
DisabledForMarketsList<string>List of market IDs where the workflow step should be disabled (overrides enabled property)

Samples

Simple order type: PoS-order

In the example below, a point of sale order can be added from physical stores. The status is completed upon registration, and no action is taken by Omnium.

"OrderTypes": [
  {
    "Name": "Pos",
    "EnableEdit": false,
    "EnableCreateFromCart": false,
    "OrderStatuses": [
      {
        "Name": "Completed",
        "DisplayName": "Completed",
        "TranslateKey": "PickedUp",
        "IsMainFilter": true,
        "Order": 1,
        "WorkflowSteps": []
      }
    ]
  }
]

Online order with workflow steps

In the example below, an order type with the name "Online" is defined. It has two order statuses, "New" and "Completed":

"OrderTypes": [
  {
    "Name": "Online",
    "EnableEdit": true,
    "EnableCreateFromCart": true,
    "OrderStatuses": [
      {
        "Name": "New",
        "DisplayName": "New",
        "IsMainFilter": true,
        "Order": 1,
        "WorkflowSteps": [
          {
            "Name": "Notification",
            "Active": true,
            "TranslateKey": "WorkflowStep_Notification"
          },
          {
            "Name": "GetOrCreateCustomerFromOrder",
            "Active": true
          }
        ]
      },
      {
        "Name": "Completed",
        "DisplayName": "Completed",
        "TranslateKey": "PickedUp",
        "IsMainFilter": true,
        "Order": 4,
        "Condition": "Pickup",
        "IsCanceledStatus": false,
        "WorkflowSteps": []
      }
    ]
  }
]

Return charges

Return charges are default values of what to charge the customer when creating a return.

Return charges sample

{
  "ReturnCost": 99,
  "NotPickedUpCost": 150
}

On this page