OCA modules for Odoo 12
There are 2,205 OCA community modules confirmed in Odoo 12.0: for each one, the branch, the module directory and the installable manifest have been checked on GitHub. 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 12
See also
Modules for Odoo 12
- Asynchronous ImportOdoo 12, 13, 14, 16, 17, 18base_import_async
Adds an "Import in the background" checkbox to the standard CSV import screen, so large files are split into chunks and processed by the queue instead of blocking the user.
- Base Import MatchOdoo 12, 13, 14, 15, 16, 17, 18base_import_match
Lets you define matching rules so that CSV imports update existing records instead of creating duplicates, based on fields like VAT, email or name rather than the external ID.
- Import Module GroupOdoo 12base_import_module_group
Restricts who can import modules into Odoo to members of a dedicated security group. Administrators get this right automatically; other users are blocked with an error.
- Optional CSV importOdoo 12, 13, 14, 15, 16, 17, 18base_import_security_group
This module makes CSV/Excel importing optional per user. Only users with the "Import CSV/Excel files" access right see the Import button and can actually import records; others are blocked.
- ISO 3166Odoo 12, 13, 14, 15, 16, 17, 18, 19base_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.
- Base JSONifyOdoo 12, 13, 14base_jsonify
This module is a compatibility bridge: it keeps the old "Base JSONify" name working by depending on the newer jsonifier module. It adds no new screens or features of its own.
- Kanban - Stage SupportOdoo 12, 14, 15, 16, 19base_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.
- Base Kanban Stage StateOdoo 12, 14, 15base_kanban_stage_state
Adds a State field to Kanban stages so each stage can be mapped to a status such as New, In Progress, Pending, Done, Cancelled or Exception.
- Locale - Default UoMOdoo 12base_locale_uom_default
Lets you set default units of measure per language, so each language can have its own preferred unit for each unit category (e.g. weight, length).
- Location management (aka Better ZIP)Odoo 12, 13, 14, 15, 16, 17, 18, 19base_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, 19base_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, 19base_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 Many2many Custom FieldOdoo 12, 13, 14, 16, 17, 18base_m2m_custom_field
Adds a new technical field type that lets developers control whether the database link table for a many-to-many relation is created automatically. It changes nothing visible for everyday users.
- Base MaintenanceOdoo 12, 13, 14, 15, 16, 17, 18, 19base_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 SettingsOdoo 12, 13, 14, 15, 16base_maintenance_config
Adds a Maintenance section to Odoo's General Settings and a Settings menu entry under Maintenance Configuration, giving equipment managers a dedicated place to configure the Maintenance app.
- Maintenance GroupsOdoo 12, 13, 14, 15, 16, 18, 19base_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.
- Update Restrict ModelOdoo 12, 14, 15, 16, 17, 18base_model_restrict_update
Lets administrators make specific models read-only for everyone except chosen user groups, and mark individual users as read-only so they cannot change any business records.
- Multi Company BaseOdoo 12, 13, 14, 15, 16, 17, 18, 19base_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.
- Multiple images baseOdoo 12, 14, 15, 16, 18base_multi_image
Adds a reusable image gallery to any Odoo record, letting users store several images per record from a URL, a file, the database, the filestore or an attachment, and pick one as the main image.
- Optional quick createOdoo 12, 13, 14, 15, 16, 17, 18, 19base_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.
- Add a sequence on customers' codeOdoo 12, 13, 14, 15, 16, 17, 18, 19base_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 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.
- Base Phone CDROdoo 12base_phone_cdr
Stores phone call records (CDRs) in Odoo, links each call to a contact and an Odoo user, and shows a CDR counter button on customer forms.
- Base Phone Pop-upOdoo 12base_phone_popup
When an incoming phone call is received, Odoo shows a pop-up notification to the user with a link to the matching contact, lead or employee, or to a 'Number Not Found' screen. Users can turn this pop-up on or off in their phone preferences.
- Base Phone RateOdoo 12base_phone_rate
Store international phone call rates by country, state and dial prefix, and flag products that are international calls. Users can look up the rate matching a phone number.
- base_phone_rate_import_bandwith
Load and update phone rates in Odoo from a Bandwidth.com Excel file. Upload the .xlsx file and the module creates or updates each rate by dial prefix.
- Base Product Mass AdditionOdoo 12, 14, 15, 16base_product_mass_addition
This technical module provides a reusable product grid that other modules can use to add many products and quantities to a document in one go. It is not usable on its own; it only works when another module inherits it.
- 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 RepairOdoo 12, 13, 14base_repair
Adds a Repair Date and a Repair Duration to repair orders, and lets you see, group and search repair orders by responsible user and repair date, including a calendar view.
- 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 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 DatamodelOdoo 12, 13, 14, 15, 16base_rest_datamodel
Lets developers use DataModel objects as input and output for REST API methods, with automatic validation and OpenAPI documentation.
- Base Rest DemoOdoo 12, 13, 14, 15, 16base_rest_demo
This is a demonstration module that exposes example REST API endpoints for partners and a ping service, showing how to build self-documented web services with the Base REST framework.
- 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 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…
- Suspend securityOdoo 12base_suspend_security
This module lets developers run Odoo code without access rights and record rules being checked, while keeping the original user as the author of the changes. It is a technical helper used by other modules, not a screen users work with.
- 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 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 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 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 PaymentOdoo 12, 13, 14, 16base_ubl_payment
Adds payment information to UBL electronic invoices and credit notes, so exported XML files include how the invoice should be paid (bank transfer, IBAN, due date).
- 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.
- 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 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.
- User profiles exampleOdoo 12base_user_role_profile_example
This is a demonstration module that shows how user profiles and roles work in Odoo. It creates example profiles (Merchant, HR, ERP Settings) and assigns them to the demo user so you can see how permissions are grouped.
- 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.
- Optional validation of VAT via VIESOdoo 12, 13, 14, 15, 16base_vat_optional_vies
Adds a read-only "VIES validation" flag on contacts that records whether their VAT number passed the European VIES check, without blocking you from saving a VAT number that is valid in its own country.
- Base VAT SanitizedOdoo 12, 13base_vat_sanitized
Adds a read-only "Sanitized TIN" field on contacts that stores the VAT number in uppercase and without spaces or special characters. It is a technical helper for other modules that need to compare partners by VAT number.
- 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.
- 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.