OCA/hr-expense
OCA community repository with 31 Odoo modules confirmed in the OdooWiki catalogue (versions 13.0, 14.0, 15.0, 16.0, 17.0, 18.0). Reviewed on 2026-11-03.
Open on GitHubConfirmed modules per version
Modules in the repository
- Employee Advance and ClearingOdoo 13, 14, 15, 16, 17, 18hr_expense_advance_clearing
Lets companies pay employees an advance before they spend, then clear that advance against real expense reports. Employees can request advances, submit clearing reports, and either receive extra reimbursement or return unused money.
- hr_expense_advance_clearing_consolidation
Lets accountants merge several open employee advances into one new consolidated advance equal to the sum of their remaining balances, and marks the originals as consolidated.
- HR Expense Advance Clearing SequenceOdoo 13, 14, 15, 16, 17, 18hr_expense_advance_clearing_sequence
Automatically gives employee advance expense reports their own reference number, starting with AV, instead of the standard expense report numbering.
- hr_expense_advance_overdue_reminder
Track overdue employee expense advances and send reminders by email or printed letter, with a counter of how many reminders were already sent.
- hr_expense_analytic_distribution
Lets employees split an expense report across several analytic accounts by setting a percentage for each. When the report is posted, each expense line is divided into separate accounting entries per analytic account.
- Hr expense cancelOdoo 13, 14, 15, 16, 17, 18hr_expense_cancel
Adds a "Cancel all related operations" button on expense sheets so accountants can undo a posted or paid expense, removing its journal entries, payments and reconciliations and returning the sheet to Submitted.
- HR Expense Cancel ConfirmOdoo 15hr_expense_cancel_confirm
Adds a confirmation step when cancelling an expense sheet, asking for an optional reason before the cancellation is applied.
- HR Expense Due DateOdoo 14hr_expense_due_date
Lets you set a specific due date or payment terms on an expense sheet, so the accounting entry created from the expenses uses that date instead of the default.
- Expense Employee Analytic DefaultOdoo 15, 17hr_expense_employee_analytic_default
Lets expense analytic distributions be chosen based on the employee's own contact/address, so employee-specific analytic distribution models apply automatically to their expenses.
- Expense ExceptionOdoo 14, 15, 18hr_expense_exception
Adds customizable exception rules to expense reports and expenses, so you can block or flag reports that break your own rules and review them before submitting.
- hr_expense_excluded_tax
This module lets you record expenses with excluded (purchase) taxes and automatically calculates the untaxed amount when the expense product has a cost.
- Supplier invoices on HR expensesOdoo 13, 14, 15, 16, 17, 18hr_expense_invoice
Link 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.
- Select Expense JournalOdoo 14, 15, 16, 17hr_expense_journal
Lets you pick the payment method (credit card or bank journal) used to pay an expense, so the expense report and its accounting entry use the correct journal.
- HR Expense - Pay To VendorOdoo 14, 15, 16hr_expense_pay_to_vendor
Lets employees request that the company pays a vendor directly through an expense, instead of reimbursing the employee. When the expense is paid by company, you can pick the vendor who should receive the money.
- HR Expense PaymentOdoo 14, 15, 16, 17, 18hr_expense_payment
Links expense sheets to their payments, so you can see which payments paid which expense reports directly in Odoo.
- hr_expense_payment_difference
When you register a payment for an expense report, this module lets you enter an amount that differs from the total and decide how to handle the difference: keep the report open or mark it fully paid with a write-off account.
- HR Expense Payment Widget AmountOdoo 14, 15hr_expense_payment_widget_amount
Shows a payment widget on expense reports so users can see the payments already linked to a report and remove a wrong outstanding payment directly from the form.
- Petty CashOdoo 13, 14, 15, 18hr_expense_petty_cash
Lets you track petty cash held by employees: register cash holders with a limit and balance, refill them through vendor bills, and pay expense reports from petty cash with automatic balance checks.
- hr_expense_petty_cash_sequence
Automatically gives expense reports paid by petty cash their own reference number, starting with EXPC, instead of the standard sequence.
- HR Expense PortalOdoo 13, 15hr_expense_portal
Adds a "My Expense" section to the customer portal so portal users can see the expenses linked to their sale orders, with a list, sorting, paging and a detail page including attachments and messages.
- HR expense sequenceOdoo 13, 14, 15, 16, 17, 18hr_expense_sequence
Adds an automatic reference number to expense reports, generated from a configurable sequence (e.g. EX0001), shown on the report form, list, search and printed report.
- Expense Sequence OptionOdoo 14, 15, 16, 17, 18hr_expense_sequence_option
Lets you choose between several numbering sequences for expense reports (hr.expense.sheet), so different expense reports can get different reference numbers based on rules you define.
- hr_expense_sheet_payment_state
Shows the payment status of each expense report (not paid, partially paid, in payment, paid or reversed) directly on the expense report list and form, so you can see at a glance whether employees have been reimbursed.
- Expense Report Sub StateOdoo 14, 15hr_expense_substate
Adds a secondary status (sub state) to expense reports, so you can track extra steps like "To Verify" or "Checked" inside the normal expense report workflow.
- Expense Tax AdjustmentOdoo 14, 15hr_expense_tax_adjust
Lets users correct the tax amount on an expense so the accounting entries match the real tax, useful when rounding differences appear. A new editable tax field appears on the expense form.
- Expense Tier ValidationOdoo 13, 14, 15, 16, 17, 18hr_expense_tier_validation
Adds a multi-level approval (tier validation) process to expense reports, so submitted expenses must be reviewed and validated by designated reviewers before they can be approved.
- Hr Expense - Vendor ReceiptOdoo 18hr_expense_vendor_receipt
When an expense sheet uses a receipt journal, this module creates a vendor receipt instead of a vendor bill, and lets you reverse those receipts back to draft.
- HR Expense one2many widgetOdoo 14, 15hr_expense_widget_o2m
Lets users add expense lines directly inside an expense report instead of choosing them from a pop-up selection window. It is turned on or off with a setting in the Expenses configuration.
- Expense Work AcceptanceOdoo 14, 16hr_expense_work_acceptance
Lets you create Work Acceptances directly from an expense report, track how much of each expense line has been accepted, and optionally block posting the expense journal entries until the Work Acceptance is fully accepted.
- sale_expense_cost_reinvoice
When an expense product is set to be re-invoiced at cost, this module puts the full expense amount as the cost on the related sales order line, so margin calculations reflect the real expense cost.
- sale_expense_manual_reinvoice
Lets you choose, per expense product, whether expenses are re-invoiced automatically or only after a manager reviews them. A new "Expenses to Reinvoice" menu lists pending expenses so a manager can reinvoice or discard them.