OdooWiki OCA HUB

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

Of the 2,091 OCA modules confirmed in Odoo 15.0, 1,466 (70 %) are also confirmed in Odoo 16.0. The other 625 do not have a confirmed 16.0 version in the catalogue yet: if you use any of them, check its page before planning the migration. In addition, 1,700 modules are in Odoo 16.0 without being in 15.0.

2,091
in Odoo 15
1,466
also in Odoo 16
625
pending in Odoo 16
70 %
already migrated

See also

Odoo 15 modules not yet confirmed in Odoo 16

  • partner_pricelist_tracking

    Adds change tracking to the pricelist field on contacts, so every change to a partner's pricelist is logged in the chatter with who changed it and when.

  • Partner PriorityOdoo 12, 13, 14, 15, 17, 18, 19
    partner_priority

    Lets you assign a priority level (Low, Normal, Elevated, Critical) to any contact, and group or filter contacts by that priority.

  • partner_readonly_security

    Adds a new "Partner edition" permission. Users without it can still see contacts but cannot create, edit or delete them.

  • partner_restrict_payment_acquirer

    Restrict which online payment providers a specific customer can use. On the customer form you pick the allowed providers, and only those appear for that customer during online payment.

  • partner_supplierinfo

    Adds a "Supplier Information" tab on the contact form where you can store, for each supplier, the reference that supplier uses for that contact. A computed field shows the right reference depending on the supplier in context.

  • passport_expiration

    Adds a passport expiration date field to the employee form in Odoo, so HR users can record when an employee's passport expires.

  • portal_partner_data_no_edit

    Lets you block a customer's portal user from editing their own contact details. When enabled on a contact, the portal 'My Account' page becomes read-only and shows a 'View' link instead of 'Edit'.

  • portal_sale_order_website_filter

    Portal customers only see their own quotations and sale orders that belong to the website they are currently browsing, or that are not linked to any website. This prevents orders from other websites appearing in the customer portal.

  • portal_user_login_email_change

    When a portal user changes their own contact email address, this module also updates the login email of their linked Odoo user, so they can keep signing in with the new address.

  • pos_event_sale

    Sell event tickets directly from the Point of Sale. Cashiers can pick an event, choose a ticket, and the system creates the attendee registration automatically when the order is paid.

  • pos_event_sale_registration_qr_code

    Automatically adds a QR code to event registration receipts printed from the Point of Sale, so customers get a scannable code for their registration instead of only a barcode.

  • pos_event_sale_session

    Sell event sessions directly from the Point of Sale. Cashiers pick a specific session date and time, see its remaining seats, and the session is stored on the order line, the receipt and the POS reporting.

  • pos_fixed_discount

    Adds a "Discount (Amount)" button to the Point of Sale screen so cashiers can apply a fixed money discount to an order instead of a percentage.

  • pos_hide_cost_price_and_margin

    This module adds settings to the Point of Sale that let you hide product cost and margin information from everyone, including managers, in the product info popup.

  • POS - Product TemplateOdoo 12, 14, 15, 17
    pos_product_template

    In the Point of Sale screen, products that have several variants are shown once, as a single card with the template name and the number of variants, instead of one card per variant. Tapping that card opens a popup where the cashier picks the attributes and…

  • pos_sale_pos_event_sale

    This glue module makes event tickets sold through a Sales Order work correctly when that order is loaded into the Point of Sale. It links the event registrations created by the sale to the POS order lines and shows the right event and ticket information in…

  • pos_sale_pos_event_sale_session

    This glue module makes event sessions appear correctly when a Point of Sale order is created from an existing Sales Order that contains event tickets. It ensures the chosen session is carried over and loaded in the POS.

  • pos_supplierinfo_barcode

    In the Point of Sale, cashiers can scan a supplier's barcode on a product and Odoo will find and add the matching product to the order, in addition to the product's own barcode.

  • Point of Sale - Restrict usersOdoo 12, 13, 14, 15, 17, 18
    pos_user_restriction

    Lets you assign specific users to specific points of sale so those users only see and work with their own POS, sessions, orders and reports.

  • Purchase Analytic (MTO)Odoo 12, 13, 14, 15
    procurement_mto_analytic

    When a sale order with an analytic account triggers a purchase order (make-to-order), the analytic account is automatically copied onto the purchase order line, so costs are tracked to the right project.

  • procurement_purchase_sale_no_grouping

    When a sales order line for a service product is confirmed, this module makes sure that a separate purchase order is created for each line instead of grouping them, if the product's category is set to 'No order grouping'.

  • product_abc_classification_sale

    Adds a seasonality classification to products and lets ABC classification profiles use sales data as their source, so products can be graded by delivered sales value.

  • product_category_inter_company

    Lets you assign a company to product categories so each company sees only its own categories (plus shared ones), and prevents mixing categories from different companies.

  • product_category_multi_company

    Lets you share product categories across several companies and automatically blocks inconsistent company settings between categories, their parents/children and the products inside them.

  • Product Category Product LinkOdoo 14, 15, 17, 18, 19
    product_category_product_link

    Adds a direct link between product categories and the products assigned to them, so you can see all products of a category from the category itself.

  • Product Category TaxesOdoo 13, 14, 15, 18
    product_category_tax

    Lets you set default customer and vendor taxes on a product category and push them to all products in that category. Products can also inherit these taxes automatically when created or when their category changes.

  • Product Custom InfoOdoo 12, 13, 14, 15
    product_custom_info

    Lets you attach custom properties (a chosen template plus its values) to products and product variants, and shows the template's properties directly on the variant form.

  • product_drained_weight

    Adds a 'Drained Weight' field to products, so you can record the weight of a product without its fluid. The drained weight can never be higher than the net weight.

  • Product Form Purchase LinkOdoo 12, 13, 14, 15
    product_form_purchase_link

    Adds a Purchases smart button on product forms that opens the purchase order lines for that product, with quick filters for RFQs and confirmed Purchase Orders.

  • product_multi_company_stock

    Prevents removing a company from a product's allowed companies when that company still has stock quantities or stock moves for the product. Also adjusts how the company is set on lot/serial numbers for products shared across companies.

  • Product Order No NameOdoo 12, 13, 14, 15
    product_order_noname

    Speeds up product searches and product lists by changing how Odoo sorts products, avoiding slow translated-name sorting. Users see faster product lookups, especially in databases with several languages installed.

  • Product Packaging TypeOdoo 12, 13, 14, 15
    product_packaging_type

    Lets you define reusable packaging types (with a code, sequence and GTIN flag) and assign one to each product packaging, so packagings are named and ordered by type instead of by free text.

  • product_pricelist_by_contact

    Lets you assign a specific pricelist directly on each contact, so that contact's own pricelist is used in the sales flow instead of only the company-level one.

  • product_pricelist_discount_by_range

    Adds a "By range" discount option to pricelist rules, so you can set different discount percentages for different price intervals instead of one single discount.

  • Product StatusOdoo 14, 15, 17, 18, 19
    product_status

    Automatically sets a product's status (New, Discontinued, Phase Out, End-Of-Life) from three dates on the Sales tab, so users no longer pick the status by hand.

  • product_supplierinfo_barcode

    Adds a barcode field to supplier pricelist items (supplier info), so each supplier's article number can be stored and used to find products by supplier barcode.

  • product_supplierinfo_comment

    Adds a free-text Comments field to product supplier records, so you can note extra information about each vendor directly on the supplier line.

  • product_supplierinfo_for_customer_elaboration

    Lets you set default elaborations and an elaboration note for each customer and product, and automatically fills them in on sales order lines for that customer.

  • product_variant_configurator_manual_creation

    Lets you create product variants on demand: when a product template is set to not create variants automatically, a "Create Pending Variants" button appears and opens a wizard where you pick attribute values and generate the missing variants.

  • Project Forecast LinesOdoo 14, 15, 18, 19
    project_forecast_line

    Plan employee work capacity and see, per period, whether your team is over- or under-booked. The module builds forecast lines from working schedules, tasks, holidays and sales, and shows them in a dedicated Forecast menu.

  • project_forecast_line_bokeh_chart

    Adds a Forecast Reporting screen under the Project Forecast menu where you pick a date range, employees and projects and instantly see a stacked bar chart of forecasted workload per employee and project.

  • project_forecast_line_deadline

    Adds a forecast end date on project tasks that is automatically filled from the task deadline, so the forecast planning shows when work is expected to finish.

  • project_forecast_line_holidays_public

    Makes project forecast lines skip public holidays, so planned work is not scheduled on days the company is closed. Adds a company setting to recompute forecasts right away when a public holiday is created.

  • project_purchase_analytic_global

    When you create a purchase order from a project, the project's analytic account is automatically filled in on the order, so costs are booked to the right project without manual entry.

  • project_stage_mgmt

    Lets you add and manage task stages directly while creating a project, and shows a dedicated Stages tab on the project form.

  • project_stock_request

    Link stock requests to projects and project tasks, so you can see and create stock requests directly from a project or a task.

  • Project Task DependenciesOdoo 12, 13, 14, 15
    project_task_dependency

    This module adds the ability to define dependencies between project tasks, so a task can be linked to other tasks it depends on. It is a small extension of the standard Project app.

  • project_task_milestone

    Links project tasks to project milestones, so each task can be tagged with the milestone it belongs to and tasks can be grouped or filtered by milestone.

  • project_task_required_project

    Adds a company-level setting that makes the project mandatory on tasks. When enabled, Odoo blocks saving a task without a project and shows an error message.

  • project_template_milestone

    When you create a project from a template, its milestones are now copied into the new project and the new tasks are linked to those copied milestones.

  • project_wbs

    Organise projects as a Work Breakdown Structure (WBS) with parent/child levels, full WBS codes and paths, and classify each element as project, phase, deliverable or work package.

  • purchase_cancel_confirm

    When you cancel a purchase order from the Cancel button, Odoo now asks for a confirmation and lets you optionally enter a cancellation reason, which is saved on the order.

  • purchase_deposit_analytic

    Adds analytic account and analytic tags fields to the purchase deposit registration wizard, so deposits can be posted with the same analytic distribution as the purchase order lines.

  • purchase_deposit_operating_unit

    When you create a purchase deposit from a purchase order, the deposit automatically inherits the operating unit of that order.

  • Purchase Line ReassignOdoo 15, 18, 19
    purchase_line_reassign

    Lets you move selected purchase order lines from one purchase order to another using a small wizard, without retyping them.

  • Purchase - Manual CurrencyOdoo 13, 14, 15, 17, 18
    purchase_manual_currency

    Lets buyers set a manual currency rate on draft purchase orders instead of using Odoo's automatic rate, and choose whether vendor bills inherit that rate from the purchase order or use their own.

  • purchase_mrp_distribution

    Lets you buy one product that is later split into several different components, deciding the exact quantities of each component directly on the stock transfer. A new "Distribution" bill of materials type and a distribute button on transfers make this possible.

  • Operating Unit in Purchase OrdersOdoo 12, 13, 14, 15, 17, 18
    purchase_operating_unit

    Adds an Operating Unit to purchase orders and their lines, carries it through to vendor bills, and restricts which purchase orders each user can see based on their allowed operating units.

  • purchase_operating_unit_access_all

    Adds a security group that lets selected users see and work on purchase orders from every operating unit, instead of only the operating units assigned to them.

  • purchase_order_analytic_search

    Search purchase orders by analytic account (code, name or manager) and get a new Purchasing menu listing purchase order lines with their analytic account.

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.