Migrating from Odoo 18 to Odoo 19: which OCA modules are available
Of the 3,113 OCA modules confirmed in Odoo 18.0, 1,272 (41 %) are also confirmed in Odoo 19.0. The other 1,841 do not have a confirmed 19.0 version in the catalogue yet: if you use any of them, check its page before planning the migration. In addition, 260 modules are in Odoo 19.0 without being in 18.0.
- 3,113
- in Odoo 18
- 1,272
- also in Odoo 19
- 1,841
- pending in Odoo 19
- 41 %
- already migrated
See also
Odoo 18 modules not yet confirmed in Odoo 19
- Report Text Format OptionOdoo 16, 17, 18report_text_format_option
Adds encoding and line-ending options to text reports in Odoo, so generated text files can be saved in a specific character set (e.g. cp932) and use CRLF or CR line breaks.
- Company CategoriesOdoo 12, 16, 18res_company_category
Adds company categories so you can group and classify companies in a multi-company database. You can assign a category to each company and browse companies by category.
- Company CodeOdoo 12, 13, 14, 15, 16, 18res_company_code
Adds an optional, unique 'code' to each company. The code is shown before the company name everywhere (including the company switcher) and companies are sorted by code then name.
- Social Media - MastodonOdoo 16, 18res_company_mastodon_link
Adds a "Mastodon Account" field to the company form, so each company can store its Mastodon profile URL alongside its other social media links.
- Res Partner Industry Multi CompanyOdoo 12, 18res_partner_industry_multi_company
Adds a Company field to partner industries so each industry can belong to a specific company, and automatically filters the list of industries per company.
- Partner - LinkedIn LinkOdoo 18res_partner_linkedin_link
Adds a LinkedIn Account field to contacts and companies, visible on the contact form, list and kanban views, and shown on the website contact widget when filled in.
- Partner - Mastodon LinkOdoo 18res_partner_mastodon_link
Adds a "Mastodon Account" field to contacts and companies in Odoo, so you can store and show each partner's Mastodon profile link in forms, lists, kanban cards and website contact blocks.
- Resource Leaves GeographicOdoo 16, 18resource_leaves_geographic
Lets you tag public holidays and calendar leaves with one or more geographic states, so each employee only sees the local holidays that apply to their address's state.
- REST LogOdoo 13, 14, 15, 16, 18rest_log
Records every REST API call made to your Odoo into a searchable log, showing what was requested, the result or the error, and a link back to the related record. Old logs are cleaned up automatically.
- Rma BatchOdoo 18rma_batch
Group several RMAs from the same return event into a single RMA Batch, so shared data (customer, responsible, team, tags, operation, location) stays synchronized and batch actions apply to all linked RMAs at once.
- Rma Batch Sale Auto DetectOdoo 18rma_batch_sale_auto_detect
Adds a button on RMA batches that automatically links each RMA to its sale order, and moves the batch to a new 'Manual Treatment' state when some RMAs cannot be matched automatically.
- Inter Company Module for RMAOdoo 18rma_inter_company
When a return (RMA) is created for a sale between two companies of the same group, this module automatically creates the matching RMA in the other company and keeps both linked, so each company manages its own return while the two stay in sync.
- Rma LotOdoo 16, 17, 18rma_lot
Lets you record the lot or serial number on a return (RMA), and choose which lot/serial is delivered back or used as replacement, with checks that the serial number is actually available.
- Rma ReasonOdoo 16, 18rma_reason
Lets you define a list of return reasons and pick one on each RMA (return) order, so returns can be categorised. Each company can decide whether choosing a reason is mandatory.
- RMA RepairOdoo 16, 17, 18rma_repair
Link RMA (return merchandise authorization) cases to repair orders. Users can create a repair order from an RMA, track it, and only allow return, replacement, or refund once the repair is finished or cancelled.
- RMA Repair LotOdoo 18rma_repair_lot
Automatically carries the lot or serial number from an RMA over to the repair order created from it, so the repaired item keeps its traceability.
- Rma Sale Auto DetectOdoo 18rma_sale_auto_detect
Automatically links return requests (RMAs) to the right delivered sales order lines, within a return period you define per operation, and warns you when no matching delivery is found.
- RMA Sale DeliveryOdoo 18rma_sale_delivery
Lets you choose a reception carrier when creating an RMA from a sales order, so returned goods can be shipped back with a specific delivery method.
- Rma Sale LotOdoo 16, 18rma_sale_lot
When creating a return from a sales order, this module lets you pick the exact lot or serial number that was delivered, so returns are recorded against the right batch and stock stays accurate.
- Return Merchandise Authorization Management - Link with MRP KitsOdoo 12, 13, 14, 15, 16, 18rma_sale_mrp
Allows customers and staff to create RMAs for kit products (phantom BoMs) by returning the whole kit, while Odoo automatically generates separate RMAs for each component and handles refunds based on the kit quantity.
- Rma Sale ReasonOdoo 16, 18rma_sale_reason
Lets salespeople choose a return reason when creating an RMA from a sales order, both in the backend and in the customer portal. The reason can then filter which return operations are available.
- rma_sale_stock_restocking_fee_invoicing
Lets you charge customers a fixed or percentage restocking fee when they return products through an RMA, and automatically creates the customer invoice for that fee.
- Route PlanningOdoo 18route_planning
Plan and manage delivery routes: define geographic areas, build ordered lists of checkpoints (stops) for each route, and let Odoo optimise the visiting order and times automatically. Drivers mark stops as done or report incidents.
- route_planning_delivery
Adds a 'Route Planning' delivery method to Odoo so sales orders and deliveries can be linked to a route area, while preventing that carrier from creating real shipments.
- route_planning_rma
Adds a route area field to RMA forms, return wizards and RMA creation wizards so that returns and deliveries follow the correct route area. It automatically sets the destination location and updates related pickings.
- route_planning_rma_delivery
When a return (RMA) uses a Route Planning carrier, this module shows and requires a Route Area field on the RMA form and on the return/delivery wizards, and clears it automatically for other carrier types.
- route_planning_rma_sale
Adds a "Reception route area" field to the RMA creation wizard opened from a sales order, so returned goods can be assigned to a route area and its stock location.
- route_planning_sale_stock
This module links sales orders to route areas, so the delivery route and destination location are automatically set from the customer's route area. It also updates pending deliveries when the route area is changed on a sales order.
- route_planning_stock
Links delivery routes and checkpoints to stock transfers: each route area gets its own transit location and stock rules, and outgoing transfers are automatically added to a route and validated when the checkpoint is completed.
- Sale analytic brandOdoo 18sale_analytic_brand
Automatically fills the analytic distribution on sale order lines based on the brand selected on the sale order, so accounting analysis follows the brand without manual entry.
- sale_analytic_distribution_model_warehouse
Lets you set up analytic distribution rules that depend on the warehouse, so sale order lines automatically get the right analytic account based on the warehouse the sale is shipped from.
- Attached products in salesOdoo 13, 15, 16, 17, 18sale_attached_product
Define attached products on a product so they are added automatically to sales orders when the main product is present. Attached lines follow the main line quantity and are removed when the main product is removed.
- Sale auto remove zero quantity linesOdoo 16, 17, 18sale_auto_remove_zero_quantity_lines
Adds a company-level setting that automatically deletes sales order lines with zero quantity (and empty note lines) when a sales order is confirmed, leaving a message in the order's chatter.
- sale_automatic_workflow_auto_assign
Automatically assigns a sales workflow to new sale orders based on rules you define, and adds a new duplication option to control how workflows are copied when orders are duplicated.
- sale_automatic_workflow_force_invoiced
Adds a "Force Invoice" option to sale automatic workflows, so confirmed orders matching a chosen filter are automatically marked as force invoiced.
- Sale Automatic Workflow PeriodicityOdoo 14, 18sale_automatic_workflow_periodicity
Lets you set how often an automatic sales workflow runs, in seconds, and shows when it will run next. You can also limit processing to sales created before the last run.
- Sale Automatic Workflow StockOdoo 17, 18sale_automatic_workflow_stock
Extend automatic sales workflows with stock options: choose the shipping policy and let Odoo automatically confirm and transfer the delivery pickings for sales orders handled by a workflow.
- sale_automatic_workflow_stock_job
Automatically validates stock transfers (deliveries) for sales orders as background jobs, so the automatic sales workflow does not slow down or block the user's screen.
- Sale Block no StockOdoo 16, 17, 18sale_block_no_stock
Blocks confirming a sales order when storable products are not sufficiently available, showing a wizard to adjust quantities, move lines to a new order, or confirm anyway if allowed.
- Sales Cancel ConfirmOdoo 14, 18sale_cancel_confirm
Lets companies ask for an optional free-text reason when cancelling a sales order, and stores that reason, the user and the date on the cancelled order.
- Sale Channel CategoryOdoo 16, 18sale_channel_category
Lets you link product categories to sale channels, so a whole category of products can be assigned to a channel at once. Categories inherit the channels of their parent category.
- Sale Channel Search EngineOdoo 16, 18sale_channel_search_engine
Lets you attach a search engine to a sale channel and automatically keeps the products and categories of that channel indexed in the search engine.
- Sale Channel Search Engine CategoryOdoo 16, 18sale_channel_search_engine_category
Links product categories to sale channels so they can be exported to a search engine. When a sale channel changes, the related product categories are re-synchronised automatically.
- Sale Channel Search Engine ProductOdoo 16, 18sale_channel_search_engine_product
Shows, on each product form, how many search-engine index entries exist for its variants (done, pending, error) and lets you open that list. Also re-syncs the index when a product is archived or unarchived.
- Sale Commission MarginOdoo 18sale_commission_margin_oca
This module makes the margin on sales order lines take sales commissions into account, so the margin you see is the real profit after paying agents.
- sale_commission_oca_product_criteria
Adds a new "Product criteria" commission type so you can pay different commission rates per product, product variant, product category or all products, applied automatically on sales orders and invoices.
- sale_commission_oca_product_criteria_semaphore
Adds a traffic-light (green, yellow, red) criterion to sales commission rules, so different commission percentages can be applied depending on the semaphore status of the invoice line.
- Sales commissions from salesmanOdoo 12, 13, 14, 15, 16, 17, 18sale_commission_salesman
Automatically adds the salesman as a commission agent on sales orders and customer invoices when no other commission agent is already set, provided the salesman's contact is flagged as an agent with a commission plan.
- Sale Credit Note ReversalOdoo 16, 18sale_credit_note_reversal
Adds a "Revert Credit Note" button on posted customer credit notes so the reversal is created as a customer invoice linked to the sales order.
- Sale Custom RoundingOdoo 15, 18sale_custom_rounding
Lets you choose a specific tax rounding method on each sale order, overriding the company default, and carries that choice through to the generated invoice.
- sale_customer_order_frequency
Adds three order-frequency indicators to contacts: average days between orders, days since the last order and days before the next expected order. They are calculated automatically from confirmed sales orders and shown on the contact form and list.
- Sale Customer RankOdoo 13, 14, 16, 17, 18sale_customer_rank
When a sale order is created, the customer rank of the customer and its parent company is automatically increased, so Odoo recognises them as active customers.
- Sale Discount Display AmountOdoo 12, 13, 14, 15, 16, 17, 18sale_discount_display_amount
Shows the discount amount (not just the percentage) on sale orders and quotations, both on screen and on the printed/PDF quotation. You can choose whether the discount is shown with or without taxes and whether the report shows the total before discount.
- Sale Elaboration MarginOdoo 13, 15, 18sale_elaboration_margin
Adds elaboration cost, price and margin information to sale order lines, so users can see the margin generated by the elaboration products linked to a sale line.
- Weighing assistant elaborationsOdoo 15, 18sale_elaboration_weighing
Adds elaboration information to the weighing assistant: a new quick-start button to weigh elaborated moves, an elaboration note badge on the weighing cards, and filters to show only elaborated or not elaborated moves.
- sale_exception_product_sale_manufactured_for
Adds a blocking sales exception that prevents confirming a sales order when the customer is not allowed to buy the products that are restricted to specific manufacturing partners.
- Sale Insurance CaserOdoo 18sale_insurance_caser
Automate the sale of Caser insurance policies for mobile phones and tablets. When a delivery is validated, Odoo sends the policy request to Caser and stores the policy number and price on the sales order line.
- Sale Invoice Delivery StateOdoo 14, 18sale_invoice_delivery_state
Lets you choose, per customer, whether they should be invoiced after a partial delivery or only after a full delivery, and blocks invoicing until that delivery condition is met.
- Sales Invoice Plan ReportOdoo 18sale_invoice_plan_report
Adds an Invoice Plan table to the sales order and quotation PDF, showing each installment's name, due date, percentage and amount when the order uses an invoice plan.
- sale_invoice_product_not_alone
Adds a checkbox on products to prevent them from being invoiced on their own, so sale orders containing such products are not offered for separate invoicing.