This module should be used when a supplier invoice is paid by an employee. It allows to set a supplier invoice for each expense line, adding the corresponding journal items to transfer the debt to the employee.
There are 2 ways to reference expense to invoice.
- On expense, directly select one invoice.
- On expense report, use button "Create Vendor Bill" to create one invoice for multiple expenses.
auto_awesome What this module does
AI-generated from the code · Odoo 18.0Link supplier invoices to employee expense lines so the company can reimburse the employee and settle the vendor debt. Create a vendor bill directly from an expense report or attach an existing posted bill to an expense.
This module connects employee expenses with supplier invoices, for cases where an employee paid a vendor bill personally and now needs to be reimbursed.
On an expense line you can select an existing Vendor Bill. Only posted, unpaid supplier invoices that are not already linked to another expense are offered. Once selected, the expense amount, currency and date follow the invoice, taxes are cleared and quantity is forced to 1.
On an expense report, a "Create Vendor Bill" button appears on each expense line while the report is still draft or approved. It creates a supplier invoice from the expense data and copies the expense attachments to it. A smart button "Invoices" on the report shows the linked bills.
When the report is approved and posted, the system creates a transfer journal entry that moves the payable from the vendor to the employee, then reconciles the vendor bill with that entry. When the employee is reimbursed, the expense and report are automatically marked as paid.
Business rules: the vendor bill must be posted, and the total of the linked bills must equal the total of the expense lines. You cannot change the total amount of an invoice that has expenses linked. A supplier invoice linked to an expense also shows an "Expense" smart button.
Depends on
Required by other modules
Models and fields (4)
- hr.expense · extends an existing modelinvoice_id (Vendor Bill), sheet_id_state (Sheet state), amount_residual (Amount Due), transfer_move_ids
- account.move · extends an existing modelexpense_ids (Expenses), source_invoice_expense_id
- hr.expense.sheet · extends an existing modelinvoice_count
- account.move.line · extends an existing model
Text generated by AI (DeepSeek) from reading the Odoo 18.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: 7 confirmed, 2 with no information of 9 versions.
Sources · Odoo 17.0
Confirmed on 2026-11-03 in branch 17.0 of OCA/hr-expense.
terminal Installation and usage
OCA documentation · Odoo 18.0Usage
Source · Odoo 18.0Reference one invoice to an expense
- Create an expense sheet.
- Add an expense line to sheet with an invoice_id selected or create one new.
- Process expense sheet.
- On paying expense sheet, you are reconciling supplier invoice too.
Create one invoice to multiple expenses
- Create an expense sheet with one or multiple expense lines
- After approved, click button "Create Vendor Bill"
- Select multiple expense to create an invoice, and process it.
- New invoice will be create and link to the selected expense lines.
- Validate newly create invoice.
- On paying expense sheet, you are reconciling supplier invoice(s) too.
No verified information in OCA: Installation, 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.