Turn scattered expenses into audit-ready reports in minutes

Group Expenses into submit-approve-reject reports with usable auto-generated summaries, conditional approval routing, and a reconciliation-ready PDF — built for teams that submit expenses every day.

The problem

Employees waste time re-editing auto-generated report summaries that read poorly, clicking through expenses one row at a time, and guessing why a report was rejected. Finance is left compiling reports for period close without a reliable way to see what is pending, what has a receipt, and what still needs review.

The solution

Employee Expense Reports adds a purpose-built reporting layer on top of Odoo Expenses: batch and template-driven report creation, summaries that are correct by default, conditional approval routing by department and amount, mandatory-comment rejections with a full audit trail, and a reconciliation-ready PDF grouped by category.

Capabilities

Everything a report-heavy expense workflow needs

Every capability below is implemented in the module.

01

Submit, approve, reject workflow

Every expense report moves through a clear statusbar — Draft, Submitted, Approved, Rejected — with color-coded list and kanban views so employees, managers, and finance always know where a report stands.

02

Usable auto-generated summaries

Reports generate a meaningful summary out of the box — period, expense count, total, and a category breakdown — so it is correct by default and still editable when you want to add context.

03

Receipt trail and missing-receipt alerts

Every line shows a receipt indicator and a running receipt count, with a clear on-form warning when a report has expenses missing a receipt — so reviewers can triage without opening every line.

04

Conditional approval routing

Approval rules route each report to the right approver based on department and amount band, ordered by sequence, so reports land with the correct manager instead of bottlenecking on one person.

05

Mandatory-comment rejection with audit trail

Rejecting a report requires a comment explaining why, and every rejection is logged to a Rejection History page on the report — so employees know exactly what to fix and finance keeps a full record.

06

Reusable report templates

Save recurring report shapes — expense categories, a summary prefix, and a seeded journal and approver — as templates so regular submitters do not rebuild the same report from scratch every period.

07

Batch, one-report-per-employee creation

Select expenses across employees from the expense list and create a full batch of reports — one per employee, grouped automatically, with an optional template and summary prefix applied — in a single action.

08

Report and receipt visibility on the expense list

The Expenses list gains Report and Receipt columns plus a Not in a Report filter and report group-by, so employees and finance can see at a glance which expenses are already reported and which still need to be.

09

Reconciliation-ready PDF report

Print an approved report as a PDF grouped by expense category, giving finance the structure it needs to reconcile accounts and close the period without reformatting the data by hand.

Workflow

How it works

1

Select expenses

Employees pick expenses individually or in bulk from the Expenses list — filterable by category, date, or Not in a Report — ready to compile into a report.

2

Create the report

Build a report from the selection directly, from a saved template, or in batch (one report per employee) — employee, department, journal, and date range populate automatically.

3

Submit and route

Submitting sends the report to the correct approver automatically, based on department- and amount-based conditional routing rules.

4

Approve, reject, or reconcile

Managers approve or reject with a mandatory comment logged to an audit trail; finance prints the approved report as a category-grouped PDF for reconciliation.

Questions

Frequently asked

No sales fog. If your question isn't here, email us and we'll answer it the same way.

It extends it. Odoo 19 removed the hr.expense.sheet report layer, so this module adds its own expense.report model on top of the standard hr.expense records — your existing expense entry workflow does not change.

Get the app

Buy it on the Odoo App Store

Purchase, download and install directly from the official Odoo Apps Store — you'll always get the latest supported build.

Employee Expense Reports

Group expenses into submitted, approved and rejected reports with readable auto-summaries, conditional routing, missing-receipt alerts and a reconciliation-ready PDF.

Buy on Odoo App Store