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
- Sale Stock Available Info PopupOdoo 12, 13, 15, 16, 17, 19sale_stock_available_info_popup
Adds an 'Available to promise' quantity to the stock information popover shown on sale order lines, so salespeople see how much of a product can actually be promised for the line's scheduled date.
- Sale Stock Delivery AddressOdoo 12, 13, 14, 15, 18, 19sale_stock_delivery_address
Set a different delivery address on each sales order line, so one order can ship to several addresses. The system then splits the deliveries and uses the stock location linked to each address.
- Sale Stock Info PopupOdoo 12sale_stock_info_popup
Adds an information icon on each sales order line that opens a pop-up showing the product's stock availability, so salespeople can see if the ordered quantity can be delivered on time.
- Sale Stock Last DateOdoo 12, 13, 15, 18sale_stock_last_date
Shows the date of the last completed outgoing delivery on each sale order line, and lets you filter and group sales analysis by that date.
- Operating Unit in Sales StockOdoo 12, 14, 15, 16, 17, 18sale_stock_operating_unit
Keeps sales orders and their deliveries aligned with the correct operating unit by automatically choosing a matching warehouse and blocking mismatched combinations.
- Sale Stock Picking BlockingOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_stock_picking_blocking
Lets you block the creation of deliveries for a sales order and record the reason, so no stock is reserved or moved until someone releases the block.
- Sale Stock Picking NoteOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_stock_picking_note
Adds two note fields to customers, sales orders and delivery orders: an internal picking note and a customer comment that is printed on the delivery slip.
- Sale Stock Return RequestOdoo 12, 13, 14, 15, 18sale_stock_return_request
Create return requests directly from a sales order and link customer returns to their original sales orders. Track which sales are involved in a return and jump back to them from the return request.
- Sale Stock Secondary UnitOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_stock_secondary_unit
When a sale order is confirmed, the secondary unit and quantity chosen on the sale order line are copied onto the related stock moves, so warehouse documents show the same secondary unit information as the sale.
- Sale Stock Sourcing AddressOdoo 12, 13sale_stock_sourcing_address
Shows, on each sales order line and invoice line, the address of the warehouse that will actually supply the goods. This helps users see where a delivery will be sourced from before confirming the order.
- 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.
- sale_timesheet_existing_project
Lets you pick an existing project on a sales order so that tasks for service products are created inside that project instead of a new one.
- Sales Timesheet: HookOdoo 12sale_timesheet_hook
This module adds flexibility to how timesheets are billed when creating a sales order from a project. It also adds a check to ensure timesheet lines are linked to a valid sales order item.
- 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.
- sale_timesheet_limit_date
Adds a 'Timesheet Limit Date' on sales orders and invoices so only timesheets up to that date are counted and invoiced. The date is copied to the invoice when it is created and then cleared from the sales order.
- 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 Order Line SyncOdoo 12, 13, 14sale_timesheet_order_line_sync
When you change the sale order line on a task, this module updates the sale order line on that task's timesheet lines that have not yet been invoiced.
- Sales Timesheet PurchaseOdoo 12sale_timesheet_purchase
Adds Purchase Orders and Vendor Bills buttons to the Project Overview (timesheet plan) screen, so users can jump straight from a project to the related purchase orders and vendor bills.
- 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.
- Sales Timesheet: exclude Task from Sale OrderOdoo 12, 13, 15, 16sale_timesheet_task_exclude
Adds an "Exclude from Sale Order" checkbox on tasks so you can keep a task and its timesheets out of the linked Sale Order.
- 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 ValidityOdoo 12, 13, 14sale_validity
Set a default validity delay for quotations and sale orders. Odoo automatically fills the validity date based on the order date plus the configured number of days.
- Sale WishlistOdoo 12, 13, 14, 15, 16, 18, 19sale_wishlist
Adds a "Wishlist" type to product sets, so you can save lists of products for a customer and see how many wishlists each contact has.
- 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.
- 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.
- Check Digit on SequencesOdoo 12, 13, 14, 15, 16, 18sequence_check_digit
Lets you add an automatic check digit to the end of any sequence number in Odoo, using standard formulas like EAN, Luhn or ISO 7064, so mistyped or swapped characters can be detected.
- 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 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 Environment for Printing ServerOdoo 12, 14, 18server_env_printing_server
Lets administrators store the printing server address, port, user and password in the server environment configuration instead of typing them in Odoo, so connection details can be managed outside the database.
- 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 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_files_sample
This module is an example configuration file repository used together with the server_environment module. It adds no screens or features by itself; it only provides sample environment configuration files.
- 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.
- 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.
- Sms OVH HTTPOdoo 12, 14, 16sms_ovh_http
Lets Odoo send SMS through your own OVH SMS account instead of Odoo's default provider. You enter your OVH account, API user, password and sender name once, and Odoo uses them for outgoing text messages.
- 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.
- 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 Internal MoveOdoo 12stock_account_internal_move
Lets you flag internal stock locations so that moving goods between them creates accounting journal entries, using the valuation in/out accounts set on each location.
- Stock Account Inventory DiscrepancyOdoo 12, 13stock_account_inventory_discrepancy
Shows the monetary value of inventory count differences and blocks inventory adjustments when that value exceeds a threshold you set per warehouse or location.
- stock_account_inventory_force_date
Lets authorized users post inventory adjustments with a past date, and automatically revalues standard-cost products for the quantity change so accounting stays correct.
- Stock account moves with Operating UnitOdoo 12, 13, 15stock_account_operating_unit
When a stock move happens between two internal locations that belong to different operating units, this module automatically creates and posts a journal entry so each operating unit keeps its own accounting. It also blocks moves that would mix different…
- Stock Account Quantity History LocationOdoo 12, 13, 14, 15, 18stock_account_quantity_history_location
Adds location filtering to the stock valuation history report, so users can see the value of stock at a specific date for a chosen location and its sub-locations.
- Stock Account Valuation ReportOdoo 12, 13, 14, 15, 16, 18stock_account_valuation_report
Compare the stock value and quantity from inventory records with the value and quantity recorded in accounting, product by product, and spot differences. A new report under Inventory / Reporting / Dual Inventory Valuation shows both sides side by side.
- Stock AnalysisOdoo 12stock_analysis
Adds a Stock Analysis pivot and graph report under Warehouse > Reporting that shows on-hand quantities per product and per location, with filters for lots, packages, categories and companies.
- 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 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.
- 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.
- 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 Available UnreservedOdoo 12, 13, 14, 15, 16, 18stock_available_unreserved
Shows how much stock is on hand but not reserved for any delivery or move, directly on products and product variants. Adds a button and filters to jump to the unreserved stock quantities.
- Stock BarcodesOdoo 12, 13, 14, 15, 16, 18stock_barcodes
Adds a barcode scanning screen to Odoo stock operations (receipts, deliveries, internal transfers, relocations and inventory counts) for USB/Bluetooth scanners, without needing the Enterprise barcode app.
- Stock Barcodes Automatic EntryOdoo 12, 13, 14stock_barcodes_automatic_entry
After a barcode is scanned in a form, this module automatically clicks the button marked for automatic entry, so users do not have to press it manually.