OdooWiki OCA HUB

Migrating from Odoo 18 to Odoo 19: which OCA modules are available

Of the 3,113 OCA modules confirmed in Odoo 18.0, 1,272 (41 %) are also confirmed in Odoo 19.0. The other 1,841 do not have a confirmed 19.0 version in the catalogue yet: if you use any of them, check its page before planning the migration. In addition, 260 modules are in Odoo 19.0 without being in 18.0.

3,113
in Odoo 18
1,272
also in Odoo 19
1,841
pending in Odoo 19
41 %
already migrated

See also

Odoo 18 modules not yet confirmed in Odoo 19

  • Partner PropertyOdoo 16, 17, 18
    partner_property

    Lets you define custom property fields for contacts, with separate sets for companies and individuals, and fill them in on each contact form or card.

  • Partner ProspectOdoo 12, 13, 14, 18
    partner_prospect

    This module marks each contact as a Prospect or an Actual Customer based on whether any confirmed sales or customer invoices exist. It adds the Prospect flag to contact forms, lists and filters, and hides prospects from the standard Customers menu by default.

  • partner_purchase_manager

    Adds a "Purchase Manager" field to contacts so you can record which internal user is responsible for purchasing from that partner. You can also filter and group contacts by that manager.

  • partner_rank_commercial_entity

    Makes customer and supplier ranks shared across a whole commercial entity, so all contacts of the same company show the same rank values instead of separate per-contact numbers.

  • partner_rank_single

    Prevents a contact from being both a customer and a supplier at the same time. When a contact already has a customer or supplier rank, the opposite rank is not increased.

  • partner_readonly_security

    Adds a new "Partner edition" permission. Users without it can still see contacts but cannot create, edit or delete them.

  • partner_repair_button

    Adds a smart button on the contact form showing how many repair orders are linked to that contact, and lets you open that list with one click.

  • Partner Risk InsuranceOdoo 12, 13, 14, 15, 16, 17, 18
    partner_risk_insurance

    Lets you record credit-insurance details on customers and automatically marks their customer invoices as insured, plus print an invoice list report grouped by insured/uninsured customers and country.

  • partner_risk_insurance_product_sticker_invoice_report

    Link product stickers to a credit policy company so that invoice reports only show the insurance company's sticker when the invoice is actually insured under that policy.

  • Partner Search AliasOdoo 16, 17, 18
    partner_search_alias

    Lets you store alternative names for contacts and find them by those names in Odoo search. A new 'Search Alias' field appears on the contact form and can be shown in the contact list.

  • Partner second last nameOdoo 12, 13, 14, 15, 16, 17, 18
    partner_second_lastname

    Adds a "Second last name" field to contacts and users, so full names can be split into first name, first last name and second last name. The displayed name is rebuilt automatically from these parts.

  • partner_street_city_search

    Adds Street and City fields to the Contacts search box, so you can find partners by their address details, not just by name.

  • Partner Subject to VATOdoo 16, 17, 18
    partner_subject_to_vat

    Adds a checkbox on the contact form to record whether a partner is subject to VAT. The flag is stored on the contact and shown just before the VAT number field.

  • partner_supplier_ref_sequence

    Automatically assigns a supplier reference number to new supplier contacts using a predefined sequence, so you no longer have to type it manually.

  • partner_title_active

    Adds an active/archive flag to partner titles (like Mr, Mrs, Dr), so you can hide titles you no longer use without deleting them.

  • partner_title_order

    Lets you control the order in which partner titles (like Mr, Mrs, Dr) appear in Odoo by giving each one a sequence number and dragging them into place.

  • payment_easypay_oca

    Adds EasyPay as a payment provider in Odoo, letting customers pay by credit card, Multibanco reference, MB WAY and other methods. It also lets you manage EasyPay credentials, sync payment methods and configure webhooks from the provider form.

  • Payment PartnerOdoo 16, 18
    payment_partner

    Lets you control which payment providers are offered to which customers by adding a filter mode and a customer list on each payment provider.

  • Pasarela de pago RedsysOdoo 12, 13, 14, 15, 16, 17, 18
    payment_redsys

    Adds Redsys as a payment provider in Odoo, letting customers pay online by card, transfer, direct debit or Bizum. Configure merchant credentials, terminal, currency and language from the payment provider form.

  • payment_require_legal

    Adds a mandatory "I accept the terms and conditions" checkbox to the online payment form and records the acceptance details on the payment transaction.

  • payment_sequra

    Adds SeQura as a payment provider in Odoo, letting customers pay for online orders in instalments. It also sends shipment confirmations back to SeQura when deliveries are validated.

  • Payroll AccountingOdoo 13, 14, 15, 16, 17, 18
    payroll_account

    Links payroll to accounting: when a payslip is confirmed, Odoo automatically creates and posts the corresponding journal entry, using the salary journal and accounts defined on contracts and salary rules.

  • Payroll Contract AdvantagesOdoo 14, 16, 17, 18
    payroll_contract_advantages

    Lets payroll users define reusable advantage templates (with code, default value and allowed minimum/maximum) and attach a list of advantages with amounts to each employee contract, so salary rules can use them in payslip calculations.

  • payroll_hr_public_holidays

    Adds public holidays as a worked-days line on payslips, so salary rules can use public holiday days and hours in payroll computation.

  • payroll_rule_time_parameter

    Adds a 'Time Parameters' menu under Payroll configuration where payroll managers can define rule parameters for payslips, and lets salary rules read those parameters directly from a payslip.

  • Remove Odoo Branding from WebsiteOdoo 12, 13, 14, 15, 16, 17, 18
    portal_odoo_debranding

    Removes Odoo branding from portal pages by hiding the Odoo promotion block and the hidden sidebar element on customer portal screens.

  • pos_barcode_block

    When a barcode is scanned in the Point of Sale that does not match any product, the POS shows an "Unknown Barcode" alert and temporarily blocks further scanning until the cashier closes the message.

  • pos_barcode_rule_priced_with_change_rate

    Adds a new barcode rule type in Point of Sale that reads a price from a scanned barcode and converts it using a change rate configured in the POS settings.

  • pos_blind_session_closing

    Hides the expected cash amounts and payment details in the Point of Sale closing popup, so cashiers can count the drawer blindly. Only users in the new "Can see POS closing amounts" group still see those figures.

  • pos_cash_control_extension

    Extends the Point of Sale cash control so the opening cash amount is recorded and posted as a message, and the closing screen shows the expected cash based on the opening balance plus cash movements.

  • pos_category_multicompany

    Adds a Company field to Point of Sale categories so each category can belong to a specific company. Users only see categories of their allowed companies, keeping multi-company POS data separated.

  • Pos Vat TreeOdoo 14, 16, 18
    pos_customer_tree_view_vat

    Adds a Tax ID column to the customer list in the Point of Sale screen, showing each customer's VAT number next to their name.

  • pos_display_order_number

    Shows the order reference number in the Point of Sale order summary, next to the total amount. Cashiers can see which order they are working on directly on the product screen.

  • pos_display_total_quantity

    Shows the total number of items in the Point of Sale order summary, so cashiers can check that every article has been scanned before payment.

  • pos_divide_order_summary

    Adds an empty extra area inside the Point of Sale order summary screen, so other modules can display additional order information there.

  • pos_early_receipt_printing

    Adds an "Early Receipt Printing" option to Point of Sale settings so shops (not restaurants) can print a bill before payment. When enabled, a Bill button appears in the POS screen.

  • pos_full_refund

    Adds a 'Do Full Refund' button to the Point of Sale ticket screen so cashiers can refund every remaining item of a selected order in one click.

  • POS Lot BarcodeOdoo 15, 16, 17, 18
    pos_lot_barcode

    In the Point of Sale, cashiers can scan a lot or serial number barcode to add the matching product to the order, and scan it again to fill the lot/serial number popup instead of typing it.

  • PoS Order MarginOdoo 12, 13, 14, 16, 17, 18
    pos_margin

    Shows the profit margin and margin rate of each product line and of the whole order directly in the Point of Sale screen, and adds margin information to the POS order list and report.

  • POS Order Remove LineOdoo 12, 13, 14, 16, 18
    pos_order_remove_line

    Adds an optional trash button on each Point of Sale order line so cashiers can delete a line directly from the POS screen, with an optional confirmation warning before deletion.

  • PoS Order To Sale OrderOdoo 12, 13, 14, 16, 17, 18
    pos_order_to_sale_order

    Lets cashiers turn the current Point of Sale order into a real sale order (draft, confirmed, delivered or invoiced) and then clears the POS screen. Useful for shops that take orders on a simple screen and invoice customers later.

  • PoS Payment Method CashDroOdoo 12, 14, 16, 17, 18
    pos_payment_method_cashdro

    Lets Point of Sale users take payments through a Cashdro cash terminal. You configure the terminal on a payment method, and the cash amount is filled in automatically from the machine.

  • POS Payment TerminalOdoo 12, 13, 14, 16, 18
    pos_payment_terminal

    Connect Odoo Point of Sale to a generic card or check payment terminal through the IoT proxy, so cashiers can send the amount to the terminal and get the result back automatically.

  • pos_product_cost_security

    This module makes the Point of Sale work smoothly for cashiers who are not allowed to see product costs. It quietly bypasses the cost-field restriction only while the Point of Sale loads its data.

  • Pos Lot ExpiryOdoo 17, 18
    pos_product_expiry

    In the Point of Sale, when a cashier enters a lot number for a product that tracks expiration dates, Odoo checks the lot's expiry date and blocks the sale if the lot is expired or unknown.

  • PoS Product multi barcodeOdoo 14, 16, 17, 18
    pos_product_multi_barcode

    Lets cashiers in the Point of Sale find and scan a product using any of its extra barcodes, not just the main one. The extra barcodes are also searchable by name in the PoS product search.

  • POS report Session SummaryOdoo 12, 13, 14, 15, 16, 18
    pos_report_session_summary

    Adds a printable PDF Session Summary report for Point of Sale sessions, showing session details, cash statement balances and differences, statement lines and cash payments.

  • pos_sale_picking_keep

    This module stops the Point of Sale from creating or changing delivery orders (pickings) for sales orders. Deliveries stay managed by the Sales app, so stock moves are not duplicated or altered by PoS.

  • POS Session Pay invoiceOdoo 12, 13, 14, 16, 18
    pos_session_pay_invoice

    Lets cashiers pay supplier invoices, collect payments for customer invoices and handle customer refunds directly from an open Point of Sale session, using the session's payment methods.

  • pos_supplierinfo_search

    In the Point of Sale, cashiers can now find products by typing the supplier's name, the supplier's product code, or the supplier's product name in the product search bar.

  • pos_user_restrict_provider_info

    Hides the supplier information section in the Point of Sale product info popup for cashiers and other non-manager users, so only POS managers can see supplier details.

  • Point of Sale - Restrict usersOdoo 12, 13, 14, 15, 17, 18
    pos_user_restriction

    Lets you assign specific users to specific points of sale so those users only see and work with their own POS, sessions, orders and reports.

  • Pricelist CacheOdoo 14, 15, 16, 18
    pricelist_cache

    Stores precomputed product prices for every pricelist so customer price lists can be displayed quickly. Adds buttons on pricelists and customers to view cached prices, plus a daily job that rebuilds the cache.

  • pricelist_cache_rest

    Adds a secure web address that external systems can call to download the cached prices of a customer, using an API key. Administrators choose which API keys are allowed in the company settings.

  • printing_auto_base

    Lets you set up rules that automatically send a report or an existing attachment to a printer when a document is processed, without clicking anything. Other modules use it to add automatic printing to their own documents.

  • printing_auto_label_printer

    Adds a "Label" option to automatic printing rules so a report or attachment can be sent to the user's default label printer when no specific printer is chosen.

  • printing_auto_mrp

    Automatically print documents (such as work orders or labels) when a manufacturing order is marked as done, based on the operation type configuration.

  • printing_auto_shipment_advice

    Automatically print documents when a shipment advice is marked as done, using printing configurations set per warehouse. Users can also print manually from the shipment advice form.

  • printing_auto_stock_picking

    Automatically print documents (such as delivery slips or carrier labels) when a transfer is validated, based on the printing rules configured on each operation type.

  • Data Privacy and ProtectionOdoo 12, 13, 14, 15, 16, 17, 18
    privacy

    Adds a Privacy area in Odoo where you can record data processing activities, naming who controls and processes personal data, and which partners are affected. Access is controlled by two new user groups.

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.