OCA modules for Odoo 17
There are 1,994 OCA community modules confirmed in Odoo 17.0: for each one, the branch, the module directory and the installable manifest have been checked on GitHub. Odoo 16 has 3,166. 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 17
See also
Modules for Odoo 17
- Sale Sub StateOdoo 12, 14, 15, 16, 17, 18, 19sale_substate
Adds a secondary status (substate) to quotations and sales orders, so you can track finer steps like "Waiting for legal documents" or "In delivering" on top of the standard Quotation/Sale status.
- Sale Tier ValidationOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_tier_validation
Adds an approval workflow to sales orders and quotations: orders can require one or more validation tiers before they can be confirmed, and printing can be blocked until approval.
- Timesheet details invoice descriptionOdoo 12, 13, 14, 15, 16, 17, 18sale_timesheet_invoice_description
Adds timesheet details (date, time spent, description) to invoice lines generated from sales orders with timesheet-based services, and can split an invoice line into one line per timesheet.
- Sales Timesheet: exclude Timesheet Line from Sale OrderOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_timesheet_line_exclude
Adds a "Non-billable" checkbox on timesheet entries so you can keep a specific timesheet line out of the linked Sale Order, useful for By Task billing.
- Sale Timesheet RoundedOdoo 12, 13, 14, 15, 16, 17, 18sale_timesheet_rounded
Round timesheet quantities per project and use the rounded quantity to compute delivered quantities on sales orders and invoices. Configure rounding unit, method and factor on each project.
- Dates planning in sales order linesOdoo 16, 17, 18, 19sale_timesheet_timeline
Plan start and end dates plus assignees on service lines of a sales order, then carry that planning over to the task created when the order is confirmed. A timeline view and the customer portal show the planning.
- Sale Triple DiscountOdoo 12, 14, 15, 16, 17, 18sale_triple_discount
Lets users enter up to three percentage discounts on each sale order line, with the total discount calculated automatically and carried over to the invoice and the printed quotation.
- Sale Validity Auto-CancelOdoo 13, 14, 15, 16, 17, 18, 19sale_validity_auto_cancel
Automatically cancels expired quotations after a configurable grace period. You set the number of days in Sales settings and can exclude specific customers from auto-cancellation.
- Sale - Product variantsOdoo 13, 16, 17, 18, 19sale_variant_configurator
This module lets you add products to a sales order by choosing a product template and its attributes, and the actual product variant is created automatically when the order is confirmed or when a line is added to a confirmed order.
- Sales Team Invoiced Target DomainOdoo 15, 17sales_team_invoiced_target_domain
Lets you define a custom filter (domain) that controls which customer invoices and refunds are counted in the 'Invoiced' amount shown on Sales Teams.
- Sales Team Operating UnitOdoo 12, 13, 14, 15, 16, 17, 18, 19sales_team_operating_unit
Adds an Operating Unit to Sales Teams, so each team can be linked to a business unit. Users only see the sales teams belonging to the operating units they are allowed to access.
- Sales documents permissions by channels (teams)Odoo 12, 13, 14, 15, 16, 17, 18, 19sales_team_security
Adds a new sales permission group, "User: Team Documents Only", so users only see contacts linked to their sales team or with no salesman, and automatically keeps salespeople as followers on company and invoice/delivery contacts.
- CRM documents permissions by teamsOdoo 14, 15, 17sales_team_security_crm
Adds record-level access rules so sales team managers only see CRM leads, activities and sales teams that belong to their own teams (or are unassigned).
- Sale documents permissions by teamsOdoo 14, 15, 16, 17, 19sales_team_security_sale
Adds record-level access rules so that users with the "Team Documents Only" sales permission can only see quotations, sales orders and their lines that belong to their own sales teams or that they personally own.
- Scheduler Error MailerOdoo 12, 13, 14, 15, 16, 17, 18, 19scheduler_error_mailer
Sends an automatic e-mail to the scheduler's responsible user whenever a scheduled action (cron) fails, including the error message and details of the task. Each scheduled action gets an 'Error E-mail Template' field to choose which e-mail is sent.
- Scrap Reason CodeOdoo 12, 13, 14, 15, 16, 17, 18, 19scrap_reason_code
Lets you define scrap reason codes with an optional default scrap location and allowed product categories, then pick a reason code when scrapping products in Odoo.
- SentryOdoo 12, 13, 14, 15, 16, 17, 18, 19sentry
This module connects your Odoo server to Sentry so that technical errors and warnings are automatically reported to your Sentry account. It is configured through the Odoo configuration file, not through screens in Odoo.
- Sequence from Python expressionOdoo 13, 14, 15, 16, 17, 18, 19sequence_python
Lets you build sequence numbers with a Python formula instead of a plain counter, so you can create alphanumeric codes, random values or UUIDs. A new 'Python Code' tab appears on sequence forms with a live preview.
- Reset Sequences on selected period rangesOdoo 12, 13, 14, 15, 16, 17, 18, 19sequence_reset_period
Lets you choose how often a sequence's numbering period resets — daily, weekly, monthly or yearly — instead of only yearly. The reset period is set on each sequence and used automatically when new number ranges are created.
- Server Action LoggingOdoo 15, 16, 17server_action_logging
Adds logging around the execution of server actions in Odoo, recording when an action starts and when it finishes with its duration. A new 'Enable SQL Debug' option on the server action form also logs the SQL queries run during that action.
- Mass EditingOdoo 16, 17, 18, 19server_action_mass_edit
Lets users edit many records at once from a list view: you configure a 'Mass Edit Records' server action that lists the fields to change, then a pop-up wizard applies the new values to all selected records.
- Server Actions - NavigateOdoo 12, 13, 14, 16, 17, 18, 19server_action_navigate
Adds a new "Navigate" server action type that lets you jump from a selection of records to a list of related records, following a chain of relational fields.
- server configuration environment filesOdoo 12, 13, 14, 15, 16, 17, 18, 19server_environment
Lets administrators move sensitive or environment-specific settings (paths, credentials, server addresses) out of the Odoo database and into configuration files or environment variables, and view the active configuration from a dedicated screen.
- server_environment_autocreate
Automatically creates records in Odoo when a matching configuration section is found in the server environment file, using the server_environment module.
- Server Environment Data EncryptionOdoo 12, 14, 16, 17, 18server_environment_data_encryption
Lets administrators store environment-specific configuration values (like API keys or credentials) in encrypted form inside Odoo, and edit them for each environment from the production server.
- Server Environment Ir Config ParameterOdoo 12, 13, 14, 15, 16, 17, 18, 19server_environment_ir_config_parameter
Lets Odoo system parameters be driven by the server configuration file instead of the database. Parameters defined there are marked as environment-defined and become read-only in the interface.
- Store sessions in DBOdoo 13, 14, 15, 16, 17, 18, 19session_db
Stores Odoo web user sessions in a PostgreSQL database instead of on the server's filesystem, so several Odoo servers can share the same logins without a shared disk.
- Shipment AdviceOdoo 13, 14, 16, 17, 18shipment_advice
Plan, load, and validate truck shipments from a single Shipment Advice record, tracking what is planned versus what is actually loaded, and closing the related deliveries or receptions automatically.
- Sign OcaOdoo 14, 15, 16, 17, 18, 19sign_oca
Lets you prepare PDF documents inside Odoo, place signature, text and check fields on them, and send them to partners for electronic signature through a secure portal link.
- Slow SQL Statement LoggerOdoo 12, 13, 14, 17slow_statement_logger
Logs slow SQL statements so administrators can spot database queries that take too long. It adds no menus or screens; it works in the background.
- Social Media AdvertisingOdoo 17social_media_advertising
Manage social media advertising in Odoo: mirror advertising accounts, campaign groups, campaigns and ads from any social media, and link them to the posts they promote.
- social_media_advertising_linkedin
Manage LinkedIn Ads from Odoo: import and create campaign groups, campaigns and sponsored creatives, track their LinkedIn statuses and budgets, and see their performance statistics.
- Social Media BaseOdoo 17social_media_base
Lets users link social media accounts, prepare and schedule posts to publish on them, and follow daily statistics (likes, comments, shares, clicks, impressions) per account and per marketing campaign. It is the shared foundation that the individual social…
- Social Media CalendarOdoo 17social_media_calendar
Adds a calendar view to Social Posts so you can see each post on the day it is planned or was published, coloured by its status. Clicking a day creates a new post already scheduled for that date.
- Social Media LinkedinOdoo 17social_media_linkedin
Connect LinkedIn company pages to Odoo so users can publish posts with images or a video and keep daily page statistics. Personal LinkedIn profiles are not supported.
- Social Media LinkedIn SyncOdoo 17social_media_linkedin_sync
Imports a LinkedIn page's publications into Odoo, together with their images, videos, comments and reactions, and keeps them up to date by checking whether the page has moved since the last import.
- Social Media SyncOdoo 17social_media_sync
Imports into Odoo the posts an account already published on social media, along with their figures, comments and reactions, so the social dashboard shows the full history and not just what Odoo itself published.
- Social Media XOdoo 17social_media_x
Connect X (Twitter) accounts to Odoo and publish posts with images or videos directly from the social dashboard, then read back the likes, impressions, replies, reposts and quotes of each publication.
- Social Media X SyncOdoo 17social_media_x_sync
Brings an X account's existing timeline into Odoo: its posts, their figures, their media and their comment threads, so users can read, like, reply to and delete comments from Odoo.
- Spec Driven ModelOdoo 12, 13, 14, 15, 16, 17, 18spec_driven_model
Lets Odoo models be generated from XML schemas and exchange data with XML files in both directions, turning parsed XML into Odoo records and Odoo records back into XML.
- Spreadsheet Dashboard OcaOdoo 16, 17, 18, 19spreadsheet_dashboard_oca
Lets you build and edit Odoo spreadsheet dashboards with the OCA spreadsheet editor, turn any spreadsheet into a dashboard, and list, copy or revoke dashboard share links.
- Spreadsheet OcaOdoo 16, 17, 18, 19spreadsheet_oca
Lets users create, edit and share spreadsheets inside Odoo Community, with collaboration, access rights, tags and import of pivot/list data into a spreadsheet.
- SQL ExportOdoo 12, 14, 15, 16, 17, 18sql_export
Lets users run read-only SQL queries on Odoo data and download the results as CSV files. Queries can include user-entered parameters (dates, IDs, categories) before exporting.
- SQL Export ExcelOdoo 12, 14, 15, 16, 17, 18sql_export_excel
Adds an Excel option to SQL exports, so query results can be downloaded as .xlsx files or injected into a pre-configured Excel template.
- SQL Export MailOdoo 12, 14, 15, 16, 17, 18sql_export_mail
Send the CSV result of a saved SQL query by email to selected users or partners, either manually or automatically on a schedule.
- SQL Request AbstractOdoo 12, 13, 14, 15, 16, 17, 18, 19sql_request_abstract
Provides the shared building blocks used by other modules to store, check and safely run read-only SQL queries in Odoo. It adds a SQL Request security category with User and Manager groups and a form where a query can be written, validated and previewed.
- Stock Account Change Quantity ReasonOdoo 12, 13, 17stock_account_change_qty_reason
Lets you attach specific input and output accounting accounts to stock quantity change reasons, so inventory adjustments and quantity changes post to the accounts you choose instead of the default ones.
- Stock account move reset to draftOdoo 16, 17, 18stock_account_move_reset_to_draft
Allows resetting a posted vendor bill to draft even when stock valuation layers exist due to price differences, and automatically creates offsetting valuation entries.
- Stock Account Product Run FIFO HookOdoo 13, 14, 15, 16, 17, 18, 19stock_account_product_run_fifo_hook
Adds extension points to the FIFO stock valuation process so other modules can enrich the data stored on stock moves during valuation. It does not add any screen or menu on its own.
- stock_account_show_automatic_valuation
This module brings back the 'Automatic Accounting' option in Inventory settings so you can turn on automatic stock valuation in Odoo Community Edition.
- Stock AnalyticOdoo 12, 13, 14, 15, 16, 17, 18, 19stock_analytic
Lets you attach analytic accounts (cost/revenue analysis tags) directly on stock moves, move lines, pickings and scrap orders, so the accounting entries created from inventory movements carry the right analytic distribution.
- Stock Analytic RuleOdoo 17stock_analytic_rule
Create rules that automatically generate analytic accounting entries when stock moves are completed, based on source and destination locations. Amounts can be computed from product prices or product category averages.
- Stock archive constraintOdoo 12, 13, 14, 15, 17, 18stock_archive_constraint
Stops users from archiving products or storage locations that still have stock on hand or unfinished stock operations, showing a clear error message instead.
- Automatic Move ProcessingOdoo 13, 14, 15, 16, 17stock_auto_move
Adds an "Automatic move" option on stock moves and warehouse rules so that transfers are validated automatically as soon as the products are available, without an operator having to do it.
- Stock available to promiseOdoo 12, 13, 14, 15, 16, 17, 18, 19stock_available
Adds an "Available to promise" quantity and a "Potential" quantity to products, shown as buttons on the product form, columns in product lists and a line on the product kanban card, so users can see how much stock can safely be offered to customers.
- Stock Available Base Exclude LocationOdoo 14, 16, 17, 18stock_available_base_exclude_location
This technical base module lets other Odoo modules exclude specific stock locations when calculating a product's available quantity. It provides a reusable mixin to store excluded locations or a location filter, and adjusts the product availability…
- Ignore planned receptions in quantity available to promiseOdoo 12, 13, 14, 15, 16, 17, 18, 19stock_available_immediately
Changes how the quantity available to promise is calculated for storable products: planned incoming goods are no longer counted, so the available figure reflects only what is physically on hand minus outgoing needs.
- Consider the production potential is available to promiseOdoo 12, 13, 14, 15, 16, 17stock_available_mrp
Adds the quantity you could still manufacture from components on hand to the "available to promise" figure of manufactured products, so sales and stock screens show a more realistic quantity you can promise.
- Stock Change Quantity ReasonOdoo 12, 13, 14, 15, 17, 18stock_change_qty_reason
Lets you record a reason whenever you change a product's quantity in inventory adjustments, either by typing free text or by picking from a list of predefined reasons.
- Stock Cycle CountOdoo 12, 13, 14, 15, 16, 17, 18stock_cycle_count
Plan and run cycle counts (partial stock counts) in your warehouse based on rules, instead of doing full physical inventories. Odoo proposes which locations to count, creates the inventory adjustments, and tracks counting accuracy.