Vertical Lift

Vertical Lift

Available versions
Technical name
Secure dependencies
Vertical Lift

Vertical Lift

Alpha License: AGPL-3 OCA/stock-logistics-warehouse Translate me on Weblate Try me on Runboat

Add configuration and dedicated screens to work with Vertical Lift systems (such as Kardex Remstar, Modula, …). Drivers for controlling the lifts physically must be added by additional addons.


This is an alpha version, the data model and design can change at any time without warning. Only for development or testing purpose, do not use in production. More details on development status

Table of contents



In Inventory Settings, you must have:

  • Storage Locations
  • Multi-Warehouses
  • Multi-Step Routes


Additional configuration parameters are added in Locations:

  • Sub-locations of a location with the “Is a Vertical Lift View Location” activated are considered as “Shuttles”. A shuttle is a vertical lift shelf.
  • Sub-locations of shuttles are considered as “Trays”, which is a tier of a shuttle. When a tray is created, a tray type must be selected. When saved, the tray location will automatically create as many sub-locations - called “Cells” - as the tray type contains.
  • The tray type of a tray can be changed as long as none of its cell contains products. When changed, it archives the cells and creates new ones as configured on the new tray type.

Tray types

Tray types can be configured in the Inventory settings. A tray type defines how much cells a tray can hold. It is a square or rectangle matrix of n cols * m rows.

Vertical Lift Shuttles

The Shuttles are the Vertical Lift Trays. One Shuttle entity has to be created in Odoo for each physical shuttle. Depending of the subsidiary addons installed (eg. Kardex), different options may be required (host address, …). The base addon only includes shuttles of kind “simulation” which will not send orders to the hardware.

Put-away configuration

If you want to use put-away in the vertical lift, the Receipts must have the vertical lift view as destination. E.g. create put-away rules on the products so when they arrive in WH/Stock, they are stored in WH/Stock/Vertical Lift. On the put-away screen, when scanning the tray type to store, the destination will be updated with an available cell of the same tray type in the current shuttle.


The operations allowed in the screen for the vertical lift (save, release, skip) can be triggered using a barcode. For this, print the barcodes contained in the folder ‘images’.


The barcodes used are of the type Code 128 (with the code set B).

Known issues / Roadmap

  • Complete screen workflows (currently enough for a demo, not for production)
  • Inventory: find a way to have a nice autofocus for quantity, still compatible with barcode scanner (Odoo disables the autofocus when using barcode, which makes sense)
  • Put-away: handle packages
  • Handle “multi-shuttle” put-away
  • Create glue module for product_expiry
  • Challenge the save + release buttons and workflow

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.



  • Camptocamp



Other credits

The development of this module has been financially supported by:

  • Camptocamp


This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

This module is part of the OCA/stock-logistics-warehouse project on GitHub.

You are welcome to contribute. To learn how please visit

0.0 / 5.0
based on 0 ratings

Python dependencies

Package Version Secured
Werkzeug 0.16.1
freezegun 0.3.15
mock 3.0.5

Available languages

Language % translated
Italian / Italiano