OdooWiki OCA HUB

Migrating from Odoo 18 to Odoo 19: which OCA modules are available

Of the 3,111 OCA modules confirmed in Odoo 18.0, 1,272 (41 %) are also confirmed in Odoo 19.0. The other 1,839 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, 259 modules are in Odoo 19.0 without being in 18.0.

3,111
in Odoo 18
1,272
also in Odoo 19
1,839
pending in Odoo 19
41 %
already migrated

See also

Odoo 18 modules not yet confirmed in Odoo 19

  • base_partner_merge_user_consolidation

    When you merge duplicate contacts, this module automatically consolidates their linked user accounts: it keeps one login, archives the others, and combines their access rights.

  • Base PhoneOdoo 12, 13, 14, 16, 17, 18
    base_phone

    Adds phone-number tools to Odoo: a Dial button next to phone fields, automatic international reformatting of stored numbers, and a wizard to clean up all existing numbers. It also lets Odoo find a partner from an incoming caller's number.

  • Portal typesOdoo 16, 18
    base_portal_type

    Lets administrators create different types of portal users by defining portal-type groups, so portal access can be tailored (for example vendors versus customers) using Odoo's normal group mechanism.

  • Remote BaseOdoo 12, 13, 14, 15, 16, 18
    base_remote

    Stores every remote (external IP address) that connects to Odoo, with its hostname and whether it can be resolved on the network. It also blocks logins coming from remotes that cannot be identified.

  • Report to printer - Mail extensionOdoo 12, 13, 14, 15, 16, 18
    base_report_to_printer_mail

    When a report is generated from an email template, this module prevents it from being sent to a printer. It only affects automatic report generation triggered by mail templates.

  • Base RestOdoo 12, 13, 14, 15, 16, 18
    base_rest

    This module provides the technical foundation to build and publish REST APIs for Odoo. It adds a REST API menu with a Swagger documentation page where developers can explore the available endpoints.

  • Base Rest Auth Api KeyOdoo 14, 15, 16, 18
    base_rest_auth_api_key

    Adds API key security information to the automatically generated OpenAPI documentation of REST services, so developers see that an API-KEY header is required.

  • Base Rest DatamodelOdoo 13, 14, 15, 16, 18
    base_rest_pydantic

    This module lets developers use Pydantic data models as input and output for REST API methods in Odoo, adding automatic validation and OpenAPI documentation. It does not add any screen or menu for end users.

  • Base Search Mail ContentOdoo 12, 13, 14, 15, 16, 17, 18
    base_search_mail_content

    Lets users search any record that uses Odoo chatter (like tasks, tickets or issues) by the content of its messages, notes and emails, not just by the record's own fields.

  • Base Sequence OptionOdoo 14, 15, 16, 17, 18
    base_sequence_option

    This base module lets administrators define alternative numbering sequences for documents, chosen automatically by matching rules on the document's own values. It does nothing on its own; other modules must enable it for each document type.

  • base_sequence_template

    Lets you define reusable sequence templates and generate one numbered sequence per company in a single step, automatically filling in company details such as name or registry number into the prefix and suffix.

  • Base Sparse Field List SupportOdoo 13, 14, 15, 16, 17, 18
    base_sparse_field_list_support

    Technical module that lets Odoo store lists (not only dictionaries) in serialized fields. It changes how serialized field values are converted when read into memory, so lists are saved correctly.

  • base_temporary_action

    This technical module adds a flag to mark actions as temporary and automatically deletes them one hour after creation. It does not add any visible screen or menu by itself.

  • Time ParameterOdoo 14, 15, 18
    base_time_parameter

    Lets you store values that change over time (rates, thresholds, flags) and read the right value for any given date. Access is through a new Time Parameters menu under Technical settings.

  • base_transaction_id

    Adds a Transaction ID field to sales orders and invoices so you can record the payment reference from a bank or payment provider. The value entered on a sales order is automatically copied to the invoice created from it.

  • Base UrlOdoo 18
    base_url

    This module provides a technical foundation for giving Odoo records clean, human-readable web addresses (URLs) instead of numeric IDs, and it automatically keeps old addresses working by redirecting them when they change.

  • base_user_effective_permissions

    Adds an "Effective permissions" button on the user form that opens a list showing, per model, whether the user can create, read, write or delete records and the record rules that restrict those operations.

  • base_user_empty_password

    Lets administrators clear the login password of one or more users from the Users list, so those users must sign in with another method (for example single sign-on).

  • User Locale SettingsOdoo 12, 13, 14, 15, 16, 18
    base_user_locale

    Lets each user or the whole company override how dates, times, week start and number separators are displayed in Odoo, instead of being forced to use the language defaults.

  • User profilesOdoo 12, 14, 18
    base_user_role_profile

    Lets administrators group roles into profiles and lets users switch between their allowed profiles from the top bar, so the active roles (and therefore menus and permissions) change instantly.

  • Base User Show EmailOdoo 12, 13, 14, 16, 18
    base_user_show_email

    Separates the user login from the email address in Odoo. The user form now shows a 'Login' label and a visible Email Address field, and the login page asks for a Login instead of an Email.

  • Base Warn OptionOdoo 15, 18
    base_warn_option

    Lets administrators create and manage a library of predefined warning and blocking messages, so the same wording is reused consistently across Odoo.

  • Business RequirementOdoo 12, 13, 14, 15, 16, 18
    business_requirement

    Track customer business requirements from the first story to approval, with scenarios, gaps, test cases and a portal page where customers can follow progress.

  • Business Requirement CRMOdoo 12, 13, 14, 16, 18
    business_requirement_crm

    Create a Business Requirement directly from a CRM opportunity and see all requirements linked to a lead. The opportunity form gets a Create Business Requirement button and a counter button listing its requirements.

  • business_requirement_deliverable

    Adds deliverable lines to business requirements so you can list the products and services a customer will receive, price them from a pricelist, and show them to the customer in the portal and on the printed report.

  • business_requirement_deliverable_project

    When a business requirement is approved, its deliverables can automatically become project tasks, either in a chosen project or in a brand-new project created for the requirement.

  • business_requirement_rice

    Adds a RICE scoring section to business requirements so you can rank requests by Reach x Impact x Confidence / Effort. The score is stored, shown in the form, list and kanban views, and can be used to filter and sort requirements.

  • Business Requirement SaleOdoo 12, 13, 14, 18
    business_requirement_sale

    Lets salespeople turn a Business Requirement into a quotation, using its deliverables as sales order lines, and links quotations back to the requirement.

  • calendar_event_description_layout

    Moves the Description field of the calendar event form onto its own dedicated tab, giving users much more room to write long or detailed event descriptions.

  • Calendar Event Multi CompanyOdoo 12, 15, 16, 18
    calendar_event_multi_company

    Adds a Company field to calendar events so each event belongs to a specific company. Users only see events of companies they are allowed to access, plus events with no company.

  • calendar_event_type_color

    Colorize calendar events automatically based on the color of their first event category, and let administrators set a color on each event type.

  • calendar_export_ics

    This module adds a wizard that lets you export your Odoo calendar events to a single .ics file, which you can then import into other calendar applications.

  • calendar_import_ics

    Lets users import .ics calendar files into Odoo Calendar, creating or updating events and optionally removing previously imported events that are no longer in the file.

  • carrier_account_environment

    Lets administrators store carrier account credentials (account and password) in server configuration files instead of typing them in Odoo, so production and test servers can use different carrier logins.

  • Chained SwapperOdoo 12, 13, 14, 15, 18
    chained_swapper

    Lets administrators define reusable "field swap" rules that change a field value on selected records and automatically propagate the same value to related records. Each rule can be protected by constraints and restricted to certain user groups.

  • commission_formula_oca

    Adds a new 'Formula' commission type so you can calculate agent commissions with a custom formula instead of fixed percentages.

  • Sanitary RegistryOdoo 15, 16, 17, 18
    company_sanitary_registry

    Lets you record sanitary registry numbers for your company and assign them per product category and warehouse, and print them on reports.

  • Connector Base ProductOdoo 12, 13, 14, 15, 16, 17, 18
    connector_base_product

    Adds a hidden 'Connectors' tab to product and product variant forms, ready to be filled in by other connector modules.

  • connector_elasticsearchOdoo 12, 13, 14, 15, 16, 18
    connector_elasticsearch

    Adds Elasticsearch as a search engine backend in Odoo, letting you configure the connection and manage indexes that are exported to an Elasticsearch server.

  • Connector Importer ProductOdoo 14, 15, 16, 17, 18
    connector_importer_product

    Adds ready-made import types so you can load products, variants, attributes, categories, packaging and supplier info into Odoo from CSV files using the Connector Importer framework.

  • connector_importer_source_sftp

    Adds a new CSV import source that reads files from an SFTP server, and can automatically move each processed file to a success or error folder depending on the import result.

  • Connector Search EngineOdoo 12, 13, 14, 15, 16, 18
    connector_search_engine

    Connect Odoo to external search engines by defining backends, indexes and per-record bindings, then recompute, export and delete index data in the background. It is a base framework: the actual search engine connection is provided by other addons.

  • connector_typesense

    Adds Typesense as a search engine backend in Odoo, so users can configure a Typesense server and export indexed data to it.

  • Contract BrandOdoo 12, 13, 14, 15, 16, 18
    contract_brand

    Lets you assign a brand to a contract and automatically carries that brand over to the invoices generated from it, so branded contracts and their billing stay consistent.

  • Contract ForecastOdoo 12, 16, 18
    contract_forecast

    Adds a forecast of future contract invoices, showing expected amounts and invoice dates per contract line, and lets you view them in a pivot, graph or list report.

  • contract_forecast_brand

    Adds the brand to contract forecasts, so each forecast line shows the brand of its contract and updates automatically when the contract's brand changes.

  • contract_forecast_variable_quantity

    This module makes contract forecasts refresh automatically when you change how a contract line calculates its quantity, so the forecast stays in line with the new quantity rule.

  • contract_invoice_manually

    Adds a "Manually Invoiced" option on contracts so they are skipped by automatic invoice generation and can instead be invoiced on demand from Accounting. A company setting turns the feature on or off.

  • contract_layout_category_hide_detail

    Lets you hide the detail lines, subtotals and line amounts of sections on contracts, their printed reports, the customer portal and the invoices generated from them.

  • contract_line_defer

    Lets you mark contract lines as deferred so they are not invoiced while their start date is unknown, then activate them later with a start and end date. A company setting can defer new contract lines automatically.

  • contract_line_defer_successor

    When a contract line is deferred, this module blocks the successor, stop and cancel actions on it and greys it out in the contract lines list, so users cannot act on a line that has been postponed.

  • Contract MandateOdoo 12, 13, 14, 16, 17, 18
    contract_mandate

    Lets you attach a direct debit mandate to a contract so that invoices created from that contract automatically carry the mandate. The mandate field only appears when the contract's payment method requires a mandate.

  • contract_payment_mode_brand

    Limits the payment modes you can pick on a contract to those allowed for the contract's brand. The allowed list is taken from the brand configuration and applied automatically on the contract form.

  • Contract Price RevisionOdoo 12, 13, 15, 17, 18
    contract_price_revision

    Lets you revise contract line prices by applying a percentage change or a fixed new price, creating a new line and closing the old one the day before the new start date.

  • Contract Queue JobOdoo 12, 14, 16, 17, 18
    contract_queue_job

    When enabled, contract invoicing and contract line renewals are split into background jobs instead of being processed all at once, and a new button lets you enqueue invoice creation from the manual invoice wizard.

  • Contracts Management - Recurring SalesOdoo 12, 14, 15, 16, 17, 18
    contract_sale_generation

    Lets contracts generate sales orders instead of invoices on their recurring schedule, with an option to confirm those orders automatically. Users can also see how many sales orders a contract has produced and open them from the contract form.

  • contract_sale_invoicing

    Lets you add pending sales orders to a recurring contract invoice when they share the same analytic account, either merged into the contract invoice or as separate invoices.

  • contract_sale_mandate

    When a sale order with a banking mandate is turned into a contract, the mandate is automatically carried over to the contract.

  • contract_sale_payment_mode

    Lets you choose a different payment mode for contracts generated from sale orders than the one used for invoices, controlled by a company-level setting.

  • contract_sale_transmit_method

    When a contract is created from a sale order, the transmit method chosen on the sale order (email, post, portal, etc.) is automatically copied to the contract.

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.