OdooWiki OCA HUB

OCA modules for Odoo 19

There are 1,530 OCA community modules confirmed in Odoo 19.0: for each one, the branch, the module directory and the installable manifest have been checked on GitHub. Odoo 18 has 3,110. Open any module to see what it does, its availability in the other versions and its sources.

Confirmed modules per version

Repositories with the most modules in Odoo 19

See also

Modules for Odoo 19

  • Manage model export profilesOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_export_manager

    Lets administrators create and manage reusable export profiles for any Odoo model, and control per access-right whether users are allowed to export records.

  • External Database SourcesOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_external_dbsource

    Lets administrators register connections to external databases (currently PostgreSQL) and test them from Odoo. Other modules can then run queries or read/write records on those external databases.

  • Base FontawesomeOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_fontawesome

    Updates the icon library used across Odoo to Font Awesome 6.7.2, so icons look modern and consistent in the backend, the website and printed reports.

  • Base Global DiscountOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_global_discount

    This module lets you define global discount records (name, percentage, sales or purchases scope, company) and assign them to customers or suppliers. It also adds a per-product option to exclude a product from global discounts.

  • base_google_map

    Lets administrators enter a Google Maps API key and choose map language, region, theme and libraries from Odoo Settings, and optionally install extra Google Maps widgets and a map view.

  • ISO 3166Odoo 12, 13, 14, 15, 16, 17, 18, 19
    base_iso3166

    Adds the official ISO 3166 country codes to Odoo countries: the 3-letter code and the numeric code, shown on the country form and list. The values are filled in automatically from the existing 2-letter country code.

  • Kanban - Stage SupportOdoo 12, 14, 15, 16, 19
    base_kanban_stage

    Adds a reusable Kanban stage system to Odoo, letting you define stages per model and manage cards with priority, status, colour and assigned user. It is a technical foundation that other modules inherit to get Kanban boards with stages.

  • Location management (aka Better ZIP)Odoo 12, 13, 14, 15, 16, 17, 18, 19
    base_location

    Manage ZIP/postal codes as their own records linked to cities, so users can pick a location and have the address fields filled in automatically. Adds Cities and Zips menus under Contacts and a Zips button on countries.

  • Base Location Geonames ImportOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_location_geonames_import

    Adds a wizard that downloads the official Geonames city and postal-code list for a country and creates or updates the matching cities, states and zip entries in Odoo, removing entries that no longer exist in the file.

  • NUTS RegionsOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_location_nuts

    Adds European NUTS region levels (L1 to L4) to contacts and lets you download the official NUTS 2024 list from the EU ShowVoc service. You can tag partners with NUTS regions and protect custom entries from being overwritten.

  • Base MaintenanceOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_maintenance

    Adds a Team Leader and a description to maintenance teams, and provides a printable Maintenance Request report. It also prepares the maintenance request form for extra buttons added by other modules.

  • Maintenance GroupsOdoo 12, 13, 14, 15, 16, 18, 19
    base_maintenance_group

    Adds a dedicated Maintenance access category with two levels, User and Full Access, so maintenance menus and teams are no longer open to every internal user but only to people given a maintenance role.

  • Base Menu Visibility RestrictionOdoo 13, 14, 15, 16, 17, 18, 19
    base_menu_visibility_restriction

    Lets administrators hide specific menu items from chosen user groups by adding "Excluded Groups" to each menu, so users in those groups no longer see the menu.

  • Multi Company BaseOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_multi_company

    Provides the technical foundation that lets other modules give records access to several companies at once instead of just one. On its own it changes nothing visible for users.

  • base_multicompany_reporting_currency

    Lets you set one shared reporting currency for all companies in Odoo, directly from General Settings. Any model built on the provided mixin automatically stores and updates that reporting currency on its records.

  • Optional quick createOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_optional_quick_create

    Lets administrators disable the "quick create" shortcut on many2one fields for chosen models, so users must open the full create form instead of typing a name inline.

  • Base PartitionOdoo 16, 17, 18, 19
    base_partition

    Adds three helper methods to every Odoo model so developers can group records by a value, split them into smaller chunks, and read data record by record. These are technical tools used by other modules, not new screens for end users.

  • Base Partner Company GroupOdoo 15, 16, 17, 18, 19
    base_partner_company_group

    Lets you assign a company group to companies and see all contacts belonging to that group. You can search and group contacts by company group in the Contacts app.

  • Add a sequence on customers' codeOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_partner_sequence

    Automatically gives every new company or main contact a customer code taken from a numbered sequence (for example P/00001), and shares that code with the company's contacts.

  • Base Repair ConfigOdoo 12, 13, 16, 17, 18, 19
    base_repair_config

    Adds an empty "Repair" section to Odoo's General Settings and a Settings menu entry under the Repair app's Configuration menu. It is a technical base module with no user-facing features of its own.

  • Report to label printerOdoo 14, 16, 18, 19
    base_report_to_label_printer

    Lets you mark a report as a label report and send it to a dedicated label printer set on each user, instead of the normal printer.

  • Report to printerOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_report_to_printer

    Lets administrators and users choose whether each Odoo report is downloaded as a PDF or sent straight to a configured printer, with default rules per report, per user, or per user-and-report combination.

  • base_report_to_printer_cups

    Connect Odoo to one or more CUPS print servers, import their printers and paper trays, and send reports straight to a chosen printer instead of downloading a PDF.

  • base_report_to_printer_qztray

    This module lets Odoo send reports straight to printers installed on the user's own computer using QZ Tray, without needing a print server. It adds a "QZTray" option to printing printers and handles the secure connection and printing in the browser.

  • base_report_to_printer_websocket

    Lets Odoo send report print jobs directly to a user's computer over the existing WebSocket connection, without needing an external print server. Each printer is linked to a specific user who receives the job.

  • Base Revision (abstract)Odoo 14, 15, 16, 17, 18, 19
    base_revision

    This module is a technical building block that lets other Odoo documents keep a history of revisions. By itself it adds no menu or screen; developers use it to give documents like quotations or purchase orders a revision history.

  • Add custom filters for fields via UIOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_search_custom_field_filter

    Lets administrators add extra search filters to any Odoo screen without coding, by defining a field (or a related field path) in a simple list. Regular users then see these filters in the search bar of that screen.

  • Fuzzy SearchOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_search_fuzzy

    Lets administrators create PostgreSQL trigram indexes on text or character fields so that other addons can perform fuzzy (approximate) searches, and registers the '%' fuzzy search operator in search domains.

  • Base Sub StateOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_substate

    This module provides the technical foundation to add customizable sub-states (like "In negotiation", "Won", "Lost") to any Odoo record that has a state field, and to send an email when a record reaches a given sub-state. It is not useful on its own; it must…

  • Technical features groupOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_technical_features

    Lets selected users keep Odoo's technical features and technical menus switched on permanently, without having to turn on developer (debug) mode each time.

  • Base Technical UserOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_technical_user

    Lets you designate a dedicated technical user on each company, so automated or batch processes can run under that user instead of a real person.

  • Base TerritoryOdoo 13, 14, 15, 16, 17, 18, 19
    base_territory

    Lets you define a sales or field-service coverage structure in Odoo: regions, districts, branches and territories, each with a responsible manager. Territories can be defined by ZIP codes, states or countries.

  • Base Tier ValidationOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_tier_validation

    Adds a configurable multi-step approval workflow to any Odoo document, so records must be reviewed and approved by chosen users or groups before they can move forward.

  • base_tier_validation_confirm_auth

    Adds an option on tier definitions so that approvers must re-enter their password (identity check) before approving, rejecting or commenting on a tier review.

  • base_tier_validation_correction

    Lets authorised users replace the reviewer of pending tier validation reviews on documents, either immediately or on a scheduled date, and revert the change later.

  • Base Tier Validation FormulaOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_tier_validation_formula

    Lets you write Python formulas to decide when a tier approval is required and who must approve it, instead of only using fixed domains or user lists.

  • Base Tier Validation ForwardOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_tier_validation_forward

    Adds a Forward option to tier approvals, letting an assigned reviewer pass the decision to another user instead of approving or rejecting.

  • Base Tier Validation - Server ActionOdoo 14, 15, 16, 17, 18, 19
    base_tier_validation_server_action

    Extends tier validation so each approval step can automatically run a server action when it is approved or rejected, and can auto-approve itself when a condition is met.

  • Base Time WindowOdoo 13, 14, 15, 16, 17, 18, 19
    base_time_window

    Provides reusable building blocks (a weekday list and a time-window mixin) so other Odoo modules can define opening hours or availability slots with automatic overlap and validity checks.

  • Base UBLOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_ubl

    Technical foundation module that provides shared tools to create and read UBL (Universal Business Language) XML files. It adds no menus or screens; other modules use it to exchange electronic business documents.

  • base_ubl_generate

    Technical foundation module that builds UBL (Universal Business Language) XML files from Odoo data. It adds no screens or menus by itself; other modules use it to generate electronic documents such as purchase orders.

  • Base UBL ParseOdoo 18, 19
    base_ubl_parse

    Technical helper module that reads UBL (Universal Business Language) XML files and turns their content into structured data. It does nothing on its own; other modules use it to import UBL documents such as invoices or sale orders.

  • Base UNECEOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_unece

    Adds a central reference list of UNECE codes (units of measure, payment means, transport modes, packaging, etc.) that users can browse and search in Odoo. Only administrators can add, edit or delete entries; everyone else can only read them.

  • User rolesOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_user_role

    Lets administrators define reusable user roles that bundle several access groups, assign them to users (optionally with start and end dates), and automatically keep each user's groups in line with their roles.

  • base_user_role_activity

    Automatically creates a reminder activity on a user's contact when one of their role assignments is about to expire, and removes it when the role is extended or deleted.

  • User roles by companyOdoo 12, 14, 16, 17, 18, 19
    base_user_role_company

    Lets you assign a user role to a specific company, so a role only becomes active when the right company (or companies) are selected. Adds a Company field on each role line in the user form.

  • Base User Role HistoryOdoo 12, 13, 16, 17, 18, 19
    base_user_role_history

    This module keeps a history of every change made to the roles assigned to users. From a user's form you can open a smart button showing who changed which role, when, and what the old and new values were.

  • Base User SignatureOdoo 15, 16, 17, 18, 19
    base_user_signature

    Adds a digital signature field to user records so each user can draw and save their own signature, visible and editable on their user form and personal preferences.

  • Extended view inheritanceOdoo 12, 13, 14, 15, 16, 17, 18, 19, 20
    base_view_inheritance_extension

    Adds new operators to Odoo view inheritance so developers can wrap text in elements and update, extend or merge attribute values (contexts, domains, text) when customizing existing screens.

  • base_write_diff

    Prevents Odoo from saving field values that are identical to what is already stored, so records are only updated when something really changes. It adds a new write_diff method that developers can use to skip useless updates.

  • BI SQL EditorOdoo 12, 13, 14, 15, 16, 17, 18, 19
    bi_sql_editor

    Lets technical users build custom reports by writing an SQL query, then automatically creates the database view, an Odoo model, list/form/graph/pivot views, an action and a menu to display the results.

  • BrandOdoo 12, 13, 14, 15, 16, 17, 18, 19
    brand

    Adds a Brands directory to Odoo and lets you decide, per company, whether brands must be chosen on business documents. Brands are stored as contacts, so they carry address, VAT and logo details.

  • Brand External Report LayoutOdoo 12, 13, 14, 15, 16, 18, 19
    brand_external_report_layout

    Lets you give each brand its own external report layout — logo, colours, fonts, header, footer and paper format — so printed documents and PDFs follow the brand instead of the company.

  • Bus Alt ConnectionOdoo 12, 13, 14, 16, 17, 18, 19
    bus_alt_connection

    Allows Odoo to work with PgBouncer as an external database connection pooler by letting the instant-messaging dispatcher connect to a separate database host and port.

  • calendar_event_type_multi_company

    Adds a Company field to Calendar Event Types so each type can belong to a specific company. Users only see event types of their allowed companies (or shared ones with no company).

  • calendar_public_holiday

    Lets you record public holidays per country and year, and automatically creates matching all-day calendar events so holidays appear in the Odoo calendar.

  • Commissions OCAOdoo 18, 19
    commission_oca

    Lets you define commission rules and agents, assign agents to customers and products, and generate commission settlements for chosen periods, with a printable settlement report.

  • Companyweb Business InformationOdoo 12, 13, 14, 15, 16, 17, 18, 19
    companyweb_base

    Connect Odoo contacts to Companyweb to fetch official company data (VAT, registry, address, financial health) and keep selected contacts automatically updated. Users can enrich a contact with one click and add it to Companyweb Alerts.

  • Companyweb Payment InfoOdoo 13, 14, 15, 16, 17, 18, 19
    companyweb_payment_info

    Automatically sends your unpaid customer invoices to Companyweb once a day, so your company's payment behaviour can be shared with suppliers assessing credit risk.

  • ComponentsOdoo 12, 13, 14, 15, 16, 17, 18, 19
    component

    Adds a technical framework that lets developers register and use reusable 'components' instead of only Odoo models. It provides the base building blocks used by connector-style modules.

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.