OCA modules for Odoo 18
There are 3,112 OCA community modules confirmed in Odoo 18.0: for each one, the branch, the module directory and the installable manifest have been checked on GitHub. Odoo 17 has 1,994. 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 18
See also
Modules for Odoo 18
- Base PhoneOdoo 12, 13, 14, 16, 17, 18base_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, 18base_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, 18base_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.
- Base Repair ConfigOdoo 12, 13, 16, 17, 18, 19base_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, 19base_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, 19base_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.
- Report to printer - Mail extensionOdoo 12, 13, 14, 15, 16, 18base_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, 18base_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, 18base_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, 18base_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 Revision (abstract)Odoo 14, 15, 16, 17, 18, 19base_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, 19base_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, 19base_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 Search Mail ContentOdoo 12, 13, 14, 15, 16, 17, 18base_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, 18base_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 TemplateOdoo 18base_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, 18base_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 Sub StateOdoo 12, 13, 14, 15, 16, 17, 18, 19base_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, 19base_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, 19base_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 Temporary ActionOdoo 18base_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.
- Base TerritoryOdoo 13, 14, 15, 16, 17, 18, 19base_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, 19base_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 AuthOdoo 18, 19base_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 CorrectionOdoo 14, 16, 18, 19base_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, 19base_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, 19base_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, 19base_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.
- Time ParameterOdoo 14, 15, 18base_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 Time WindowOdoo 13, 14, 15, 16, 17, 18, 19base_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 transaction ID for financial institutesOdoo 12, 16, 18base_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 UBLOdoo 12, 13, 14, 15, 16, 17, 18, 19base_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 generateOdoo 18, 19base_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, 19base_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, 19base_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.
- Base UrlOdoo 18base_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.
- Effective permissionsOdoo 16, 18base_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.
- Empty users passwordOdoo 14, 18base_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, 18base_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 rolesOdoo 12, 13, 14, 15, 16, 17, 18, 19base_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.
- User roles activitiesOdoo 18, 19base_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, 19base_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, 19base_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.
- User profilesOdoo 12, 14, 18base_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, 18base_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 User SignatureOdoo 15, 16, 17, 18, 19base_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, 20base_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 Warn OptionOdoo 15, 18base_warn_option
Lets administrators create and manage a library of predefined warning and blocking messages, so the same wording is reused consistently across Odoo.
- BI SQL EditorOdoo 12, 13, 14, 15, 16, 17, 18, 19bi_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, 19brand
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, 19brand_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, 19bus_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.
- Business RequirementOdoo 12, 13, 14, 15, 16, 18business_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, 18business_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 DeliverableOdoo 12, 13, 14, 18business_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 RICEOdoo 18business_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, 18business_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 LayoutOdoo 17, 18calendar_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, 18calendar_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.