Automate your warehouse with TypeScript

Lagersystem's Rule Engine gives you full control over business rules in a real programming language. No limitations, no waiting on us. You build the rules yourself.

What is the Rule Engine?

A full programming language
— not a rule builder with dropdowns

Most WMS systems offer simple if/then rules with dropdowns. Lagersystem’s Rule Engine uses TypeScript — a full programming language. That means:

– Complex logic with loops, conditionals and functions
– Access to all order data, product data and customer data
– No limits on what you can automate
– Version control and testing

Example
				
					// Choose carrier based on weight and destination
if (order.totalWeight > 30 && order.country === 'DE') {
  order.cargoMethod = 'DSV';
} else if (order.deliveryType === 'pakkeshop') {
  order.cargoMethod = 'GLS_PARCELSHOP';
} else {
  order.cargoMethod = 'POSTNORD';
}

				
			
8 rule types

8 ways to automate your warehouse flow

1. Order modification

Automatically change order data on import

When an order is imported from your webshop, the Rule Engine can automatically change data. Add fields, change values, enrich with extra information.

Examples:

  • Add an internal note based on customer segment
  • Convert currency or value fields
  • Set priority based on order value
  • Add special instructions per country

2. Automatic carrier selection

Select carrier based on rules

The most commonly used rule type. Automatic selection of carrier and shipping type based on weight, destination, order value, customer type or any other order data.

Examples:

  • Orders over 20 kg to DE → DSV
  • Parcel shop orders → GLS Parcelshop
  • Express orders → DHL Express
  • Orders from VIP customers → Priority shipping

3. Subsite assignment

Route orders to the correct department automatically

Perfect for 3PL: automatic assignment of orders to the correct subsite based on webshop source, customer or product type.

Examples:

  • Orders from Shopify store A → Subsite A
  • Orders with product category X → Subsite B
  • API orders from customer C → Subsite C

4. Label/tag assignment

Auto-tagging of orders

Automatically assign labels/tags to orders. Used to flag orders that require special handling.

Examples:

  • Orders with fragile items → “Handle with care” label
  • Gift shipments → “Gift wrapping” label
  • Complaint orders → “Priority” label

5. Automatic print selection

Choose printer and template per order

Automatic selection of which printer and shipping label template is used, based on order data.

Examples:

  • International shipment → A4 printer (customs documents)
  • Standard parcel → Zebra label printer
  • Pallet → Large shipping label

6. Return carrier selection

Automatic selection of return label type

Automatically select the correct carrier and type for the return label based on the customer’s country and order data.

7. Product import filtering

Filter products during import

Automatically determine which products are imported from the webshop or ERP system. Filter out unwanted products.

Examples:

  • Only import active products
  • Skip digital products
  • Filter out products without a barcode

8. Product import modification

Change product data during import

Automatically modify product data during import from external systems.

Examples:

  • Add a prefix to item numbers
  • Convert categories
  • Set default values for missing fields

Tools

Transaction log — see exactly what happened

Every rule execution is logged with full traceability. See exactly which rules ran on an order, what they changed, and whether they succeeded.

– Timestamp for every rule execution
– Input and output data
– Error messages on failure
– Filterable by order, rule and time period

Test environment

Test before you go live

Test your rules with real order data before activating them. See the result without affecting production data.

– Test with existing orders
– See expected output
– Compare before/after
– Iterate quickly

Developer-friendly

Know TypeScript? Then you can automate your warehouse.

The Rule Engine is designed for developers and technically skilled users. Have a developer on the team — or are you one yourself? Then you have full control.

– TypeScript (JavaScript-compatible)
– Standard IDE support
– Version control possible via API
– No waiting on the Lagersystem team

Not a developer?

We'll help you get started

Don’t have a developer? Our team can help set up rules that suit your business. Contact us for a chat.

Fulfilment automation

The complete automated flow

From order import to invoice — with no manual steps

The Rule Engine is part of a larger automation flow that runs on every order:

1. Order is automatically imported from webshop/ERP
2. Rule Engine runs: carrier selection, subsite assignment, label assignment, order modification
3. Pick and pack with handheld terminal
4. Shipping label is generated → payment is automatically captured** on the gateway
5. Tracking is sent to the customer via email/SMS
6. Order is automatically closed in the webshop
7. Invoice is automatically created and booked in the ERP

Background jobs that run automatically

In addition to the Rule Engine, Lagersystem runs a number of background jobs:

Order import

Automatic import of orders from 9+ webshops and 8+ ERP systems with configurable intervals

Minimum stock report

Daily email with a CSV of items below minimum stock level

Pickup reminder SMS

Automatic SMS when a parcel has been waiting at a parcel shop for a customisable number of days

Photo archiving

Automatic archiving of photo documentation to S3

Log cleanup

Automatic deletion of old log entries

GDPR cleanup

Automatic anonymisation of personal data after a configurable period

Exchange rates

Automatic updating of exchange rates

Product synchronisation

Automatic synchronisation of product data from external systems

Want to see the Rule Engine in action?

Book a demo and see how TypeScript-based rules automate your warehouse workflow.