OCA accounting and finance modules for Odoo
Journal entries, invoices, bank reconciliation, payments, financial reports, assets, budgets and credit control. These modules extend Odoo Community accounting to cover what a company needs at month-end and year-end closing. The catalogue has 704 modules in this area, 2 of them confirmed in Odoo 20.0 (reviewed on 2026-11-03).
Confirmed modules per version
OCA repositories in this area
- account-invoicing 174
- account-financial-tools 96
- account-analytic 70
- account-payment 65
- bank-statement-import 53
- account-reconcile 43
- account-fiscal-rule 30
- bank-payment 29
- account-invoice-reporting 27
- account-closing 22
- credit-control 20
- margin-analysis 18
- account-financial-reporting 15
- bank-payment-alternative 11
- intrastat-extrastat 10
- currency 9
- mis-builder-contrib 5
- mis-builder 3
- account-budgeting 2
- account-consolidation 2
Other areas
- Sales
- CRM and marketing
- Purchases
- Inventory and logistics
- Manufacturing and maintenance
- Products and catalogue
- Human resources
- Projects and timesheets
- Field service and customer support
- Point of sale
- Website and e-commerce
- Country localisations
- Contracts and documents
- Integrations, EDI and connectors
- Industries and verticals
- Technical tools and administration
Modules in this area
- Sale Financial Risk InfoOdoo 13, 14, 15, 16, 17, 18, 19sale_financial_risk_info
Shows the customer's credit risk consumption directly on the sales order form, with a warning colour when the risk percentage reaches the configured threshold.
- sale_invoice_date_from_picking
Lets you choose a date field on transfers so that invoices created from sales orders automatically use that date (or the completion date of the last done transfer) as the invoice date.
- Sale invoice line noteOdoo 12sale_invoice_line_note
Adds a 'Copy notes to invoice' checkbox to the Create Invoice wizard in Sales, so note lines from a sale order can be carried over to the generated customer invoice.
- sale_invoiceability_on_payment_transaction
Lets you invoice a sales order as soon as a confirmed payment exists, even if the product is set to be invoiced on delivered quantities and nothing has been delivered yet.
- Sale Invoicing Date From PickingOdoo 16, 18sale_invoicing_date_from_picking
When you create invoices from selected stock pickings in the sales invoice wizard, the invoice date you chose in the wizard is applied to the generated invoices.
- Sale Invoicing Date SelectionOdoo 13, 15, 16, 17, 18, 19sale_invoicing_date_selection
Lets you choose the invoice date when creating customer invoices from a sales order, instead of always using today's date.
- Sale Line Refund To Invoice QtyOdoo 13, 14, 15, 16, 18sale_line_refund_to_invoice_qty
This module lets you decide whether quantities refunded in a credit note should be considered as quantities to reinvoice on the related sales order. It adds a flag on credit notes and a company setting to control the default behaviour.
- Sale Line Refund To Invoice Qty Skip Anglo SaxonOdoo 14, 15, 16sale_line_refund_to_invoice_qty_skip_anglo_saxon
When you refund a customer invoice, this module automatically locks or unlocks the 'sale qty to reinvoice' field depending on the refund reason you pick, so the two related modules work together without conflicting.
- Sale Margin DeliveredOdoo 12, 13, 15, 16, 17, 18sale_margin_delivered
Adds delivered margin figures to sales order lines and the sales analysis report, based on the actual cost of the goods that were shipped or returned.
- Sale Margin Delivered DropshippingOdoo 16, 18sale_margin_delivered_dropshipping
Extends the delivered margin calculation on sale order lines so that dropshipped products are included. It is installed automatically when both the delivered margin and dropshipping features are present.
- Sale Margin Delivered - Sale Margin SecurityOdoo 16, 18sale_margin_delivered_security
This module automatically restricts the delivered margin fields on sales order lines to users who belong to the product cost security group, so only authorised staff can see purchase price and delivered margin information.
- sale_margin_delivery_cost
Add extra expected costs (like shipping, packaging or customs) to a sales order and see the real margin after them. You can also choose whether shipping is charged as a normal order line or kept as an estimated cost.
- sale_margin_pricelist_computation
Lets you write small Python formulas on a pricelist rule to define how the cost price and the sale price used for margin are calculated on sale order lines.
- Sale Margin SecurityOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_margin_security
Restricts who can see sale margin information in sale orders and sales analysis. Only users with the product cost security group can view margin, margin percentage, and purchase price fields.
- Sale margin syncOdoo 12, 13, 14, 15, 16, 18sale_margin_sync
Keeps the cost used for sale margin up to date: when the cost recorded on a stock valuation entry changes, the linked sales order line's cost is updated automatically so margins stay correct.
- Sales order invoicing grouping criteriaOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_order_invoicing_grouping_criteria
Lets you define extra grouping criteria so sales orders are combined into invoices based on fields you choose, on top of the standard invoicing address, company and currency.
- Sales order invoicing by percentage of the quantityOdoo 13, 14, 15, 16, 17, 18, 19sale_order_invoicing_qty_percentage
Lets you create a customer invoice for only a percentage of the ordered quantity from a sales order. You pick "Percentage of the quantity" in the invoice wizard and enter the percentage, and the invoice lines are reduced accordingly.
- Enqueue sales order invoicingOdoo 12, 13, 14, 16sale_order_invoicing_queued
This module lets you send sales order invoicing to the background as queued jobs, so large batches of invoices are created in parallel instead of blocking the screen. A new 'Enqueue Invoicing' button appears in the invoicing wizard.
- Sale Order Margin PercentOdoo 12, 13sale_order_margin_percent
Adds a margin percentage to sales orders and to each order line, so users can see profitability as a percentage of the untaxed amount instead of only an absolute margin value.
- Sale Order Type Whole Delivered InvoiceabilityOdoo 15, 17, 19sale_order_type_whole_delivered_invoiceability
Adds a checkbox on sale order types that forces sales orders of that type to be fully delivered before they can be invoiced.
- Sale Order Whole Delivered InvoiceabilityOdoo 15, 17, 19sale_order_whole_delivered_invoiceability
Adds a customer setting that blocks invoicing a sale order until every delivered-policy product on it has been fully delivered. The setting is copied onto new sale orders and can be overridden per order.
- Sale Payment ManagementOdoo 13sale_payment_mgmt
Sales users get a Payments menu in Sales to list and register customer payments, and a Register Payment button on invoices, without needing full accounting rights.
- Sale Payment Sheet Financial RiskOdoo 13, 15, 16, 18sale_payment_sheet_financial_risk
Adds a new risk amount on partners for payments collected on sale payment sheets that are still pending. You can deduct these pending amounts from the partner's financial risk and see them grouped by risk field.
- Sale Payment Term SecurityOdoo 13, 15, 17sale_payment_term_security
Restricts who can change the payment terms on a sale order. Users without the payment term management permission see the Payment Terms field as read-only.
- Sale Report MarginOdoo 12, 13, 14, 15, 16, 17, 18, 19sale_report_margin
Adds a purchase price (cost) column to the Sales analysis report, so users can see the cost of the products sold alongside sales figures.
- Sale Stock AnalyticOdoo 13, 14sale_stock_analytic
When a sale order generates a stock move, this module copies the sale order's analytic account and the sale order line's analytic tags onto that stock move, so costs and revenues stay linked to the same analytic tracking.
- Sales Stock Picking InvoicingOdoo 14, 15, 16, 18sale_stock_picking_invoicing
Lets you choose, per company, whether customer invoices are created from the Sale Order, from the Stock Picking, or from both, and keeps the two flows in sync so nothing is invoiced twice.
- 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.
- stock_account_anglo_saxon_cogs_kit
Lets companies using Anglo-Saxon accounting invoice kit products without having to mark the kit itself as a storable product, so kits can stay consumable and untracked while Cost of Goods Sold is still posted correctly.
- Account Invoice Report Lot Expiry DateOdoo 16, 18stock_account_invoice_report_lot_expiry
Adds an Expiration Date column to the lots table on the customer invoice PDF, so each tracked lot listed on the invoice shows its expiry date.
- 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_no_auto_reconcile
Adds a company setting to control whether Odoo automatically reconciles stock interim accounting entries when validating deliveries or posting invoices. Turning it off avoids reconciliation errors when receiving or invoicing in several partial shipments.
- stock_account_prepare_anglo_saxon_out_lines_hook
Changes how Anglo-Saxon cost of goods sold journal entries are generated on customer invoices and refunds, adding separate interim stock and expense lines for real-time valued products.
- 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.
- Partner Stock RiskOdoo 12, 13, 14, 16, 18stock_financial_risk
Blocks outgoing stock transfers to customers whose financial risk limit is exceeded, showing a warning wizard before confirming, reserving or validating the transfer.
- Stock Inventory AnalyticOdoo 12, 13, 14stock_inventory_analytic
Adds analytic account and analytic tags fields to inventory adjustment lines, so stock adjustments can be tracked in analytic accounting. Default values can be set per company in Settings.
- Stock Landed Costs AnalyticOdoo 13, 16, 17, 18stock_landed_costs_analytic
Adds analytic account and analytic tags fields to landed cost lines, so that when a landed cost is validated, the resulting accounting entries carry the analytic distribution from the cost line.
- Stock Picking AnalyticOdoo 14, 16, 17, 18, 19stock_picking_analytic
Lets you set an analytic distribution directly on a transfer (stock picking); the value is copied to all its stock moves and shown on the transfer form, list and search views.
- Stock Picking InvoicingOdoo 12, 13, 14, 15, 16, 17, 18, 19stock_picking_invoicing
Create customer or supplier invoices directly from stock transfers, without needing a sales or purchase order. Each transfer carries an invoice status (To Be Invoiced, Invoiced, Not Applicable) that drives the invoice creation.
- Stock Picking Invoicing IncotermOdoo 14, 15, 17stock_picking_invoicing_incoterm
Shows the Incoterm (international commercial term) on transfer orders, automatically taken from the related sales order. Users can also change it directly on the transfer.
- Stock Picking Return Refund OptionOdoo 12, 13, 15, 16, 17, 18, 19stock_picking_return_refund_option
Lets you change the refund option on a confirmed return picking, so delivered or received quantities on the linked sales or purchase order are recalculated and you can invoice the refund correctly.
- Stock Warehouse AnalyticOdoo 14stock_warehouse_analytic
Lets you set an analytic account and analytic tags directly on a warehouse, so that warehouse-level analytic information is stored in Odoo.
- Website Sale Financial RiskOdoo 16, 18website_sale_financial_risk
Adds an 'On Credit' payment option to your website checkout. Customers with enough remaining credit can confirm their order without paying immediately.