In Odoo, the Cash Flow Statement is generated using the indirect method, not the direct one.
That means the report is based on accounting entries (account.move.line) related to receivable, payable, and other non-liquidity accounts — rather than on real cash movements.
Here’s how Odoo builds the report:
- It takes posted journal items tagged as receivable, payable, or other accounts.
- Using Cash Flow Tags, it groups them into Operating, Investing, and Financing sections.
- Reconciliation determines whether an invoice has been paid, so the payment appears in the right part of the report.
Because of this structure:
- Only journals linked to liquidity and accrual accounts are shown in the report.
- Expense or income accounts may appear if their tags are set incorrectly or if reconciliation links them to liquidity entries.
⚠️ Odoo does not generate a Direct Method report (based on actual bank and cash transactions). For companies that require daily liquidity tracking or treasury control, this is a limitation.
At ERPixel, we’ve developed a plugin that adds a Cash Flow Direct Method report to Odoo. It works directly with bank transactions, groups them by Operational, Investment, Financing, and Other activities, and supports multi-company consolidation.