OdooWiki OCA HUB

OCA modules for Odoo 20

There are 73 OCA community modules confirmed in Odoo 20.0: for each one, the branch, the module directory and the installable manifest have been checked on GitHub. Odoo 19 has 1,525. 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 20

See also

Modules for Odoo 20

  • Account Invoice Triple DiscountOdoo 12, 13, 14, 15, 16, 17, 18, 19, 20
    account_invoice_triple_discount

    Lets users apply three successive discounts on each invoice line, with the combined total discount calculated automatically and shown on the invoice form and printed invoice.

  • Account Payment Term Cutoff DayOdoo 16, 17, 18, 19, 20
    account_payment_term_cutoff_day

    Adds a "cutoff day" concept to payment terms, so invoice due dates are automatically pushed to the following month when the invoice date is after the cutoff day.

  • account_usability

    Adds the accounting menus and settings that are normally hidden in Odoo Community: a Bank and Cash menu with bank and cash statements, an Account Tags screen, and Anglo-Saxon accounting plus fiscal year end options in the Accounting settings.

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

  • Date RangeOdoo 12, 13, 14, 15, 16, 17, 18, 19, 20
    date_range

    Create and manage reusable date ranges (periods) in Odoo, and filter records by those periods in list views. Ranges can be grouped into types, generated automatically, and used as a 'Period' filter in search views.

  • Remove odoo.com BindingsOdoo 12, 13, 14, 15, 16, 17, 18, 19, 20
    disable_odoo_online

    This module removes the links between Odoo and odoo.com: it stops the update notification check, hides the Apps and Updates menus under Technical settings, and removes the Support and My Subscription entries from the user menu.

  • Partner EDI codeOdoo 12, 13, 14, 15, 17, 18, 19, 20
    l10n_fi_edicode

    Lets you store a Finnish eInvoicing identifier (Edicode) and an eInvoicing operator on your company and on any contact, with a ready-made list of Finnish banks and eInvoice operators to choose from.

  • Iran - AccountingOdoo 17, 18, 19, 20
    l10n_ir_account

    Installs the Iranian accounting localization: a full Iranian chart of accounts, the Iranian Rial currency, a 10% VAT tax for sales and purchases, and Iranian company defaults. Users can set up an Iranian company and start bookkeeping in Rial.

  • Iran - Country StatesOdoo 14, 16, 17, 19, 20
    l10n_ir_states

    Adds Iran's provinces and cities to Odoo, and makes the province and city mandatory when entering an Iranian address.

  • Japan Address LayoutOdoo 12, 13, 15, 16, 17, 18, 19, 20
    l10n_jp_address_layout

    Switches the contact address form to a Japanese-style layout for Japanese addresses, showing postal code, prefecture, city and street in the order Japanese users expect.

  • Paraguay - AccountingOdoo 16, 18, 19, 20
    l10n_py

    Installs the Paraguayan accounting setup in Odoo: a complete chart of accounts, IVA 10% and 5% taxes, exempt/exonerated taxes and ready-made fiscal positions for purchases and sales.

  • l10n_py_account

    Manage Paraguayan tax stamp authorizations (timbrados) and automatically number sales invoices and credit notes according to the authorized range, with fiscal validations and SIFEN IVA breakdown fields.

  • Paraguay - Base LocalizationOdoo 16, 18, 19, 20
    l10n_py_base

    Adds Paraguayan localization basics to Odoo: departments, cities and neighborhoods (barrios) with SET codes, plus fiscal fields and RUC validation on contacts. Users can record RUC, taxpayer type and identity documents on partners.

  • l10n_py_edi_base

    Adds Paraguay electronic invoicing (SIFEN) support to invoices and credit notes, letting users prepare, preview, send and track electronic tax documents, generate QR codes and KUDE PDFs, and manage EDI connectors and logs.

  • l10n_py_edi_sifen

    Connect Odoo directly to Paraguay's SIFEN electronic invoicing service using your own digital certificate. Send, consult, cancel and void electronic documents, and generate the QR code, without any intermediary provider.

  • l10n_py_libros

    Generates and exports the four DNIT record books (Sales, Purchases, Income, Expenses) required by Paraguay's RG 90/2021, with automatic lines from invoices and CSV/TXT files packaged in ZIPs.

  • Romania - AccountOdoo 14, 15, 16, 17, 18, 19, 20
    l10n_ro_account

    Adds Romanian cash-receipt limits: customer cash payments above 5,000 (companies) or 10,000 (individuals) are blocked. Also shows Romanian chart-of-accounts codes in a short external format.

  • Romania - Bank Statement ReportOdoo 14, 15, 16, 17, 18, 19, 20
    l10n_ro_account_bank_statement_report

    Adds a Romanian-format printable report for cash and bank statements, showing one day's statement or a whole period with receipts, payments, balances and signature lines.

  • Romania - Account Period ClosingOdoo 13, 14, 15, 16, 17, 18, 19, 20
    l10n_ro_account_period_close

    Lets Romanian accountants close income, expense or selected accounts (e.g. VAT) for a chosen date range by automatically generating and posting a closing journal entry. Closing templates are reusable and can also balance the closing accounts against each…

  • Romania - Invoice ReportOdoo 13, 14, 15, 16, 17, 18, 19, 20
    l10n_ro_account_report_invoice

    Adds Romanian invoice printout details: the customer's trade register number (NRC), selected bank accounts, a company-level text shown on invoices without a stamp, and the exchange rate when the invoice currency differs from the company currency.

  • Romania - CityOdoo 13, 14, 15, 16, 17, 18, 19, 20
    l10n_ro_city

    Adds the official Romanian locality list (SIRUTA) to Odoo, so contacts can be linked to a real city instead of free text, and the county and city are filled in automatically from the Romanian zip code.

  • Romania - Localization ConfigOdoo 13, 14, 15, 16, 17, 18, 19, 20
    l10n_ro_config

    Adds a dedicated Romanian settings page where companies using the Romanian chart of accounts can switch on the various Romanian localization modules and fill in Romanian accounting, tax, stock and partner defaults.

  • Romania - DVIOdoo 13, 14, 15, 16, 17, 18, 19, 20
    l10n_ro_dvi

    Lets Romanian companies record a customs import declaration (DVI) linked to vendor bills, and automatically creates a landed cost plus the VAT accounting entries for customs duty, commission and VAT price differences.

  • Romania - Fiscal ValidationOdoo 13, 14, 15, 16, 17, 18, 19, 20
    l10n_ro_fiscal_validation

    Automatically refreshes Romanian companies' fiscal data (name, address, VAT status) from the ANAF tax authority web service, either on demand or every day via a scheduled job.

  • Romania - Mesaje SPVOdoo 14, 15, 16, 17, 18, 19, 20
    l10n_ro_message_spv

    Lets Romanian companies fetch their ANAF SPV e-invoice messages automatically, download the ZIP/XML files, and turn received e-invoices into draft vendor bills in Odoo.

  • Romania - Nondeductible VATOdoo 14, 15, 16, 17, 18, 19, 20
    l10n_ro_nondeductible_vat

    Lets Romanian companies record the non-deductible part of VAT on supplier bills and on certain stock operations, splitting the VAT and expense amounts onto dedicated non-deductible accounts and tags.

  • Romania - Partner Create by VATOdoo 13, 14, 15, 16, 17, 18, 19, 20
    l10n_ro_partner_create_by_vat

    When you type a Romanian VAT number on a company contact, Odoo fetches the company's official data from the ANAF tax authority website and fills in the name, address, registration number and VAT status automatically.

  • Romania - Partners UniqueOdoo 13, 14, 15, 16, 17, 18, 19, 20
    l10n_ro_partner_unique

    Prevents saving two Romanian companies with the same VAT number (and optionally the same trade register number), so duplicate business partners cannot be created by mistake.

  • Romania - Payment Receipt ReportOdoo 14, 15, 16, 17, 18, 19, 20
    l10n_ro_payment_receipt_report

    Adds two printable PDF documents for Romanian accounting: a payment receipt for customer/vendor payments and a payment reception/disposal form for bank statement lines, both showing the amount in figures and in words.

  • Romania - Payment to StatementOdoo 14, 15, 16, 17, 18, 19, 20
    l10n_ro_payment_to_statement

    Keeps the Romanian cash register (registru de casă) of a cash journal: every posted cash payment is automatically added to the register of its day and reconciled, and cash documents get their own Romanian numbers.

  • Romania - Point of SaleOdoo 14, 15, 16, 17, 18, 19, 20
    l10n_ro_pos

    Adapts the Point of Sale for Romanian companies: it warns cashiers about large cash payments, adds stock cost columns to the session sales report, and avoids double-posting the cost of goods in the session closing entry.

  • l10n_ro_pos_partner

    In the Point of Sale customer search, a Romanian tax code (CUI) typed by the cashier is recognised, an existing customer with that code is found, and if none exists a button fetches the company from ANAF, creates it and puts it on the order.

  • l10n_ro_pos_refund

    In Romanian companies, refunding a Point of Sale receipt automatically issues a credit note and creates a signed payment disposal for the cash handed back, which prints at the till. A customer is required on every refund.

  • l10n_ro_pos_retail

    Links a point of sale to a Romanian retail shop so the till automatically uses that shop's fiscal position and shelf-price pricelist, making sales land on the right taxes and accounts.

  • Romania - StockOdoo 13, 14, 15, 16, 17, 18, 19, 20
    l10n_ro_stock

    Adds Romanian-specific stock handling: a Consume and a Usage Giving location per company, matching transfer types on each warehouse, and a Net Weight field on products.

  • Romania - Stock AccountingOdoo 13, 14, 15, 16, 17, 18, 19, 20
    l10n_ro_stock_account

    Adds Romanian stock accounting rules: FIFO valuation per storage location instead of per company, automatic correction of negative-stock FIFO values, and Romanian-specific stock accounts on locations, products and warehouses.

  • Romania - Stock Accounting DateOdoo 14, 15, 16, 17, 18, 19, 20
    l10n_ro_stock_account_date

    Lets Romanian companies set an Accounting Date on stock transfers so stock valuation and accounting entries land in the correct period, and blocks validating transfers dated in the future or in locked/too-old periods.

  • Romania - Stock Accounting Date WizardOdoo 14, 15, 16, 17, 18, 19, 20
    l10n_ro_stock_account_date_wizard

    Adds an Accounting Date field to the stock backorder confirmation wizard, so Romanian companies can choose the date used for stock valuation and accounting entries when validating a transfer.

  • l10n_ro_stock_account_landed_cost

    Extends Odoo landed costs for Romanian companies so extra purchase costs (like transport) are spread over the later stock moves that actually consumed the goods, with the matching accounting entries created automatically.

  • l10n_ro_stock_account_reception_in_progress

    Lets Romanian companies bill a purchase order before the goods arrive, posting the value to a "goods in transit" account until the reception is done. A dedicated button on the purchase order creates this reception-in-progress bill.

  • l10n_ro_stock_account_retail

    Adds Romanian retail merchandise accounting to Odoo: shops can hold stock at shelf price (VAT included) and Odoo automatically books the commercial markup and the deferred VAT when goods enter or leave a retail warehouse.

  • l10n_ro_stock_account_retail_landed_cost

    When a landed cost (transport, customs, price difference) adds cost to goods held in a Romanian retail shop, this module keeps the stock value at the shelf price and books the extra cost against the commercial markup instead.

  • l10n_ro_stock_account_retail_picking_report

    Adds cost, markup and shelf-price columns to the printed transfer report when goods move from a warehouse into a retail shop, and titles that document as a goods receipt and discrepancy note.

  • l10n_ro_stock_account_retail_price_change

    Lets Romanian retailers record a shelf price change (Proces Verbal de Schimbare Pret) for goods on hand, updating the retail pricelist and posting the accounting entry for the markup and deferred VAT difference.

  • l10n_ro_stock_account_retail_price_difference

    When a vendor bill is more expensive than the reception price, the price-difference confirmation dialog now shows, per line, the markup the shop goods carry today, what is left after the difference, and whether the shelf price still covers the cost.

  • l10n_ro_stock_account_retail_report

    Adds a Romanian retail stock report showing, per shop and product, the cost, markup (378) and deferred VAT (4428) carried on the shelf, their total retail value (371), and any price difference to revalue.

  • l10n_ro_stock_account_tracking

    Adds a Romanian stock tracking table that records, for FIFO products, which source stock moves a move takes goods from, with quantity and value. Users can see these source and destination links on stock move screens.

  • Romania - Stock Picking Valued ReportOdoo 14, 15, 16, 17, 18, 19, 20
    l10n_ro_stock_picking_valued_report

    Adds valued amounts (unit price, additional charges, subtotal, taxes and total) to the printed delivery/stock picking document for Romanian companies, calculated from the related sales order, purchase order or stock valuation.

  • Romania - Stock Accounting Price DifferenceOdoo 14, 15, 16, 17, 18, 19, 20
    l10n_ro_stock_price_difference

    When a Romanian vendor bill is posted at a price different from the reception, this module shows the differences in a confirmation dialog and, once confirmed, books the gap as a landed cost so the stock value matches the invoice.

  • Romania - Stock Report (Fișă Magazie)Odoo 13, 14, 15, 16, 17, 18, 19, 20
    l10n_ro_stock_report

    Generates a Romanian-style stock ledger (Fișă Magazie) for a chosen location and date range, showing opening balance, all in/out movements with quantities and values, and closing balance, on screen or as a PDF.

  • Romania - VAT on PaymentOdoo 13, 14, 15, 16, 17, 18, 19, 20
    l10n_ro_vat_on_payment

    Adds a Romanian 'VAT on Payment' status to partners, checked automatically against ANAF data, and applies the VAT-on-payment fiscal position on invoices so tax is collected only when the invoice is paid.

  • Thai Localization - Convert Amount Text to ThaiOdoo 13, 14, 15, 16, 17, 18, 19, 20
    l10n_th_amount_to_text

    Converts a monetary amount into Thai words (Baht and Satang) when the user's language is Thai, so printed documents show the amount spelled out correctly in Thai instead of a wrong translation.

  • Partner Contact DepartmentOdoo 12, 13, 14, 15, 16, 17, 18, 19, 20
    partner_contact_department

    Lets you create a list of departments and assign each contact to one, so you can organise people in your address book by department and group or filter contacts by it.

  • product_attribute_value_avoid_auto_fill

    Adds a checkbox on product attributes that controls whether all attribute values are filled in automatically when the attribute is added to a product. When the option is off, the values are left empty so users pick them manually.

  • Product Category ActiveOdoo 12, 13, 14, 15, 16, 17, 18, 19, 20
    product_category_active

    Adds an archive option to product categories, so you can hide categories you no longer use without deleting them. Odoo blocks archiving a category if any product (including in its child categories) is still linked to it.

  • Product Code MandatoryOdoo 12, 13, 14, 15, 16, 17, 18, 19, 20
    product_code_mandatory

    Makes the product Internal Reference (default_code) a required field, and automatically fills it with a generated sequence number (DEFAULT-0001, DEFAULT-0002, ...) when a new product is created.

  • Product ManufacturerOdoo 12, 13, 14, 15, 16, 17, 18, 19, 20
    product_manufacturer

    Adds a Manufacturer section to the product form where you can record the manufacturer (a contact), plus the manufacturer's product name, product code and product URL for each product.

  • Project Department CategorizationOdoo 15, 16, 17, 18, 19, 20
    project_department

    Lets you assign an HR department to each project, and tasks automatically show the department of their project. You can also search and group projects and tasks by department.

  • Purchase All ShipmentsOdoo 13, 16, 17, 18, 19, 20
    purchase_all_shipments

    On a purchase order, the standard "Receipt" button is replaced by an "All Pickings" button that also lists the warehouse transfers chained to the receipt by push rules, such as the steps of a multi-step reception.

  • purchase_order_internal_note

    Adds an Internal Note tab to purchase orders where buyers can write private notes that are not printed on the purchase order report.

Data imported from GitHub: “confirmed” means branch, module directory and installable manifest checked on the review date. A module that is not confirmed in a version may still exist: it may be in another repository or pending the next review. Active support and OCA certification are not assessed.