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

  • purchase_order_invoicing_grouping_criteria

    Lets you define extra grouping rules for purchase orders when creating vendor bills, so orders are split into separate invoices based on fields you choose, in addition to vendor, company and currency.

  • purchase_order_line_original_date

    Keeps a record of the expected arrival date that was promised when a purchase order was confirmed, so you can compare it with later changes and measure real supplier delays.

  • purchase_order_line_price_history

    Adds a clock button on each purchase order line that opens a pop-up showing the last prices paid to the supplier for that product, and lets you apply one of those old prices to the current line.

  • purchase_order_line_price_history_discount

    Adds a discount column to the purchase price history wizard, so buyers can see the discount applied on each past purchase line and reuse it when selecting a historical price.

  • purchase_order_line_qty_to_receive

    Adds a 'To Receive' column on purchase order lines showing how much quantity is still pending receipt. It is calculated automatically as ordered quantity minus already received quantity.

  • purchase_order_product_recommendation_brand

    Adds a Brands filter to the product recommendation wizard in Purchase Orders, so buyers can narrow suggested products down to specific brands.

  • purchase_order_product_recommendation_classification

    Adds classification filters to the purchase order product recommendation wizard, so buyers can suggest products based on their sales ABC classification and seasonality.

  • purchase_order_product_recommendation_forecast

    Adds a "Year of reference" option to the purchase product recommendation wizard, so Odoo can forecast next-period quantities by comparing the same period in a past year and applying the observed growth or decline.

  • purchase_order_product_recommendation_secondary_unit

    Adds secondary unit columns to the product recommendation wizard in purchase orders, so buyers can order recommended products in a second unit of measure and see the quantity converted automatically.

  • purchase_order_product_recommendation_xlsx

    Adds an Export button to the product recommendation wizard so users can download the recommended products for a supplier as an Excel (XLSX) file.

  • purchase_order_qty_by_product_category

    Adds a new tab on purchase orders that shows ordered, received and pending quantities grouped by product category, optionally split by unit of measure. Two settings let you control this grouping behaviour.

  • purchase_order_report_grouped_by_vendor

    Adds a printable PDF report that groups the selected purchase orders by vendor, showing each vendor's orders and lines with a total per vendor.

  • purchase_receipt_expectation

    Adds a 'Receipt Expectation' option on purchase orders that controls how incoming receipts are created when the order is approved. By default it uses the standard Odoo behaviour.

  • purchase_receipt_expectation_from_partner

    Adds a "Receipt Expectation" setting on vendor/partner records and automatically copies it onto new purchase orders when the vendor is selected.

  • purchase_receipt_expectation_manual

    Adds a "Manual" receipt expectation option on purchase orders and a wizard that lets stock users create a receipt (picking) by hand, choosing lines and quantities, with built-in checks before confirming.

  • purchase_receipt_expectation_manual_split

    This module lets you split a purchase order line into several lines when you manually record a receipt, so each received quantity is tracked separately. It also automatically merges quantities back if a receipt is cancelled.

  • purchase_receipt_percentage

    Shows a receipt percentage on purchase orders and their lines, so buyers can quickly see how much of an order has actually been received.

  • Purchase Reception NotifyOdoo 12, 13, 14, 15, 17, 18
    purchase_reception_notify

    When an incoming shipment is validated, Odoo automatically posts a message on the related purchase order listing the products and received quantities, and notifies the employees who follow that order.

  • purchase_reception_status_line

    Adds a reception status to each purchase order line (Nothing, Partially, Fully or Over Received) and uses it to compute the reception status of the whole purchase order, with an option to force a line as fully received.

  • Purchase RepresentativeOdoo 13, 14, 15, 18
    purchase_representative

    When Odoo automatically creates a request for quotation from a stock rule, the Purchase Representative is set to the user who triggered the procurement instead of the system user.

  • Purchase Request AnalyticOdoo 12, 13, 14, 15, 17
    purchase_request_analytic

    Adds an analytic distribution field to purchase requests, used as the default for new request lines and copied to all lines when set.

  • purchase_request_cancel_confirm

    Adds a confirmation step when cancelling a purchase request, asking the user to confirm and optionally provide a reason before the request is rejected.

  • purchase_request_operating_unit

    Adds an Operating Unit to purchase requests and their lines, so each request belongs to a specific business unit. Users only see requests from the operating units they are allowed to access.

  • purchase_request_operating_unit_access_all

    Adds a security group that lets selected users see and work on purchase requests from every operating unit, without having to assign those operating units to their user profile.

  • purchase_request_substate

    Adds sub-states to purchase requests, letting you track extra steps like 'To Verify' or 'Checked' inside the normal approval states and send an email when a request is verified.

  • purchase_request_to_requisition

    Lets you turn purchase request lines into a purchase agreement (bid) directly from Odoo, either creating a new draft agreement or adding quantities to an existing one, and tracks the bid status back on the request.

  • purchase_requisition_grouped_by_procurement

    When Odoo automatically creates purchase requisitions from stock rules, this module reuses an existing draft requisition for the same procurement group instead of creating a new one, adding the new lines to it.

  • purchase_requisition_operating_unit

    Adds an Operating Unit to purchase requisitions (tenders) so each requisition and its lines belong to one operating unit, and only users with access to that unit can see them.

  • purchase_requisition_order_remaining_qty

    Adds a new agreement type option that lets purchase agreements (requisitions) automatically use only the remaining quantity when creating requests for quotation, avoiding ordering more than agreed.

  • purchase_rfq_number

    Gives purchase quotations their own RFQ numbering sequence, separate from confirmed purchase orders. When a quotation is confirmed, its RFQ number is kept for reference and the order receives a new PO number.

  • purchase_stock_manual_currency

    When a purchase order uses a manually entered currency rate, this module makes sure that rate is also used for the stock moves created from that order, so the cost recorded in inventory matches the purchase order.

  • purchase_stock_operating_unit

    Keeps the operating unit consistent between purchase orders and the warehouse they deliver to, and copies it onto the resulting stock receipt. Users get automatic matching and a clear error if the two differ.

  • purchase_stock_return_request

    Link supplier return requests to the original purchase orders and see the purchase value of the goods being returned, including taxes and totals, on the return request and its printed report.

  • Purchase Stock Secondary UnitOdoo 13, 14, 15, 17, 18
    purchase_stock_secondary_unit

    When a purchase order is confirmed, the secondary unit quantity entered on the purchase order line is copied onto the related stock moves, so warehouse staff see the same secondary unit figures on receipts.

  • Purchase Sub StateOdoo 13, 14, 15, 18
    purchase_substate

    Adds a second-level status (substate) to purchase orders and requests for quotation, so you can track extra steps like "Waiting for legal documents" or "In receipt" on top of the standard status.

  • purchase_total_ordered_qty

    Adds a 'Total Quantity' block to the purchase order form that shows the total ordered quantity, grouped by unit of measure and converted to each unit's reference unit.

  • purchase_v12_control_menu

    Adds a Control menu under Purchase with two shortcuts: a list of incoming products you are waiting to receive, and a list of vendor bills. It restores the handy purchase control accesses that existed in Odoo v12.

  • purchase_warn_option

    Lets you pick a ready-made warning option on vendors and products, which automatically fills in the purchase warning message shown on purchase orders.

  • purchase_work_acceptance_invoice_plan

    Create Work Acceptances directly from a purchase order's invoice plan, one installment at a time. The chosen installment controls the quantities proposed on the Work Acceptance instead of the invoice plan itself.

  • purchase_work_acceptance_late_fines

    Adds late delivery fines to work acceptances: Odoo computes how many days late a receipt is, multiplies it by a daily rate, and lets you create a customer invoice or vendor refund for that amount.

  • purchase_work_acceptance_tier_validation

    Adds an approval workflow (tier validation) to Work Acceptances, so a Work Acceptance must be reviewed and approved by the right people before it can be accepted.

  • repair_refurbish_repair_stock_move

    This glue module makes the refurbish and repair stock move features work together, so repair orders that produce a refurbished product also create and manage the related stock moves.

  • repair_scrap

    This module lets you scrap components or irreparable parts directly from a repair order. It adds a Scrap button on repair orders, a scrap counter, and links scrap records back to the repair.

  • repair_stock_move_restrict_lot

    This module links repair orders to lot restrictions on their stock moves, so the lot set on a repair order is automatically applied to the related stock move. It helps avoid reserving the wrong lot during repair operations.

  • repair_type_security

    This module links repair types with repair security groups, giving repair users read-only access to repair types and repair managers full access. It installs automatically when both repair_type and repair_security are present.

  • Hotel Reservation Management - ReportingOdoo 12, 13, 14, 15, 17, 18, 19
    report_hotel_reservation

    Adds a read-only reporting screen that counts hotel reservations grouped by reservation number and status, shown as a pivot, graph or list. Users find it under Hotel Management > Reports > States By Reservation.

  • Restaurant Management - ReportingOdoo 12, 13, 14, 15, 17, 18, 19
    report_hotel_restaurant

    Adds a read-only reporting screen that groups restaurant reservations by their status, so you can see how many reservations are in each state and analyse them in list, graph or pivot views.

  • res_partner_journal_items_link

    Adds a "Journal items" smart button on the contact/partner form that opens the list of accounting journal items linked to that partner.

  • sale_cancel_confirmed_invoice

    When enabled, cancelling a sale order also cancels its posted but unpaid invoices. The option is turned on per company in the Sales settings.

  • sale_commission_product_criteria_semaphore

    Lets you add a traffic-light status (green, yellow or red) to commission rules, so the same product can earn different commission percentages depending on the semaphore shown on the invoice line.

  • Auto Refresh CouponsOdoo 13, 14, 15
    sale_coupon_auto_refresh

    Automatically re-applies promotion programs marked as auto-apply on sales orders whenever the order or its lines change, without the user having to click anything.

  • sale_coupon_criteria_multi_product

    Lets you use multi-product promotion criteria (from the coupon_criteria_multi_product module) when applying coupons and promotions on sale orders. Odoo checks each order's products and quantities against those criteria before granting the reward.

  • sale_coupon_criteria_order_based

    Adds an extra condition to coupon and promotion programs so they only apply to sales orders that match a chosen order filter, for example a specific sales team or customer.

  • sale_coupon_delivery_auto_refresh

    Keeps automatic coupon and free-shipping behaviour working together on sales orders: when a delivery line is added automatically, coupons are still applied, and when coupons are recomputed, delivery lines are not refreshed again.

  • sale_coupon_domain_free_product

    This module lets you create coupon programs that give free products based on a product domain, automatically adding 100% discounted reward lines to sales orders when the domain conditions are met.

  • sale_coupon_domain_product_discount

    Lets you apply a coupon promotion discount only to the products that match a product domain, instead of the whole order. It also supports a strict per-product limit so each product must individually meet the minimum quantity and amount rules.

  • sale_coupon_financial_risk

    Prevents reward coupons from being emailed to customers when their sales order exceeds the allowed financial risk. It links coupon promotions with credit risk checks on confirmation.

  • sale_coupon_incompatibility

    Lets you mark promotions as incompatible so that two conflicting promotions cannot be applied to the same sales order. When a customer tries to add a promotion or coupon that clashes with one already on the order, Odoo blocks it with an error message.

  • Coupon LimitOdoo 13, 14, 15
    sale_coupon_limit

    Limit how many times a promotion or coupon can be used per customer or per salesperson. When a limit is reached, Odoo blocks the promotion and shows an error message.

  • sale_coupon_multi_gift

    This module lets you set up promotions that give several different free products as a reward on a sales order. When a promotion with multiple gift rewards applies, Odoo automatically adds the free products as separate order lines with a 100% discount.

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.