OdooWiki OCA HUB

OCA/server-tools

OCA community repository with 116 Odoo modules confirmed in the OdooWiki catalogue (versions 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0). Reviewed on 2026-11-03.

Open on GitHub

Confirmed modules per version

12.0
57 modules
13.0
54 modules
14.0
81 modules
15.0
47 modules
16.0
69 modules
17.0
46 modules
18.0
59 modules
19.0
30 modules
20.0
1 module

Modules in the repository

  • attachment_delete_restrict

    Control who is allowed to delete attachments in Odoo. Set a global rule, or a specific rule per document type, so only the creator, admins, or chosen users and groups can remove files.

  • attachment_logging

    Shows who uploaded each attachment and when, directly in the chatter attachment preview, and can post a note in the record's chatter whenever a file is added or removed.

  • Attachment QueueOdoo 12, 14, 16, 17, 18
    attachment_queue

    Adds an attachment queue that processes files in the background, with status tracking, manual run/reschedule buttons, and failure email notifications.

  • attachment_queue_email

    Automatically turn email attachments received by an incoming mail server into Attachment Queue files, based on rules you define (sender, recipient, subject, file extension).

  • Attachment SynchronizeOdoo 12, 14, 16, 18
    attachment_synchronize

    Create scheduled tasks that automatically import files from an external storage backend into Odoo attachments, or export Odoo attachments back to that backend, with options to rename, move, delete or skip duplicates.

  • Attachment Unindex ContentOdoo 12, 13, 14, 15, 16, 18, 19
    attachment_unindex_content

    Stops Odoo from storing the text content of attachments in the database, saving space and avoiding duplicate data. Existing stored content is cleared when the module is installed.

  • Audit LogOdoo 12, 13, 14, 15, 16, 17, 18, 19
    auditlog

    Lets administrators record who created, read, changed, deleted or exported records of chosen models, and review those traces, including the web requests and user sessions behind them.

  • Database Auto-BackupOdoo 12, 13, 14, 15, 16, 17, 18, 19
    auto_backup

    Create and schedule automatic database backups, stored on the server disk or on a remote SFTP server, with optional automatic deletion of old backup files.

  • auto_backup_fs_file

    Adds a new 'Fs File' backup method to the database backup configuration, letting Odoo store backups as files on a configured filesystem and notify a responsible user when a backup is ready to download.

  • autovacuum_message_attachment

    Create rules that automatically delete old mail messages and attachments after a chosen number of days, to keep the database small. Rules are managed from the Email menu and run by two daily scheduled jobs.

  • Track record changesetsOdoo 12, 13, 14, 15, 16
    base_changeset

    Lets administrators decide which fields of which records must be approved before the change is really saved, instead of being written directly. Pending changes appear in a 'Changes' button on the record form and can be applied or rejected by authorised users.

  • Conditional ImagesOdoo 12, 14, 15, 16, 18
    base_conditional_image

    Lets administrators define reusable images that are automatically shown on records based on conditions, avoiding duplicate image storage. A new "Conditional Images" menu appears under Settings > Technical.

  • base_contextvars

    Technical patch that changes how Odoo stores its internal database environment, making it work correctly with asynchronous Python code. It adds no screens, menus or business features for end users.

  • Base Cron ExclusionOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_cron_exclusion

    Lets you mark scheduled actions (automated tasks) as mutually exclusive so they never run at the same time. You pick the other scheduled actions that must not overlap with the one you are editing.

  • Base Custom InfoOdoo 12, 13, 14, 15
    base_custom_info

    Lets you add extra fields to any Odoo record without changing the database, by defining templates of properties and filling in values on records such as partners.

  • base_deterministic_session_gc

    Replaces Odoo's random session cleanup with a scheduled, predictable one. Sessions inactive for more than a week are deleted by a recurring job instead of at random moments.

  • base_domain_inverse_function

    Adds helper functions that split a normalized Odoo search domain into its individual parts, so developers can modify one part and rebuild the domain.

  • Exception RuleOdoo 12, 13, 14, 15, 16, 17, 18, 19
    base_exception

    Lets administrators define custom exception rules that flag or block records on any Odoo model, and shows users a popup listing the outstanding exceptions before they continue.

  • 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_fontawesome_web_editor

    Makes FontAwesome 6.7.2 and newer icons appear correctly in Odoo's web editor, so users can pick and insert icons when editing web pages and content.

  • Force Record No-updateOdoo 14, 16, 17, 18
    base_force_record_noupdate

    Adds a "Force No-Update" checkbox on models so that existing and future records linked to those models are protected from being overwritten by module updates.

  • base_future_response

    Technical backport that lets Odoo 14 code set cookies on the final web response before that response is built, matching a mechanism available in Odoo 16.

  • base_generate_code

    Provides a reusable way to automatically generate short, human-readable codes (like barcodes) for records, avoiding confusing characters such as O, 0, I and L. Other modules can use it to fill in a code field automatically when a record is created.

  • base_import_default_enable_tracking

    When importing data into Odoo, the "Track history during import" option is switched on by default, so imported records keep a history of changes without you having to tick the box yourself.

  • base_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.

  • Import from OdooOdoo 13, 14, 16
    base_import_odoo

    Connect Odoo to another Odoo database and import records from it, with rules for handling duplicates, field mappings and automatic scheduled imports.

  • Base JSONifyOdoo 12, 13, 14
    base_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, 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.

  • base_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.

  • base_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).

  • Base Many2many Custom FieldOdoo 12, 13, 14, 16, 17, 18
    base_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.

  • Update Restrict ModelOdoo 12, 14, 15, 16, 17, 18
    base_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.

  • Multiple images baseOdoo 12, 14, 15, 16, 18
    base_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.

  • Improved Name SearchOdoo 13, 14, 16, 17, 18
    base_name_search_improved

    Makes Odoo's record lookup more forgiving: typing words in any order still finds the record, and administrators can add extra fields (like city or phone) to search into.

  • base_name_search_multi_lang

    Lets users find records by typing a name in any installed language, not just the one they are currently using. A checkbox on each model's settings turns this multi-language search on or off.

  • base_order_by_related

    Allows list views to be sorted by related fields that are not stored in the database, such as a customer's country shown on a sales order.

  • 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.

  • 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.

  • base_report_auto_create_qweb

    Create QWeb report templates automatically when you add a report in Odoo, and duplicate an existing report with a custom suffix, including its linked QWeb views.

  • 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_search_multi

    Lets users search several values at once in any Odoo list view by typing them inside curly brackets, instead of adding them one by one.

  • base_sequence_default

    Lets you give any text field on any record a default value taken from an Odoo sequence, so new records automatically get an incremental reference. You set it up by creating a sequence whose code follows a special naming pattern.

  • 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 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 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_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 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_translation_field_label

    This module makes the Translations list easier to read by showing the human-friendly label of the translated field instead of the technical field name, which is hidden by default.

  • 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_video_link

    Lets you store videos (with provider, identifier, URL and thumbnail) in Odoo and link them to any record that uses the video mixin. A Video menu is added under the Custom menu.

  • base_view_full_arch

    Adds a read-only "View Architecture" field on view records that shows the fully combined XML of a view, including all views that inherit from it. Useful for developers and analysts to inspect how a view is actually built.

  • 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.

  • 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.

  • Company CountryOdoo 12, 13
    company_country

    This module is deprecated and adds no new screens or features. It only existed to set the country on the main company before the accounting module was installed, so the right localisation was chosen.

  • Configuration HelperOdoo 12, 13, 14
    configuration_helper

    This is a developer-only helper module that does not add any screen or feature for end users. It provides a reusable base model so other modules can build configuration settings screens with less duplicated code.

  • cron_daylight_saving_time_resistant

    Adds a checkbox on scheduled actions (cron jobs) so they keep running at the same local time even when daylight saving time changes the clock by one hour.

  • cron_inactivity_period

    Lets you define daily time windows during which a scheduled action (cron job) is skipped, so jobs do not run during maintenance or other blocked hours.

  • database_autovacuum_tuning

    Automatically tunes PostgreSQL autovacuum settings on busy tables and keeps a log of what was changed. Administrators set the thresholds in Odoo settings; a daily job applies them.

Data imported from GitHub: every listed version is confirmed (branch, module directory and installable manifest checked on the review date). Active support and OCA certification are not assessed.