account_commission_oca
Extends Odoo's commission engine so sales invoice commissions are computed, settled, and invoiced directly from accounting moves.
Key Features
- account.move: Computes commission totals on invoices, exposes involved agents, offers settlement shortcuts, and keeps settlement states consistent when posting or cancelling.
- account.move.line: Automatically assigns commission agents from the customer on new invoice lines while blocking modifications once any agent line is settled.
- account.invoice.line.agent: Calculates commission amounts per invoice line, treats refunds as negative commissions, and forbids changes after settlements exist.
- commission: Adds an invoice status option so commissions settle either when invoices are issued or when payments are received.
- commission.settlement: Supports sales invoice settlements with extra states, prevents editing or deletion once invoiced, and can generate grouped vendor bills linking them to the settlements.
- commission.settlement.line: Connects settlement lines to their originating invoice lines to mirror dates, commission plans, and settled amounts.
- commission.make.invoice: Guides users through selecting settled agent commissions, proposes a purchase journal and product, and creates the corresponding vendor bills optionally grouped.
- invoice.commission.analysis.report: Provides pivot and graph views with rich filters to analyze commission amounts by agent, customer, product category, status, company, and period.