Rules Engine

Overview
The rules engine provides users of Linnworks.net a visual interface for applying bespoke business rules without the need for any prior programming knowledge; that is run automatically after an order is downloaded from a sales channel and saved within Linnworks.net.

By automating these processes, your business can work faster, reduce the chance of human error in the process and can have the added benefit of increased speed when processing orders.

The rules engine, whilst it will never totally replace the versatility that is available through scripting where complex bespoke rules are possible, it does mean that users without any programming knowledge can inject their own logic easily through a visual interface to assign shipping, folder allocation, locations and other similar tasks.

Table of Contents

The concept

The Rules Engine uses a visual interface to offer the ability to more intuitively automate some of the decision-making when Linnworks downloads an Order from the Selling Channel.
With this goal in mind, the approach taken allows users to build a flowchart that has a series of user-defined conditions based on input parameters; each rule has an action that is applied if the parameters meet the criteria defined by the rule.
It is not intended to be a replacement for the Scripting functionality but it offers additional tools to improve productivity and the value from their system use.

Rules can be edited after creation, based on changing business needs.

When do rules automatically run?

Rules run automatically when an order with the status of Paid is saved, provided this order isn't parked or locked. Below are some examples of when rules will automatically run and when they won't. Rules are executed in the order they are shown in the list.

Condition/Timing Will the rule run? Why? 
Downloading a Paid Order from a channel or Import Yes The order is new, has the status of Paid and has been saved as part of the sync
Saving/completing a new Direct order which has a status of Paid Yes The order is new, has the status of Paid
Changing an Order status from Unpaid to Paid as part of an update from a channel sync Yes The order is now Paid, so will run
Manually changing the status of an order from Unpaid to Paid Yes The order is now Paid, so will run
Either automatically or manually merging multiple paid orders Yes This is a new paid order, so will run and could, therefore, change Postal Service due to new order weight or cost
Downloading an UnPaid Order from a channel No The Order status is not Paid and will therefore not run
Will creating a new Rule update existing paid orders? No As rules run only when an order is saved, existing orders will not be affected
Order source is Amazon FBA No These orders are handled by Amazon so there is no benefit in running the rules engine on them

Can scripts affect rules?

The Rules Engine is run as part of the process of saving an order to Open Orders. Since scripts and macros are executed after an order is saved, changes made by Rules Engine may be overwritten by an order script or macro.
It should always be considered that the final state of an order may differ from the state it is in after the Rules Engine has affected it, as that state may trigger actions by a script.

How to