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
- Rental BaseOdoo 12, 14, 16, 17rental_base
Adds a dedicated Rentals area to Odoo where you can create rental quotations and orders, flag products as rentable, and update rental periods on confirmed orders.
- Repair Order Line SequenceOdoo 17, 18repair_order_line_sequence
Lets you reorder the parts and operations lines inside a repair order by dragging them up or down, so the repair steps appear in the order you want.
- Repair Order TemplateOdoo 17, 18repair_order_template
Create reusable repair order templates that pre-fill the product to repair, warranty status, tags, notes and spare parts when you start a new repair order.
- Repair PickingOdoo 14, 17repair_picking
Configure how repairs are handled in each warehouse: one step, two steps (pick components then repair) or three steps (also store removed components), with automatic internal transfers for adding and recycling components.
- Repair picking after doneOdoo 14, 16, 17, 18repair_picking_after_done
After a repair order is marked as done, you can transfer the repaired product to another location with a stock transfer, either manually from the repair order or automatically if enabled in settings.
- Repair Quality ControlOdoo 16, 17, 18repair_quality_control
Link quality control inspections to repair orders. Inspections can be created manually or automatically when a repair is confirmed or completed, based on company settings and product-level trigger rules.
- Repair Quotation Manual SyncOdoo 17, 19repair_quotation_manual_sync
Repair orders no longer update their quotation automatically: each part carries an Invoiceable flag, and a banner on the quotation offers a Synchronize Lines button to push the changes when you decide.
- Repair RefurbishOdoo 12, 13, 14, 15, 16, 17, 18repair_refurbish
Lets you turn a repaired product into a refurbished product. On a repair order you can flag it for refurbishing, pick the refurbished product and lot, and Odoo automatically records a stock move of the refurbished item when the repair is completed.
- Repair Restrict LotOdoo 17repair_restrict_lot
Adds a Lot/Serial Number field to the parts lines of a repair order, so users can specify which lot or serial number must be consumed for each component.
- Repair ServiceOdoo 17, 18, 19repair_service
Adds a Services tab to repair orders so you can list extra services (with product, description and quantity) that are automatically copied to the sale order created from the repair. If the repair is under warranty, those service lines are priced at zero.
- Repair StockOdoo 14, 16, 17, 18repair_stock
Adds a Transfers smart button to repair orders that shows all stock transfers linked to the repair, and links stock moves back to the repair order that created them.
- Repair Stock Move MenuOdoo 17, 19repair_stock_move_menu
Adds a 'Repair Stock Moves' menu under Inventory reporting that lists all stock moves linked to repair orders, with filters to separate consumed parts from repaired products.
- Repair Sub StateOdoo 17repair_substate
Adds a secondary status (substate) to repair orders, so you can track finer progress inside each repair stage and filter or group repair orders by it.
- Repair TimesheetOdoo 17, 18repair_timesheet
Adds a Timesheets tab to repair orders so users can log hours worked on each repair, and shows the total hours on the repair form and in the repair order list.
- Repair TypeOdoo 14, 15, 16, 17, 18repair_type
Lets you set default source locations for adding, removing and recycling parts on repair operation types, so repair orders automatically pick the right stock locations.
- Repair Type - Product DestinationOdoo 17, 18repair_type_product_destination
Adds a Product Destination Location field to repair orders, automatically filled from the Default Product Destination Location configured on the repair operation type.
- Report Alternative LayoutOdoo 16, 17, 18, 19report_alternative_layout
Adds an alternative layout for printed reports: partner address on the left, company address on the right, plus optional document number, date and remit-to bank details in the header or body.
- Report AsyncOdoo 12, 13, 14, 15, 16, 17, 19report_async
Adds a Report Center where users can run reports immediately or in the background, saving the generated files for later download and optionally emailing a link when the report is ready.
- Base report csvOdoo 12, 13, 14, 15, 16, 17, 18, 19report_csv
Adds a new "csv" report type to Odoo, letting you define reports that download data as CSV files instead of PDF or HTML, with optional character encoding settings.
- Hotel Reservation Management - ReportingOdoo 12, 13, 14, 15, 17, 18, 19report_hotel_reservation
Adds a read-only reporting screen that counts hotel reservations grouped by reservation number and status, shown as a pivot, graph or list. Users find it under Hotel Management > Reports > States By Reservation.
- Restaurant Management - ReportingOdoo 12, 13, 14, 15, 17, 18, 19report_hotel_restaurant
Adds a read-only reporting screen that groups restaurant reservations by their status, so you can see how many reservations are in each state and analyse them in list, graph or pivot views.
- Report layout configurationOdoo 13, 14, 17, 18report_layout_config
Lets you replace the whole header and footer of your Odoo reports with your own images, and adds two ready-made report layouts that use those images.
- Report Printed FlagOdoo 17report_printed_flag
Lets administrators choose which PDF reports mark records as printed, and keeps an audit log of who printed which report on which document. Models that use the provided mixin gain a printed flag, a list of printed report names and a button to view their…
- Py3o Report EngineOdoo 12, 13, 14, 15, 16, 17, 18, 19report_py3o
Lets you build Odoo reports as LibreOffice documents (ODT/ODS/ODP) and print them as PDF, DOC, XLS and other formats. You manage the templates in Odoo and attach them to any report action.
- Report Qweb Element Page VisibilityOdoo 12, 13, 14, 15, 16, 17, 18, 19report_qweb_element_page_visibility
Lets report designers show or hide parts of a QWeb PDF report depending on the page it is printed on, using simple CSS classes like first-page, last-page, single-page or multi-page.
- Report Qweb Field OptionOdoo 16, 17, 18, 19report_qweb_field_option
Lets administrators control how field values appear in PDF reports: set decimal precision for float fields and add display options (widgets) to fields, optionally depending on unit of measure, currency, company or a filter condition.
- Qweb Report With Operating UnitOdoo 12, 13, 14, 15, 16, 17, 18report_qweb_operating_unit
Lets you give each operating unit its own logo, tagline, address/details block and footer, so printed reports show the operating unit's identity instead of the company's.
- Report QWeb ParameterOdoo 12, 13, 14, 15, 16, 17, 18, 19report_qweb_parameter
Adds three new attributes to QWeb report templates so report designers can limit, truncate or validate the length of a value before it is printed. If a value is too short or too long, report generation stops with a clear error message.
- Pdf watermarkOdoo 12, 13, 14, 15, 16, 17, 18, 19report_qweb_pdf_watermark
Adds a watermark (a PDF or image file) to QWeb PDF reports, either set per report, taken from the company settings, or computed by an expression. The watermark is applied to every page of the generated PDF.
- Qweb PDF reports signerOdoo 12, 13, 14, 16, 17, 18report_qweb_signer
Sign Qweb PDF reports with a PKCS#12 digital certificate. Configure a certificate and signing rules per report, and optionally save the signed PDF as an attachment.
- Report SubstituteOdoo 12, 13, 16, 17, 18, 19report_substitute
Lets administrators define rules that automatically replace one report with another when the selected records match a condition, for example to use a different report per company.
- Report Text Format OptionOdoo 16, 17, 18report_text_format_option
Adds encoding and line-ending options to text reports in Odoo, so generated text files can be saved in a specific character set (e.g. cp932) and use CRLF or CR line breaks.
- Report Wkhtmltopdf ParamOdoo 12, 13, 14, 15, 16, 17, 18, 19report_wkhtmltopdf_param
Lets you add extra command-line options to a paper format so PDF reports are generated exactly the way you need them, for example to keep a fixed layout on checks or official forms.
- Base report xlsxOdoo 12, 13, 14, 15, 16, 17, 18, 19report_xlsx
Adds a new XLSX report type to Odoo, so reports can be generated and downloaded as Excel files instead of PDF. It also provides a base class developers use to build custom Excel reports.
- Report xlsx helpersOdoo 12, 13, 14, 15, 16, 17, 18, 19report_xlsx_helper
This module gives developers a ready-made toolkit for building Excel (.xlsx) reports in Odoo, with pre-defined cell formats, automatic sheet-name cleaning and a helper to serve xlsx files over the web.
- XML ReportsOdoo 12, 13, 14, 15, 16, 17, 18, 19report_xml
Adds a new XML report type to Odoo, so reports can be generated as XML files and optionally checked against an XSD schema before download.
- Company ActiveOdoo 12, 16, 17, 18, 19res_company_active
Lets you archive companies from the company form, with a safety check that blocks archiving a company that is still the current company of active users.
- Partner with Operating UnitOdoo 12, 17, 18, 19res_partner_operating_unit
Adds Operating Units to contacts and restricts which contacts each user can see based on their allowed Operating Units. Contacts linked to a user automatically inherit that user's Operating Units.
- res_partner_product_pricelist_operating_unit
Keeps a customer's assigned pricelist consistent with the Operating Units the customer belongs to, blocking pricelists from unauthorized units and filtering the choices shown on the partner form.
- Resource bookingOdoo 12, 13, 14, 15, 16, 17, 18, 19resource_booking
Create bookable appointment types with availability calendars and resource combinations, then let customers or staff book slots that automatically create calendar meetings and detect conflicts.
- Return Merchandise Authorization ManagementOdoo 12, 13, 14, 15, 16, 17, 18, 19rma
Manage Return Merchandise Authorization (RMA) requests for customers: create them from scratch or from a delivery, receive returned goods, send replacements or refunds, and follow everything from a dedicated RMA menu and customer portal.
- Rma LotOdoo 16, 17, 18rma_lot
Lets you record the lot or serial number on a return (RMA), and choose which lot/serial is delivered back or used as replacement, with checks that the serial number is actually available.
- RMA RepairOdoo 16, 17, 18rma_repair
Link RMA (return merchandise authorization) cases to repair orders. Users can create a repair order from an RMA, track it, and only allow return, replacement, or refund once the repair is finished or cancelled.
- Return Merchandise Authorization Management - Link with SalesOdoo 12, 13, 14, 15, 16, 17, 18, 19rma_sale
Lets users create return requests (RMAs) directly from a confirmed sales order, either in Odoo or from the customer portal, and keeps the sales order, deliveries and refunds linked together.
- Disable RPCOdoo 12, 14, 16, 17, 18, 19rpc_helper
This module lets administrators block external RPC (remote) calls to specific Odoo models or methods, or to all methods of a model. It adds a configuration field on each model's form to list the methods to disable.
- Sale Advance PaymentOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_advance_payment
Lets you register advance payments received from a customer directly on a sales order and track how much is still due. The order shows a payment status badge and the remaining amount, and advances are automatically applied when the invoice is posted.
- Sale Analytic TagOdoo 16, 17, 18, 19sale_analytic_tag
Lets users add analytic tags to sale order lines and automatically carries those tags over to the invoice lines created from the order.
- Attached products in salesOdoo 13, 15, 16, 17, 18sale_attached_product
Define attached products on a product so they are added automatically to sales orders when the main product is present. Attached lines follow the main line quantity and are removed when the main product is removed.
- Sale auto remove zero quantity linesOdoo 16, 17, 18sale_auto_remove_zero_quantity_lines
Adds a company-level setting that automatically deletes sales order lines with zero quantity (and empty note lines) when a sales order is confirmed, leaving a message in the order's chatter.
- Sale Automatic WorkflowOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_automatic_workflow
Lets you define automatic workflows that Odoo applies to sales orders on a scheduled job: confirm orders, send confirmation emails, create and post invoices, lock orders and register payments, each limited by a saved filter.
- Sale Automatic Workflow StockOdoo 17, 18sale_automatic_workflow_stock
Extend automatic sales workflows with stock options: choose the shipping policy and let Odoo automatically confirm and transfer the delivery pickings for sales orders handled by a workflow.
- Sale Blanket OrdersOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_blanket_order
Lets you record pre-agreed sales contracts (blanket orders) with a customer, a validity period and agreed quantities and prices, then generate real sale orders from them at those prices until the quantities or the dates run out.
- Sale Block no StockOdoo 16, 17, 18sale_block_no_stock
Blocks confirming a sales order when storable products are not sufficiently available, showing a wizard to adjust quantities, move lines to a new order, or confirm anyway if allowed.
- Sale BrandOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_brand
Adds a Brand field to sales orders and sales teams, so quotations and orders can be sent under a specific brand and the brand is carried over to the invoice.
- Sale Cancel ReasonOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_cancel_reason
When cancelling a sale order, users must pick a reason from a configurable list. The chosen reason is stored on the order and shown on cancelled orders.
- Sale CommentsOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_comment_template
Adds a Comments tab to sales orders where reusable comment texts can be attached, and prints those comments on the sales order PDF above or below the order lines.
- Sale Commercial PartnerOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_commercial_partner
Adds two stored fields on sales orders: Customer Entity and Invoice Entity, and lets you group sales orders and sales analysis by Customer Entity.
- Sales commissionsOdoo 12, 13, 14, 15, 16, 17sale_commission
Adds sales commissions to sales orders: each order line can have agents with a commission, the total commission is shown on the order, and the agents are carried over to the invoice.
- Sales commissions by pricelistOdoo 12, 13, 14, 17sale_commission_pricelist
Lets you assign a sales commission to each pricelist rule, so the commission paid to sales agents is automatically taken from the pricelist rule that applies to the sale order line.
- Sales commissions from salesmanOdoo 12, 13, 14, 15, 16, 17, 18sale_commission_salesman
Automatically adds the salesman as a commission agent on sales orders and customer invoices when no other commission agent is already set, provided the salesman's contact is flagged as an agent with a commission plan.