OCA technical tools and administration modules for Odoo
Interface improvements, contacts, multi-company, approvals, permissions, reports, email, authentication and server utilities: the technical foundation many other modules rely on. The catalogue has 1,100 modules in this area, 13 of them confirmed in Odoo 20.0 (reviewed on 2026-11-03).
Confirmed modules per version
OCA repositories in this area
- web 157
- partner-contact 148
- server-tools 112
- multi-company 79
- social 76
- server-ux 58
- operating-unit 57
- mail 56
- reporting-engine 55
- storage 50
- server-auth 43
- server-backend 25
- geospatial 22
- community-data-files 16
- oca-custom 16
- ai 15
- report-print-send 14
- server-env 14
- tier-validation 14
- sustainability 13
- calendar 11
- server-brand 9
- search-engine 7
- module-composition-analysis 6
- role-policy 6
- version-control-platform 6
- data-protection 5
- spreadsheet 5
- apps-store 3
- automation 1
- infrastructure 1
Other areas
- Accounting and finance
- Sales
- CRM and marketing
- Purchases
- Inventory and logistics
- Manufacturing and maintenance
- Products and catalogue
- Human resources
- Projects and timesheets
- Field service and customer support
- Point of sale
- Website and e-commerce
- Country localisations
- Contracts and documents
- Integrations, EDI and connectors
- Industries and verticals
Modules in this area
- Auth API key groupOdoo 14, 15, 16, 17, 18, 19auth_api_key_group
Lets administrators create groups of API keys and assign each API key to one or more groups. Grouping alone does not change access; other modules can use these groups to restrict services or records.
- Auth API key server environmentOdoo 14, 15, 16, 17, 18auth_api_key_server_env
Lets you store API keys in the server configuration file instead of the database, so each environment (test, production) uses its own keys and they are not mixed when restoring a database.
- Dynamic groupsOdoo 14auth_dynamic_groups
Lets you define groups whose members are chosen automatically by a condition written in Python, evaluated each time a user logs in.
- Authenticate via HTTP Remote UserOdoo 12, 13auth_from_http_remote_user
Lets Odoo trust an external web server that already authenticated the visitor, so users are signed in automatically without typing an Odoo password.
- Auth JWTOdoo 13, 14, 16, 17, 18auth_jwt
Lets Odoo accept JWT bearer tokens (or a secure cookie) as a login method for API/web routes, configured through JWT Validator records. Administrators define validators that check token signature, audience and issuer, then map the token to an Odoo user.
- Auth JWT TestOdoo 13, 14, 16, 18auth_jwt_demo
Demo/test module that adds sample web endpoints to try out JWT authentication in Odoo, returning the logged-in user's name and email as JSON.
- Auth Jwt Server EnvOdoo 16auth_jwt_server_env
Lets administrators configure JWT authentication settings (secret key, audience, issuer, public key URI) through server environment files instead of entering them in Odoo.
- LDAP Attribute SyncOdoo 12auth_ldap_attribute_sync
Lets administrators map LDAP directory attributes to user fields in Odoo, so user details are filled in automatically when accounts are created or when users log in.
- LDAPS authenticationOdoo 12, 13, 14, 15, 16, 17auth_ldaps
Adds LDAPS (LDAP over SSL) support to Odoo's LDAP authentication, with two new options on the LDAP server configuration: 'Use LDAPS' and 'Skip certificate validation'.
- Auth Oauth AutologinOdoo 13, 14, 15, 16, 17auth_oauth_autologin
Automatically redirects users to the single enabled OAuth provider's login page, hiding the standard Odoo login screen. Administrators can mark one provider as the automatic login provider.
- OAuth Filter by DomainOdoo 16, 18auth_oauth_filter_by_domain
Lets you restrict each OAuth login provider to specific web domains, so only the providers that match the domain the user is visiting are shown on the login page.
- Auth Oauth Login FieldOdoo 18auth_oauth_login_field
When users sign up or log in through an OAuth provider, this module uses the login value returned by the provider instead of the email address, so accounts can have a login that differs from the email.
- OAuth Multi TokenOdoo 12, 13, 14, 15, 16, 17, 18, 19auth_oauth_multi_token
Allows the same OAuth account to be used on several devices at once by storing one access token per connection. Administrators can set a maximum number of simultaneous connections and clear a user's tokens.
- Auth OAuth ROPCOdoo 16auth_oauth_ropc
Lets users sign in to Odoo with their username and password validated against an external OAuth provider, instead of only Odoo's own password. Administrators configure the provider under Settings > Users.
- Authentication OpenID ConnectOdoo 12, 13, 14, 15, 16, 17, 18, 19auth_oidc
Lets users sign in to Odoo with an OpenID Connect provider (such as Azure AD or Keycloak) instead of a local password, using either the authorization code flow or the implicit flow.
- Auth Oidc EnvironmentOdoo 14, 16, 18auth_oidc_environment
Lets administrators keep the OIDC/OpenID Connect client ID and client secret in server environment files instead of typing them in Odoo, so authentication settings can be managed outside the database.
- SAML2 AuthenticationOdoo 12, 13, 14, 15, 16, 17, 18, 19auth_saml
Lets users sign in to Odoo through an external SAML2 identity provider (single sign-on), and lets administrators configure providers, user matching and automatic user creation from the Odoo interface.
- Auth SAML environementOdoo 14, 15, 18auth_saml_environment
Lets administrators configure SAML single sign-on settings (identity provider metadata, certificates, entity ID) from server environment configuration files instead of typing them in Odoo, and adds file-path fields for the SAML certificates.
- Inactive Sessions TimeoutOdoo 12, 13, 14, 15, 16, 17, 18, 19auth_session_timeout
Automatically logs out users whose Odoo session has been inactive for a configurable delay (2 hours by default), while keeping certain URLs from counting as activity.
- Auth Signup Partner CompanyOdoo 15auth_signup_partner_company
When a new portal user signs up, this module assigns the current company to both the new user and their linked contact, instead of leaving the contact without a company.
- Verify email at signupOdoo 12, 13, 14, 15, 16, 17, 18auth_signup_verify_email
New users signing up from the public page no longer choose a password: they only enter an email address, which is validated, and they set their password later from the activation email.
- MFA SupportOdoo 12auth_totp
Lets users protect their Odoo account with an authenticator app (MFA/TOTP). After the normal password login, they enter a six-digit code from their app, and can mark a device as trusted for 30 days.
- auth_totp_enforce
Forces internal users to set up an authenticator app (two-factor authentication) before they can access Odoo. Users who are not exempt are held on a setup page at login until they scan a QR code and enter a valid 6-digit code.
- auth_totp_password_security
Automatically installed bridge that makes the two-factor authentication module and the password security module work together, forcing users with an expired password to set a new one right after they pass the MFA step.
- auth_u2f
Adds two-step verification with a physical U2F security key (like a YubiKey) to Odoo logins. Users can register keys, choose a default one, and must tap it after entering their password.
- Case Insensitive LoginsOdoo 12, 13, 14, 15, 16, 17, 18, 19auth_user_case_insensitive
Makes user logins case insensitive, so users can sign in regardless of capitalisation. Existing logins are converted to lowercase when the module is installed.
- Database Auto-BackupOdoo 12, 13, 14, 15, 16, 17, 18, 19auto_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 FileOdoo 17auto_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.
- Automation OcaOdoo 16, 17, 18automation_oca
Lets users build multi-step automations on any chatter-enabled model: send emails, create activities or run server actions, chained by triggers such as mail opened, clicked, replied or activity finished. Each run is tracked per record with graphs and click…
- AutoVacuum Mail Message and AttachmentOdoo 12, 13, 14, 16, 18autovacuum_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.
- Barcode action launcherOdoo 12, 13, 14, 15, 16, 17, 18, 19barcode_action
Lets users scan a barcode to trigger an action in Odoo, such as opening the partner whose Internal Reference matches the scanned code. A demo menu "Find partners" is provided.
- Base Action Visibility RestrictionOdoo 13, 14base_action_visibility_restriction
Lets administrators hide Server Actions and Window Actions from specific user groups by listing those groups as "Excluded Groups" on the action itself.
- base_action_visibility_restriction_domain
Lets administrators restrict who can run a specific action and on which records, by adding group and record-filter rules to window and server actions.
- Base Archive DateOdoo 13, 14, 15base_archive_date
Adds two read-only fields to every Odoo model that has an active flag: the date a record was last archived and the user who archived it. These fields are filled in automatically when a record is archived.
- Archive SecurityOdoo 16base_archive_security
Adds a new user group called "Can archive records" that controls who is allowed to archive or unarchive records in Odoo. Users without this group no longer see the archive/unarchive action and are blocked if they try it.
- Bank from IBANOdoo 12, 13, 14, 15, 16, 17, 18, 19base_bank_from_iban
Automatically fills in the bank of a bank account from its IBAN number, creating or completing the bank record when needed. It also adds a bank code field to banks so they can be matched by IBAN.
- Base Binary URL ImportOdoo 13, 16base_binary_url_import
Add a wizard that downloads files from URLs and stores them into any binary field of existing records, for one record or many at once. Useful for mass-loading PDFs, texts or other documents that the standard CSV import cannot handle.
- Base Cancel ConfirmOdoo 14, 15, 16, 17, 18, 19base_cancel_confirm
Provides a reusable cancel-confirmation wizard that asks users to confirm a cancellation and optionally record a reason, who cancelled and when. It is a technical building block: other modules must be adapted to use it.
- Track record changesetsOdoo 12, 13, 14, 15, 16base_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.
- Base Comments TemplatesOdoo 12, 13, 14, 15, 16, 17, 18, 19base_comment_template
Create reusable comment templates that can be printed on documents and reports, with rules deciding which template appears for which company, partner or record.
- base_company_legal_info
Adds legal name and legal type fields to companies and prints them automatically in the footer of every PDF report, so official documents show the correct legal identity of your company.
- Conditional ImagesOdoo 12, 14, 15, 16, 18base_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.
- Contextvars PatchOdoo 14base_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.
- Translate Country StatesOdoo 12, 13, 14, 15, 16, 17, 18, 19base_country_state_translatable
Makes country state names translatable, so users can enter a different state name for each language installed in Odoo.
- Base Cron ExclusionOdoo 12, 13, 14, 15, 16, 17, 18, 19base_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 Currency ISO 4217Odoo 12, 13, 14, 15, 16, 17, 18base_currency_iso_4217
Adds two ISO 4217 fields to currencies: the official numeric code and the full currency name. It also fills in these values, plus the correct number of decimal places, for the currencies shipped with Odoo.
- Add custom filters in standard filters and group by dropdownsOdoo 13, 14, 15, 16, 18base_custom_filter
Lets administrators define reusable custom filters, group-by options and search fields that appear inside the standard Filters and Group By dropdowns of any Odoo model, optionally restricted to specific user groups.
- Base Custom InfoOdoo 12, 13, 14, 15base_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.
- Default Language TranslationOdoo 12base_default_lang_translate
Lets you pick one installed language as the "default language" used as the source for translations, so edits made in that language are also stored as the base value and other translations are flagged for review.
- Deterministic Session GCOdoo 12, 13, 14base_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 module for DNS infrastructureOdoo 16, 18base_dns_infrastructure
Store and organise DNS domain zones and their DNS records directly in Odoo, with owners, renewal dates, record types and automatic validation of record values.
- Base Domain Inverse FunctionOdoo 13, 16base_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.
- Restrict records duplicatingOdoo 12, 13, 15base_duplicate_security_group
Adds a hidden security group called "Duplicate records" that controls whether a user can use the Duplicate action on records. Users without this group no longer see the Duplicate option in form views.
- Exception RuleOdoo 12, 13, 14, 15, 16, 17, 18, 19base_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 Export AnonymizeOdoo 18base_export_anonymize
Marks specific fields to be replaced with a masked value when users in the "Anonymize data in export" group export records, so sensitive data never leaves Odoo in spreadsheets.
- Manage model export profilesOdoo 12, 13, 14, 15, 16, 17, 18, 19base_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, 19base_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.
- External Database Source - MSSQLOdoo 12, 13, 15, 16, 18base_external_dbsource_mssql
Adds Microsoft SQL Server as a connectable external database type in Odoo, so users can configure MSSQL connections and run SQL queries against them from the External Database Sources screen.
- External Database Source - MySQLOdoo 12, 13, 15, 16, 17, 18base_external_dbsource_mysql
Adds MySQL as a connector option for external database sources in Odoo, so users can connect to and query a MySQL database from the External Database Sources screen.
- base_external_dbsource_sap_hana
Adds SAP HANA as a connector option when creating external database sources in Odoo, so users can query SAP HANA databases directly from Odoo.