How to Add Chatter to an Existing Model in Odoo 18

How to Add Chatter to an Existing Model in Odoo 18

📌 Introduction

In any business—big or small—clear communication and task tracking are essential. Odoo, being the powerful open-source ERP that it is, comes packed with a super useful feature called Chatter.

Chatter lets your team leave notes, track activities, and discuss tasks directly within the record itself—no more chasing conversations across emails or external tools. Everything stays where it belongs: right inside the record.

In this post, we’ll walk through the steps needed to add Chatter functionality to an existing model in Odoo 18, both on the Python (backend) and XML (frontend) sides.

💡 Why Use Chatter?

Here’s why you should consider adding Chatter to your models:

  • In-Record Messaging: Team members can chat about specific records—no Slack or email needed.
  • Field Change Tracking: See what was changed, when, and by whom.
  • Activity Scheduling: Set reminders, assign tasks, or schedule meetings.
  • Centralized Communication: All updates and notes are stored with the record, so context is never lost.
  • Backend: Modify the Model

To add Chatter to any existing model, you need to inherit the model and include the following two mixins:

  • mail.thread – enables messaging and tracking
  • mail.activity.mixin – enables activity management

Here’s a quick example using the res.partner.category model:

Python

from odoo import fields, models

class PartnerCategory(models.Model):

    _name = ‘res.partner.category’

    _inherit = [‘res.partner.category’, ‘mail.thread’, ‘mail.activity.mixin’]

    _description = ‘Partner Category with Chatter’

That’s it! With those two mixins, your model now supports chatter and activity scheduling.

🖼️ Frontend: Add Chatter to the View

Next, update the form view to actually display the Chatter section. You’ll need to inherit the existing XML view and add a <chatter/> tag in the right place.

Here’s how you do it:

xml

<?xml version=”1.0″ encoding=”utf-8″?>

<odoo>

    <record id=”view_partner_category_form_inherit” model=”ir.ui.view”>

        <field name=”name”>partner.category.form.inherit</field>

        <field name=”model”>res.partner.category</field>

        <field name=”inherit_id” ref=”base.view_partner_category_form”/>

        <field name=”arch” type=”xml”>

            <xpath expr=”//form/sheet” position=”after”>

                <chatter/>

            </xpath>

        </field>

    </record>

</odoo>

 

This will add the Chatter section right after the main form’s content.

🚀 Final Steps: Test It Out

  • Once you’ve updated the model and view:

    1. Upgrade your custom module.
    2. Make sure the Mail module is installed (Chatter won’t work without it).
    3. Go to Contacts > Configuration > Tags and open any record.
    4. You should see the Chatter section at the bottom—ready to take notes, log activities, or post messages.

    If it’s not showing up, double-check that:

    • Your inheritance is correct.
    • The module has been updated successfully.
    • Dependencies like mail are included in your manifest.

✅ Conclusion

Adding Chatter to an existing model in Odoo 18 is a simple way to boost team collaboration and keep everyone aligned. Whether you’re tracking project updates, managing customer interactions, or following up on tasks—Chatter keeps the conversation where the work happens.

It’s one of those features that seems small but delivers big when it comes to productivity and clarity.


Struggling with scattered team communication? 💬 Get a Odoo consultation today—optimize your processes in minutes!