By standard feature, user can gradually create partial invoices, one by one. This module add ability to create invoices based on the predefined invoice plan, either all at once, or one by one. The plan support both advance invoice and installment invoices.
auto_awesome What this module does
AI-generated from the code · Odoo 19.0Plan future customer invoices on a sales order: split the order into installments (optionally with an advance), then create the invoices one by one or all at once from the plan.
On a sales order you can tick "Use Invoice Plan" and open the new "Invoice Plan" tab. A wizard called "Create Invoice Plan" asks for the number of installments, the first installment date, the interval (day, month or year) and whether an advance invoice is needed on the first invoice. The plan lines are then generated automatically with dates, a percentage and an amount per installment.
- Each plan line shows its installment number, planned date, type (Advance or Installment), percent, amount, whether it is the next one to invoice and whether its invoice was already created.
- The order shows the total planned percent and amount, and a count of pending plans; a "With pending plans" filter and a "Pend." column are available in the sales order list.
- The plan cannot exceed 100% in total, all lines must have a percentage before the order leaves draft, and confirming an order with the plan switched on but no plan lines is blocked.
- Once the order is confirmed, the "Create Invoice by Plan" button lets you create the next invoice or all remaining invoices; invoices are created in draft and linked back to the plan line, with the invoice date taken from the planned date.
- Plan lines that already have an invoice can no longer be edited or deleted.
A menu "Sales Invoice Plan" under Sales Orders lists all plan lines for reporting, with filters such as Not Invoiced and Not Invoiced & Due.
Depends on
Required by other modules
Menus it adds
Models and fields (5)
- sale.order · extends an existing modelinvoice_plan_ids, use_invoice_plan, invoice_plan_pending (Pending plans), invoice_plan_process (Invoice Plan In Process), invoice_plan_total_amount, invoice_plan_total_percent (Percent)
- sale.invoice.plan · new modellast (Last Installment), state (Status), amount, no_edit, percent, sale_id (Sales Order), invoiced (Invoice Created), plan_date, partner_id (Customer), to_invoice (Next Invoice), installment, invoice_type (Type), amount_invoiced, invoice_move_ids (Invoices)
- sale.advance.payment.inv · extends an existing model
- sale.create.invoice.plan · new modeladvance (Advance on 1st Invoice), interval, interval_type, num_installment (Number of Installment), installment_date
- sale.make.planned.invoice · new model
Text generated by AI (DeepSeek) from reading the Odoo 19.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 8 confirmed, 1 with no information of 9 versions.
Sources · Odoo 13.0
Confirmed on 2026-11-03 in branch 13.0 of OCA/sale-workflow.
terminal Installation and usage
OCA documentation · Odoo 19.0Installation
Source · Odoo 19.0Just install this module, and the sales order will have new option "Use Invoice Plan"
Usage
Source · Odoo 19.0- Create new sales quotation as per normal process
- Select option "Use Invoice Plan", a new Invoice Plan tab will appear
- Click on "=\> Create Invoice Plan" link to open invoice planning wizard
- Do plan for number of installment and/or advance, start date and interval
- Double check that each advance/installment has correct plan percentage
- After confirm sales order, now we have new option to "Create Invoice by Plan"
- User can create only next invoice, or create all the rest invoices at the same time
No verified information in OCA: Configuration.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.