OdooWiki OCA HUB

Migrating from Odoo 16 to Odoo 17: which OCA modules are available

Of the 3,166 OCA modules confirmed in Odoo 16.0, 1,542 (49 %) are also confirmed in Odoo 17.0. The other 1,624 do not have a confirmed 17.0 version in the catalogue yet: if you use any of them, check its page before planning the migration. In addition, 452 modules are in Odoo 17.0 without being in 16.0.

3,166
in Odoo 16
1,542
also in Odoo 17
1,624
pending in Odoo 17
49 %
already migrated

See also

Odoo 16 modules not yet confirmed in Odoo 17

  • loyalty_criteria_multi_product

    Adds a "Multi Product" criteria option to loyalty program rules, letting you require several different products (each with its own minimum quantity) before a promotion or loyalty reward applies.

  • loyalty_initial_date_validity

    Adds a Start Date field to loyalty programs and promotions, so you can define when a promotion becomes valid. It also checks that the start date is not later than the end date.

  • loyalty_mass_mailing

    Adds a "Mailings" button on loyalty programs so you can create or open email campaigns linked to a promotion, pre-filled with the promotion's contact filter.

  • loyalty_multi_gift

    Adds a new "Multi Gift" reward type to loyalty programs, letting you offer several gift products with quantities in a single promotion instead of just one.

  • mail_activity_filter_internal_user

    When scheduling an activity in Odoo, the person picker now shows only internal users by default, so you no longer have to scroll past portal or shared users. A checkbox on the activity popup lets you switch the filter off when you really need to assign an…

  • mail_activity_meeting_reminder

    Lets you set default reminders on meeting-type activities so that when a user schedules a meeting from an activity, those reminders are pre-filled automatically.

  • Mail Activity PartnerOdoo 12, 13, 14, 15, 16
    mail_activity_partner

    Shows the related customer/contact and its commercial entity directly on activities, so you can see and search activities by partner without opening the linked record.

  • mail_activity_plan

    Create reusable activity plans for any document type and launch them from records to schedule several activities at once.

  • mail_activity_unlink_log

    When a scheduled activity is deleted, Odoo automatically posts a message on the related record saying which activity was removed, who it was assigned to and its original note.

  • Mail cleanupOdoo 12, 14, 16, 18
    mail_cleanup

    Adds cleanup options to incoming mail servers so old emails are automatically marked as read, moved to a folder, or deleted before each fetch.

  • mail_discuss_security

    This module adds a new security group called 'See Discuss Menu' that controls who can see the Discuss menu and the messaging icon in the systray. By default, users are not members of this group, so they won't see these features unless explicitly added.

  • Drag & drop emails to OdooOdoo 12, 13, 14, 15, 16, 18
    mail_drop_target

    Drag email files (.eml or .msg) from your desktop directly onto an Odoo record or Discuss channel to attach them as messages. Followers can optionally be kept from being notified about the dropped email.

  • mail_edit

    Lets users edit the text of existing chatter messages and move them to a different record, such as another contact or document, directly from the message menu.

  • mail_environment_google_gmail

    Lets administrators store the Google Gmail authorization code and refresh token for outgoing mail servers in server environment configuration files instead of typing them in Odoo.

  • Mail Telegram GatewayOdoo 16, 18, 19
    mail_gateway_telegram

    Connect Odoo to Telegram so a team can chat with Telegram users from Odoo and reply as a bot. Messages, photos, files, stickers and locations are exchanged automatically between Telegram chats and Odoo conversations.

  • mail_improved_tracking_value

    Adds a dedicated screen to review the history of field changes recorded by Odoo's chatter, with readable old and new values, and extends change tracking to many-to-many and one-to-many fields.

  • Mail Inline CSSOdoo 12, 13, 14, 16, 18
    mail_inline_css

    This module automatically converts CSS styles written in a style block inside email templates into inline styles, so emails look correct in most email clients. It works on templates stored directly in the database.

  • Deferred Message PostingOdoo 15, 16, 18, 19
    mail_post_defer

    This module makes outgoing emails and notifications wait about 30 seconds in the queue before being sent, so Odoo stays fast and you can still cancel or edit a message you just posted.

  • Mail Restrict Send ButtonOdoo 14, 16, 18, 19
    mail_restrict_send_button

    Hides the Send Message button in the chatter area unless the user belongs to the new "Allowed" group. This lets administrators control who can post messages from the chatter.

  • mail_template_attachment_i18n

    Lets you attach different files to an email template depending on the language, so customers receive documents in their own language.

  • mail_template_multi_attachment

    Lets you attach several different reports to a single email template, so one email can carry multiple PDF or HTML documents generated automatically for each recipient.

  • maintenance_equipment_certification

    Lets you record certificates for maintenance equipment, with number, dates, notes and an attached file, and automatically emails the equipment's technician or owner when a certificate is close to its renewal date.

  • Maintenance Equipment ImageOdoo 12, 14, 15, 16
    maintenance_equipment_image

    Adds a picture to each maintenance equipment record, shown as an avatar on the equipment form and as a thumbnail on the equipment kanban cards.

  • Maintenance Equipment TagsOdoo 12, 13, 14, 15, 16, 18, 19
    maintenance_equipment_tags

    Lets you label maintenance equipment with coloured category tags, so you can group and find machines by brand, type or any category you define.

  • Maintenance Plan ActivityOdoo 12, 13, 14, 15, 16, 18, 19
    maintenance_plan_activity

    Lets you define scheduled activities on a maintenance plan; when the plan generates maintenance requests, matching activities are automatically created on each request with a due date counted back from the request's scheduled date.

  • Maintenance PurchaseOdoo 14, 16, 18
    maintenance_purchase

    Automatically creates maintenance equipment records when a purchase order is approved, based on the quantity of products ordered. Users can link products to an equipment category and track the equipment created from each purchase order.

  • Maintenance RemoteOdoo 12, 13, 14, 15, 16
    maintenance_remote

    Adds a Remote field to maintenance requests so you can record which remote device is linked to the issue. The field is filled automatically from the current remote and is visible to equipment managers.

  • Maintenance Request RepairOdoo 12, 14, 15, 16, 18, 19
    maintenance_request_repair

    Links maintenance requests to repair orders so you can see, from a repair order, how many maintenance requests are attached and jump straight to them, and from a maintenance request, which repair order it belongs to.

  • Maintenance Request SequenceOdoo 12, 13, 14, 15, 16, 18, 19
    maintenance_request_sequence

    Adds an automatic reference number to maintenance requests, generated from a sequence defined per maintenance team (or a default one), so each request gets a unique code like MR00001.

  • Maintenance Request Stage transitionOdoo 12, 13, 14, 15, 16, 18
    maintenance_request_stage_transition

    Lets you define which maintenance stages can follow each other, and shows a button in the maintenance request header for each allowed next stage so users move requests forward with one click.

  • Maintenance SecurityOdoo 15, 16, 18
    maintenance_security

    Restricts the Maintenance menus to users who belong to the Maintenance/Equipment Manager group, and stops assignment emails from being sent to users without that permission.

  • Maintenance Team HierarchyOdoo 12, 13, 14, 15, 16, 18
    maintenance_team_hierarchy

    Lets you organise maintenance teams into parent/child hierarchies, so a parent team automatically shows the requests of all its sub-teams.

  • MassOdoo 14, 16, 18
    mass

    This module is an empty placeholder kept only so existing databases can still install it. It adds no screens, no menus and no business features; it is meant to be uninstalled.

  • mass_mailing_contact_active

    Adds an active/archive flag to mailing contacts and their list subscriptions, so you can deactivate a contact and automatically deactivate all of their subscriptions at once.

  • mass_mailing_disable_tracking

    Adds two settings in Odoo Email Marketing to turn off open tracking and link click tracking for mass mailing messages, so recipients are not tracked.

  • mass_mailing_list_prune_blacklisted

    This module adds a button to Mass Mailing forms that lets you remove blacklisted contacts from the selected mailing lists. It also adds a wizard to confirm the removal.

  • mass_mailing_multi_company

    Adds a Company field to mailing lists, contacts and mass mailings, and filters recipients so each mailing only reaches contacts belonging to the same company (or shared contacts with no company).

  • mass_mailing_unique

    Prevents duplicate mailing lists and mailing contacts by enforcing unique list names and unique contact email addresses, and blocks installation if duplicates already exist.

  • Prorate membership feeOdoo 12, 14, 15, 16, 18
    membership_prorate

    Adds a "Prorate" checkbox on membership products so that when a membership is invoiced mid-period, the fee is automatically reduced to cover only the remaining time of the membership period.

  • membership_prorate_variable_period

    Automatically prorates membership fees when a membership product uses a variable period (weeks, months or years). Daily periods cannot be prorated and raise an error.

  • Membership withdrawalOdoo 12, 13, 14, 16, 18
    membership_withdrawal

    Record why and when a member asked to leave, and see the latest withdrawal reason and date directly on the member's contact card.

  • mgmtsystem_action_hazard

    Link corrective actions to the hazards they address, and see the related actions directly from each hazard record.

  • Management System - ClaimOdoo 13, 14, 15, 16, 18
    mgmtsystem_claim

    Track customer and vendor claims inside your management system, with stages, deadlines, automatic email reminders and a claim counter on customer records.

  • Environment Management SystemOdoo 13, 14, 15, 16, 18, 19
    mgmtsystem_environment

    Adds an "Environment" management system to Odoo, pre-linked to the Environment Manual template, so you can run your environmental management system (EMS) alongside audits, reviews and environmental aspects.

  • mgmtsystem_evaluation

    Create evaluation templates and run evaluations on records such as contacts, tracking results, feedback and automatic follow-up dates. Evaluations appear as a button on the contact form and in a dedicated Evaluation menu.

  • mgmtsystem_evaluation_hr

    Lets you run management-system evaluations on employees. Employee records get an Evaluations button showing how many evaluations are linked to them.

  • mgmtsystem_hazard_maintenance_equipment

    Lets you link maintenance equipment to hazards, so each hazard record can list the machines or equipment it relates to.

  • mgmtsystem_nonconformity_maintenance

    Links non-conformities with maintenance requests so you can see which maintenance job is related to a quality issue, and count how many non-conformities a maintenance request has.

  • mgmtsystem_nonconformity_project

    Lets you record a management system action as either a normal action or a project, and shows the project name instead of the action name in lists.

  • microsoft_calendar_filter

    Adds two settings to control which calendar events are synchronized between Odoo and Microsoft Outlook: skip private Outlook events and limit which Odoo events are sent to Outlook using a filter.

  • mis_builder_budget_product

    Adds a Product field to MIS budget lines by account, so budgets can be split per product and filtered by product in MIS reports.

  • mis_builder_total_committed_purchase

    Adds a read-only data source that lists committed purchase amounts from confirmed purchase orders, so MIS Builder reports can include purchase commitments alongside actual accounting figures.

  • misc_settings

    Adds a new "Miscellaneous" block to the Odoo Settings page, giving developers and integrators a dedicated place to group their own custom settings.

  • mrp_account_analytic

    Automatically creates analytic items for manufacturing orders when raw materials are consumed or work center time is logged, so you can track costs per manufacturing order.

  • MRP BoM ImageOdoo 16, 18, 19
    mrp_bom_image

    Shows the product image on Bills of Materials, both on the BoM form and in the BoM kanban cards, so users can recognise a BoM by its product picture.

  • mrp_bom_line_formula_quantity

    Add a formula field to Bill of Materials lines so the component quantity on a manufacturing order is calculated automatically instead of being fixed.

  • mrp_bom_line_net_qty

    Adds net quantity and loss percentage to bill of materials lines, so you can plan for material loss during manufacturing and keep gross and net quantities in sync.

  • MRP BOM LocationOdoo 12, 13, 14, 15, 16, 18
    mrp_bom_location

    Adds a Location field to Bills of Materials and their components, so you can record and see where components should be picked from. The location also appears in the BOM Structure report and overview.

  • Notes in Bill of MaterialsOdoo 12, 13, 14, 16, 18, 19
    mrp_bom_note

    Adds a rich-text Notes tab to Bills of Materials and prints those notes on the Manufacturing Order report when the order is linked to a BoM.

  • mrp_bom_order_by_product_name

    Changes the default sorting of Bills of Materials (BoM) in Manufacturing so they are listed by product name, then variant, then reference, and hides the sequence column.

Data imported from GitHub: “confirmed” means branch, module directory and installable manifest checked on the review date. A module that is not confirmed in a version may still exist: it may be in another repository or pending the next review. Active support and OCA certification are not assessed.