|
ODOO 19 ACCOUNTING GUIDE
📊 Accounting Reports in Odoo 19
A detailed accounting-wise explanation of financial statements, audit reports, partner reports,
management reports, reconciliations, and month-end review.
|
|
💡 Core idea
Odoo reports are not separate spreadsheets. They are different views of the same posted accounting data. A strong accountant does not read each report alone; the accountant connects the Balance Sheet, Profit & Loss, General Ledger, Trial Balance, partner reports, tax reports, bank reconciliation, assets, and closing entries.
|
|
🎯 Why Accounting Reports Matter
|
Accounting reports convert thousands of journal items into useful financial information. They help management, accountants, auditors, tax teams, and owners understand the company’s financial position, performance, liquidity, customer exposure, vendor obligations, tax position, and accounting risks.
- Financial position: What the company owns and owes.
- Profitability: Whether operations are generating profit or loss.
- Liquidity: Whether the company has enough cash to meet obligations.
- Receivables: Which customers owe money and how overdue they are.
- Payables: Which vendors must be paid and when.
- Tax: Which tax amounts were generated by sales and purchases.
- Auditability: Which journal entries created the balances and who changed accounting records.
- Management control: Whether actual performance matches expectations, budgets, projects, and business plans.
|
⚙️ How Reporting Works in Odoo 19
|
Odoo 19 provides generic dynamic accounting reports that update from accounting data. Users can expand report lines to drill into accounts and transactions, compare periods, and export reports to PDF or XLSX.
| Feature | Accounting Meaning | Practical Use |
|---|
| Date / Period | Defines the accounting period being analyzed. | Month-end, quarter-end, year-end, or a custom period. |
| Comparison | Places another period beside the current period. | Compare this month with last month or this year with last year. |
| Expand / Drill-down | Moves from report total to account and transaction detail. | Investigate why an expense or balance changed. |
| PDF / XLSX | Exports the financial report. | Management packs, audit support, external review, working papers. |
| Real-time data | Posted accounting entries immediately affect relevant reports. | Review accounting impact after posting or correcting entries. |
|
⚠️ Accounting rule
A report can be technically generated and still be financially wrong. Report quality depends on correct account types, posting dates, taxes, partners, reconciliation, currencies, assets, inventory valuation, and closing entries.
|
|
🗺️ Main Accounting Reports — Quick Map
|
| Report | Main Question | Accounting Focus |
|---|
| Balance Sheet | What does the company own and owe at this date? | Assets, liabilities, equity |
| Profit & Loss | Did the company make a profit during this period? | Revenue and expenses |
| Cash Flow Statement | Why did cash increase or decrease? | Operating, investing, financing cash movement |
| Executive Summary | What is the overall financial picture? | Management-level financial overview |
| General Ledger | What exactly happened in each account? | Detailed journal items by account |
| Trial Balance | What is the debit/credit balance of every account? | Control of all ledger balances |
| Partner Ledger | What is the accounting balance per customer/vendor? | Receivable and payable activity |
| Aged Receivable | Which customer balances are overdue? | Open receivables by age |
| Aged Payable | Which vendor balances are due or overdue? | Open payables by age |
| Tax Report | What taxable base and tax amounts were generated? | Sales/purchase tax reporting |
| Audit Trail | Who changed accounting-sensitive records? | Accounting change history |
The Balance Sheet is a snapshot of the company’s financial position at a specific date. Unlike the Profit & Loss, which covers a period, the Balance Sheet answers: What exists at this moment?
|
🧠 Accounting equation
Assets = Liabilities + Equity
|
| Section | Meaning | Typical Odoo Account Types | Normal Balance |
|---|
| Assets | Resources controlled by the company. | Receivable, Bank and Cash, Current Assets, Prepayments, Fixed Assets, Non-current Assets | Debit |
| Liabilities | Obligations the company must settle. | Payable, Credit Card, Current Liabilities, Non-current Liabilities | Credit |
| Equity | Owners’ residual interest after liabilities. | Equity, Current Year Earnings | Credit |
How to read the Balance Sheet
- Cash and bank: Check whether ledger balances agree with reconciled bank balances.
- Accounts Receivable: Compare with Aged Receivable and Partner Ledger.
- Inventory: Compare accounting valuation with inventory valuation records.
- Fixed assets: Compare asset accounts and accumulated depreciation with the depreciation schedule.
- Accounts Payable: Compare with Aged Payable and Partner Ledger.
- Taxes: Compare VAT/tax control accounts with the Tax Report.
- Loans: Compare loan balances with loan schedules and financing agreements.
- Equity: Review capital, reserves, retained earnings, and current-year result.
Simple Balance Sheet example
| Assets | Amount | Liabilities & Equity | Amount |
|---|
| Bank | 120,000 | Accounts Payable | 60,000 |
| Accounts Receivable | 80,000 | Loan | 100,000 |
| Inventory | 90,000 | Equity | 180,000 |
| Fixed Assets - net | 50,000 |
|
|
| Total Assets | 340,000 | Total Liabilities + Equity | 340,000 |
|
⚠️ Balance Sheet red flags
Negative receivables without a business reason, old clearing accounts, unreconciled bank balances, negative inventory, large suspense balances, unexpected debit balances in liabilities, or credit balances in assets should be investigated.
|
The Profit & Loss report measures financial performance over a period. It explains how revenue and expenses produce profit or loss.
| P&L Layer | Accounting Meaning | Example |
|---|
| Revenue | Income earned from normal operations. | Product sales, service revenue |
| Cost of Revenue | Direct costs required to generate revenue. | Cost of goods sold, direct service costs |
| Gross Profit | Revenue minus direct cost. | Revenue − Cost of Revenue |
| Operating Expenses | Costs of running the business. | Salaries, rent, utilities, marketing |
| Other Income / Expenses | Non-core financial results. | Interest, some FX gains/losses |
| Net Profit / Loss | Final result for the period. | Total income − total expenses |
|
🧮 Core formulas
Gross Profit = Revenue − Cost of Revenue Operating Profit = Gross Profit − Operating Expenses Net Profit = Total Income − Total Expenses
|
How to analyze the P&L
- Compare revenue with the previous month, quarter, and year.
- Check gross margin: a falling margin may indicate higher cost, pricing pressure, discounts, or inventory costing issues.
- Review large expense movements account by account.
- Separate recurring operating costs from unusual or one-time items.
- Investigate unexpected negative revenue or credit balances in expense accounts.
- Use the General Ledger to explain every material variance.
- Confirm that deferred revenue/expense and depreciation entries are posted in the correct period.
|
🔗 Relationship Between P&L and Balance Sheet
|
The P&L and Balance Sheet are connected. Revenue and expense activity creates the current-year financial result, which ultimately affects equity. A profitable year increases equity; a loss reduces equity.
|
📌 Odoo 19 year-end point
In Odoo 19, year-end reporting uses the current-year result and a dynamic Result Brought Forward line in the following year’s Trial Balance and General Ledger until the year’s profit or loss is explicitly appropriated through a manual journal entry to the appropriate Current Year Earnings / equity accounts.
|
The Cash Flow Statement explains why cash and cash equivalents changed. A company can be profitable but still have cash problems, because profit and cash are not the same.
| Section | What It Represents | Typical Examples |
|---|
| Operating Activities | Cash generated or used by normal business operations. | Customer collections, supplier payments, operating expenses |
| Investing Activities | Cash related to long-term assets and investments. | Purchase or sale of equipment and long-term assets |
| Financing Activities | Cash related to debt and owners’ financing. | Loans received/repaid, capital contributions, dividends |
Why profit can be high while cash is low
- Sales were recognized as revenue but customers have not paid yet.
- The company purchased inventory or fixed assets for cash.
- Loans were repaid.
- Large supplier payments were made.
- Prepayments were paid before the expense was recognized.
- Revenue may have been recognized without equivalent current-period cash collection.
|
💡 Accounting insight
Use the Cash Flow Statement together with the Balance Sheet and P&L. The P&L explains profitability; the Balance Sheet shows working-capital balances; the Cash Flow Statement explains the movement in cash.
|
The Executive Summary provides a high-level financial overview for management. It is useful when directors or owners need the overall picture without reviewing every General Ledger account.
- Use it for high-level review, not detailed account investigation.
- If a number looks unusual, drill into the corresponding financial statement or General Ledger.
- The exact structure can vary by configuration and localization.
- Management decisions should still be supported by the detailed accounting reports behind the summary.
The General Ledger (GL) is one of the accountant’s most important investigation reports. It shows detailed accounting movement by account and allows you to understand exactly how a balance was created.
| GL Information | Why It Matters |
|---|
| Date | Determines the accounting period. |
| Journal / Entry | Shows the source journal entry. |
| Partner | Identifies customer/vendor where applicable. |
| Label / Reference | Explains the transaction. |
| Debit | Debit movement posted to the account. |
| Credit | Credit movement posted to the account. |
| Balance | Running or resulting account balance. |
When accountants use the General Ledger
- Explain a Balance Sheet or P&L balance.
- Find a wrong posting account.
- Review manual journal entries.
- Investigate duplicate or unusual transactions.
- Trace tax, bank, receivable, payable, asset, and expense movements.
- Support audit samples.
- Reconcile control accounts to supporting reports.
|
🔎 Investigation method
Report total → Account → Journal item → Journal entry → Source document. This is the normal accounting trail when explaining an unexpected number.
|
The Trial Balance summarizes all General Ledger accounts and their debit/credit balances. Because journal entries are balanced, the total debits and credits of the Trial Balance should balance.
| What the Trial Balance Does | What It Does Not Prove |
|---|
| Confirms total accounting debits and credits balance. | It does not prove every transaction is posted to the correct account. |
| Shows the balance of every account. | It does not prove all invoices or bills were recorded. |
| Helps prepare and review financial statements. | It does not prove taxes are correct. |
| Supports opening balance and closing control. | It does not prove bank balances are reconciled. |
|
⚠️ Important
A perfectly balanced Trial Balance can still contain accounting mistakes. For example, a 10,000 expense posted to the wrong expense account still keeps debit = credit.
|
Odoo 19 year-end behavior
Balance Sheet accounts carry their balances into the next year, while P&L accounts reset for the new fiscal year. Odoo 19 uses a dynamic Result Brought Forward line to keep the Trial Balance balanced until the prior-year result is formally appropriated.
The Partner Ledger shows accounting activity and balances by customer or vendor. It is a detailed subledger view of receivable and payable activity.
- Customer invoices and credit notes.
- Vendor bills and refunds.
- Customer and vendor payments.
- Reconciliations and remaining open balances.
- Partner-specific account movements.
|
🧠 Accounting relationship
Total customer receivable control account should be explainable by customer-level receivable balances. Total vendor payable control account should be explainable by vendor-level payable balances.
|
The Aged Receivable report shows customer invoices awaiting payment and groups outstanding balances by age. It is one of the most important reports for credit control and collection management.
| Age Bucket | Accounting Interpretation | Management Action |
|---|
| Not Due | Invoice is open but payment date has not arrived. | Monitor normally. |
| 1–30 Days | Recently overdue. | Begin follow-up according to policy. |
| 31–60 Days | Collection risk is increasing. | Escalate follow-up. |
| 61–90 Days | Material collection concern. | Review customer and dispute status. |
| 90+ Days | High collection / credit-loss risk. | Escalate, assess recoverability and accounting treatment. |
Accounting-wise checks
- The total should reconcile to the relevant Accounts Receivable ledger balances, subject to report filters and configuration.
- Old credits and unapplied payments should be investigated.
- Customer disputes should be separated from normal collection delays.
- Very old balances may require impairment / expected credit loss analysis according to the applicable accounting framework.
- Incorrect payment terms can make aging misleading.
The Aged Payable report shows open vendor bills, credit notes, overpayments, and how long amounts have remained unpaid.
- Plan supplier payments and cash requirements.
- Identify overdue vendor obligations.
- Review old debit balances or supplier advances.
- Detect vendor bills that may be duplicated or disputed.
- Reconcile payable control accounts with vendor-level balances.
|
💡 Cash planning
Aged Payable is not only an accounting report. It is also an important short-term liquidity planning tool. Compare upcoming supplier obligations with expected customer collections and available cash.
|
The Tax Report summarizes taxable base (NET) and TAX amounts for configured sales and purchase taxes. Its exact legal structure depends on the company’s fiscal localization.
| Area | Accounting Meaning | What to Reconcile |
|---|
| Sales tax / Output VAT | Tax collected or due on taxable sales. | Sales tax grids ↔ tax control accounts ↔ posted invoices |
| Purchase tax / Input VAT | Recoverable or deductible tax on purchases where allowed. | Purchase tax grids ↔ tax control accounts ↔ vendor bills |
| Tax payable / receivable | Net settlement position with the authority. | Tax return ↔ GL control accounts ↔ tax payment / refund entries |
|
⚠️ Tax control
Do not validate tax only from the P&L. Tax reporting depends on tax configuration, tax grids, fiscal positions, invoice dates, accounting dates, cash-basis rules where applicable, and localization-specific rules.
|
The Audit Trail tracks changes to accounting-sensitive fields. It can show when a change occurred, which user made it, the type of change, the previous value, and the updated value.
- Support internal and external audit reviews.
- Investigate changes to accounting records.
- Strengthen accountability and traceability.
- Review unusual corrections or modifications.
- Support regulatory requirements where accounting records must be controlled.
|
🔐 Restrictive Audit Trail
Odoo can use a restrictive audit mode so tracked records are not freely deleted; instead, controlled cancellation or archiving can be required.
|
The Journal Audit is useful for reviewing accounting entries by journal and period. From an accounting-control perspective, it helps confirm sequence, posting activity, and the source of ledger movements.
- Review Sales, Purchase, Bank, Cash, and Miscellaneous journals.
- Identify unusual manual postings.
- Check transactions around period-end.
- Support audit testing of journal-entry populations.
- Investigate entries posted by unexpected users or in unexpected journals.
The Invoice Analysis report is a management-analysis tool for invoicing activity. It is useful for trends by customer, product, salesperson, period, or other dimensions depending on the available configuration.
|
⚠️ Financial-reporting distinction
Invoice Analysis is useful for operational analysis, but the General Ledger and financial statements remain the accounting source of truth for posted financial balances.
|
Analytic accounting tracks costs and revenues by project, department, cost center, contract, service, or other management dimension. Analytic reports help answer where profit or cost was generated, while the General Ledger answers which financial account was affected.
| General Ledger | Analytic Accounting |
|---|
| Statutory / financial-account classification. | Management dimension and profitability analysis. |
| Example: Travel Expense. | Example: Travel Expense allocated to Project A. |
| Feeds financial statements. | Supports internal management reporting. |
| Controlled by Chart of Accounts. | Controlled by analytic plans/accounts/distributions. |
The Budget Report compares planned financial targets with actual results. Accounting-wise, it is a performance-control report rather than a primary statutory financial statement.
| Measure | Meaning |
|---|
| Budget | What management expected or authorized. |
| Actual | What accounting / analytic activity actually occurred. |
| Variance | Difference between budget and actual. |
| Variance analysis | Explanation of why performance differed from plan. |
|
⏳ Deferred Revenue and Deferred Expense Reports
|
Deferred revenue and deferred expense schedules support the matching principle: income and expenses should be recognized in the periods to which they relate, rather than only when cash is received or paid.
| Concept | Initial Accounting | Later Recognition |
|---|
| Deferred Revenue | Cash/invoice may create a liability before revenue is earned. | Liability decreases and revenue is recognized over time. |
| Deferred Expense / Prepayment | Payment may create an asset before the expense is consumed. | Asset decreases and expense is recognized over time. |
The Depreciation Schedule supports the accounting for fixed assets. It explains asset cost, depreciation entries, accumulated depreciation, and remaining book value over time.
|
🧮 Fixed-asset reconciliation
Asset register / depreciation schedule should reconcile to the related fixed-asset, accumulated-depreciation, and depreciation-expense accounts in the General Ledger.
|
|
💱 Unrealized Currency Gains / Losses
|
For foreign-currency receivables, payables, bank accounts, or other monetary balances, exchange rates can change before settlement. The unrealized currency report helps identify the accounting effect of revaluing open foreign-currency positions.
- Review open foreign-currency receivables and payables.
- Confirm period-end exchange rates.
- Understand unrealized gain/loss entries.
- Separate unrealized effects from realized exchange differences on settlement.
- Reconcile revaluation entries with the related foreign-currency balances.
Loan analysis supports the review of financing balances, repayments, interest, and scheduled loan activity. Accountants should reconcile loan reports or schedules with the relevant liability and interest accounts.
- Opening principal balance.
- New borrowing.
- Principal repayments.
- Interest expense.
- Closing principal balance.
- Current versus non-current classification where required.
|
🔄 Report-to-Report Reconciliation Matrix
|
| Balance / Topic | Primary Report | Control / Supporting Report |
|---|
| Cash & Bank | Balance Sheet | General Ledger + bank reconciliation / statements |
| Accounts Receivable | Balance Sheet | Aged Receivable + Partner Ledger |
| Accounts Payable | Balance Sheet | Aged Payable + Partner Ledger |
| Revenue & Expenses | Profit & Loss | General Ledger + Trial Balance |
| Tax | Tax Report / Balance Sheet | Tax control accounts + invoice/bill details |
| Fixed Assets | Balance Sheet | Depreciation Schedule + General Ledger |
| Inventory | Balance Sheet | Inventory valuation + General Ledger |
| Loans | Balance Sheet | Loans Analysis / loan schedule + General Ledger |
| Foreign Currency | Balance Sheet / P&L | Unrealized FX report + General Ledger |
| Equity / Year-end Result | Balance Sheet | P&L + Trial Balance + closing entries |
|
🧾 Accounting Example — One Sale Across Multiple Reports
|
Assume the company issues a customer invoice for 10,000, ignoring tax for simplicity.
| Journal Entry | Debit | Credit |
|---|
| Accounts Receivable | 10,000 | — |
| Sales Revenue | — | 10,000 |
How this appears in reports
| Report | Effect |
|---|
| Balance Sheet | Accounts Receivable increases by 10,000. |
| Profit & Loss | Sales Revenue increases by 10,000. |
| General Ledger | Shows the debit in Receivable and credit in Revenue. |
| Trial Balance | Receivable debit and Revenue credit are included in account balances. |
| Partner Ledger | Customer balance increases by 10,000. |
| Aged Receivable | The open invoice appears according to its due date and aging. |
| Cash Flow | No cash collection yet; profit can increase before cash does. |
When the customer pays and the payment is reconciled, the receivable is settled and cash/bank-related accounting is updated. This is why the reports must be understood as connected views of the same accounting cycle.
|
📅 Month-End Accounting Review Workflow
|
- Post all required customer invoices and credit notes.
- Post all vendor bills, refunds, and accruals.
- Complete bank and cash reconciliation.
- Review Accounts Receivable and Aged Receivable.
- Review Accounts Payable and Aged Payable.
- Review tax accounts and the Tax Report.
- Review inventory valuation where applicable.
- Post depreciation and review fixed assets.
- Post deferred revenue / deferred expense entries where required.
- Review foreign-currency revaluation.
- Review loan balances and interest.
- Review the Trial Balance for unusual balances.
- Review P&L variances account by account.
- Review Balance Sheet reconciliations.
- Review Cash Flow and liquidity.
- Post approved corrections and re-run reports.
- Apply appropriate lock dates / closing controls after review.
|
🚨 Common Accounting Report Red Flags
|
| Red Flag | Possible Cause |
|---|
| Bank balance does not agree with bank reconciliation. | Missing bank transactions, unreconciled items, wrong opening balance, wrong account. |
| Aged Receivable does not make sense. | Wrong partner, payment not reconciled, wrong payment terms, old credits. |
| Aged Payable contains old debit balances. | Supplier advances, refunds, mispostings, unreconciled payments. |
| Negative asset balance. | Wrong account type, incorrect credit posting, disposal/reclassification issue. |
| Debit balance in payable / credit balance in receivable. | Can be valid, but should be explained and reconciled. |
| Large suspense or clearing account. | Incomplete reconciliation or temporary postings not cleared. |
| P&L changes sharply without business explanation. | Wrong posting date/account, accrual missing, duplicate entry, unusual transaction. |
| Tax Report differs from expected tax control accounts. | Tax grids, tax configuration, cash basis, dates, manual tax entries, localization rules. |
| Trial Balance balances but financial statements are wrong. | Transactions may be posted to incorrect accounts while remaining double-entry balanced. |
|
✅ Best Practices for Odoo Accounting Reports
|
|
💡 Reporting discipline
Use reports as a connected control system, not as isolated screens.
|
- Use consistent accounting dates and period cut-offs.
- Reconcile bank, receivable, payable, tax, asset, inventory, loan, and foreign-currency control accounts.
- Use the General Ledger to explain every material Balance Sheet and P&L variance.
- Compare periods regularly instead of waiting for year-end.
- Investigate unusual balances before they become old balances.
- Keep receivable and payable items reconciled.
- Avoid unnecessary manual journal entries; document the reason for those that are required.
- Review manual entries around month-end and year-end carefully.
- Use analytic accounting for management dimensions rather than creating excessive General Ledger accounts.
- Use correct account types because report placement depends heavily on them.
- Export key reports for controlled month-end / year-end working papers where required by company policy.
- Apply lock dates after review to protect closed periods.
|
🎯 Recommended Monthly Reporting Pack
|
| Report | Audience / Purpose |
|---|
| Balance Sheet | Financial position and account reconciliations |
| Profit & Loss | Profitability and variance analysis |
| Cash Flow Statement | Liquidity and cash movement |
| Executive Summary | Management overview |
| Trial Balance | Accounting control |
| General Ledger | Detailed investigations and audit support |
| Aged Receivable | Collections and credit risk |
| Aged Payable | Payment planning and supplier obligations |
| Tax Report | Tax review and filing support |
| Analytic / Budget Reports | Internal profitability and performance |
Odoo Accounting Reports are most powerful when understood from an accounting-control perspective. The Balance Sheet shows financial position, the Profit & Loss shows performance, the Cash Flow Statement explains liquidity, and the General Ledger and Trial Balance explain how every number was built.
Partner reports explain receivables and payables, tax reports explain the tax position, audit reports explain accounting changes, and management reports add dimensions such as budgets, projects, assets, loans, and foreign-currency exposure.
|
🎯 Most important principle
Never review a financial report only by asking whether the total looks reasonable. Ask whether the total is supported by the General Ledger, reconciled to the appropriate subledger or schedule, recorded in the correct period, classified in the correct account type, and supported by valid source documents.
|