Odoo is a comprehensive ERP platform that offers multiple ways to organize and manage business data. Among these, the Kanban view stands out as one of the most intuitive and visually engaging options. By displaying records in a card-based layout, it simplifies workflow tracking and enhances project management efficiency. In this blog, we will guide you through the process of creating a Kanban view in Odoo 19.
What is a Kanban View?
A Kanban view is a visual management tool used to track tasks and workflows in a structured and easy-to-understand format. It organizes work into columns representing different stages of a process, while individual cards represent tasks or records that move across these stages.
This method helps teams monitor progress, limit work in progress, and improve overall efficiency.
It is commonly used for workflows such as:
- Sales pipeline management
- Project task tracking
- Recruitment stages
- Manufacturing orders
Define Your Model
In Odoo, everything begins with a model, which represents a specific business object or entity. For this example, we will create a Kanban view for a model called test.model. This model will include basic fields such as name, description, and state, which store and manage the relevant data.
from odoo import models, fields
class TestModel(models.Model):
_name = 'test.model'
_description = 'Test Model'
name = fields.Char(string='Name', required=True)
description = fields.Text(string='Description')
date_order = fields.Date(string='Date')
state = fields.Selection([
('draft', 'Draft'),
('in_progress', 'In Progress'),
('done', 'Done'),
], string='State', default='draft')
activity_state = fields.Selection([
('overdue', 'Overdue'),
('today', 'Today'),
('planned', 'Planned')], string='Activity State',)
Create the Kanban View
The next step is to define the Kanban view. Inside your module’s views directory, create an XML file (for example, test_model_views.xml) where the Kanban layout will be configured.
This file defines how records are displayed as cards in the interface and how they are organized into different stages or groups. It plays a key role in shaping the visual structure and user experience of the Kanban view.
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="test_model_view_kanban" model="ir.ui.view">
<field name="name">test.model.view.kanban</field>
<field name="model">test.model</field>
<field name="arch" type="xml">
<kanban class="o_kanban_mobile" sample="1" quick_create="false">
<progressbar field="activity_state"
colors='{"planned": "success", "today": "warning", "overdue": "danger"}'/>
<templates>
<t t-name="card">
<div class="d-flex mb-2" style="justify-content: space-between;">
<field name="name" class="fw-bolder fs-5" />
<field name="date_order" class="ms-1 text-muted fs-5"/>
</div>
<footer>
<div class="d-flex text-muted">
<field name="description"/>
</div>
<div>
<field name="state"
widget="label_selection"
options="{'classes': {'draft': 'info', 'done': 'default', 'in_progress': 'success'}}" class="ms-auto"/>
</div>
</footer>
</t>
</templates>
</kanban>
</field>
</record>
<!--Add an action to open the Kanban view-->
<record id="test_model_action" model="ir.actions.act_window">
<field name="name">Test Model</field>
<field name="res_model">test.model</field>
<field name="view_mode">kanban,form</field>
<field name="view_id"
ref="test_model_view_kanban"/>
</record>
<menuitem id="menu_test_model"
name="Products"
action="test_model_action"
sequence="1"/>
</odoo>
Final Step: Kanban View Example
Now that we’ve covered the fundamentals of creating a simple Kanban view in Odoo 19, let’s look at a basic code snippet to implement it. Below is an example of how the Kanban view definition is structured:

Creating a Kanban view in Odoo 19 is a simple yet powerful way to improve team productivity and streamline workflow management. With just a few configuration steps, you can customize the view to align with your business needs, ensuring better organization and smoother operations.
Whether you are managing projects, tracking sales, or handling other business processes, the Kanban view provides a clear visual structure that enhances both clarity and efficiency within your Odoo environment.