Latest, 21 Oct 2026:23 usersMove the mouse over the chart for any month
Ratings count
monthly, 3 months
Latest, 21 Oct 2026:5 ratingsMove the mouse over the chart for any month
The Chrome Web Store rounds user counts down to the leading digit, so the user line moves in steps. The ratings count is exact and is the better signal of real adoption.
About Odoo Ledger X-Ray
THE ACCOUNTING REVIEW COCKPIT FOR ODOO 17, 18 AND 19
Built for accounting people: firms, chartered accountants, auditors, finance managers and their teams.
Odoo Ledger X-Ray turns the review of an Odoo database (monthly close, year-end preparation, client-file review) into a guided, traceable, repeatable process, right in a side panel next to your Odoo.
Nothing to install on the server, no credentials to enter: the extension relies on your already-open Odoo session and talks to the database read-only (JSON-RPC). Works with Odoo Online (SaaS) and self-hosted instances.
YOUR REVIEW IN FOUR MOVES
Open your Odoo database, click the icon: database, version and companies are detected automatically.
Pick the period (month, quarter, fiscal year, prior year, or custom dates) and the scope (companies, journals).
Run the checks: a health score out of 100 and the findings ranked by severity.
Work the list: every line opens in Odoo in one click, gets triaged, annotated, explained, exported.
THE 16 BUILT-IN CHECKS, IN DETAIL
Draft entries in locked periods - entries still in draft inside an already-locked period, lock dates read company by company: clear them before any filing.
Sequence gaps - missing numbers in each journal's numbering, the first thing any auditor looks at.
Duplicate vendor bills - same supplier and same amount within a configurable window of days (7 by default), or identical vendor reference; two distinct, filled-in references clear the pair, so two separate subscriptions from the same provider are not flagged by mistake.
Unbalanced draft entries - debit and credit that do not match.
Entries modified after review - documents edited after they were checked.
Uncleared suspense accounts - 471, 472, 58 by default, prefixes fully configurable: a lingering suspense account is an unfinished close.
Unreconciled bank lines - statement lines with no reconciliation over the period.
Aged open items - receivables and payables beyond the day threshold you set (90 by default): your aged balance, turned into actionable findings.
Missing partner - lines on partner accounts without a partner: no matching possible.
Empty labels - entries with no description, indefensible under audit.
Missing vendor references - purchase invoices without the source document reference.
Sales cut-off - delivered not invoiced within the period: revenue to accrue.
Purchase cut-off - received not billed: expenses to accrue, invoices not yet received.
VAT lines without tax grids - tax or base lines missing their tax grids: your VAT return will not tie out.
Benford's law - first-digit distribution of amounts to spot atypical entry patterns.
Balances with abnormal direction - debit-balance payables, credit-balance receivables, credit-balance cash (cumulative at the end date), credit-side expenses or debit-side income over the period: every accountant's review reflex, automated. Every check can be enabled or disabled individually, with a per-check minimum amount in euros to ignore the immaterial. Checks that depend on an absent module (sales, purchase) are skipped cleanly instead of raising errors.
BEYOND THE CHECKS: UNDERSTAND AND ACT
Explain (AI): on each finding, a button asks the AI for a pedagogical explanation of the entry involved (accounts moved, direction, VAT), to train a junior or clarify an unusual document.
Partner card: from a finding, open a digest of the partner involved without leaving the panel.
Journal-entry assistant: paste lines from a spreadsheet and the extension prepares a miscellaneous-operations entry as a draft in Odoo; nothing is ever posted automatically, validation stays in Odoo, under your control.
THE HEALTH SCORE OUT OF 100
Severity-based penalties (critical or to-watch), capped per check so a single topic cannot drown the others. The score is computed net of the findings you have justified; the raw score is kept alongside. Between two runs: trend, number of new findings, number of resolved findings.
TRIAGE, NOTES, WORKING PAPERS
Each finding is triaged in one click through a cycle of Seen, then Justified, then To fix, and annotated freely (payment plan agreed, internal recharge, and so on). Triage is remembered per database: next run, your review work is still there. Justified items leave the score but stay documented: struck through with their note in the review report, in a dedicated CSV column. That is your evidence of due diligence, usable internally and on engagements.
TRIAL BALANCE, PERIOD COMPARATOR AND VENDOR LEDGER
The trial balance lives right in the panel: debit, credit and balance per account over the period, account-class filter, search, totals row and a CSV export ready for Excel. The "Compare with" selector adds two columns (compared balance, variance) depending on the mode: previous period of the same length, same period one year back, or fully custom dates. The vendor ledger aggregates payable accounts per partner: period movements, cumulative balance at the end date (red when debit), portion of the balance older than your open-items threshold, direct link to the partner form and CSV export. Both views respect your selected companies and excluded journals.
PRIOR-YEAR COMPARISON
A per-account balance snapshot is kept at every run; the extension computes the same period one year back, shows the score you had then and the fifteen largest per-account variations: analytical review material without leaving the panel.
MULTI-COMPANY AND JOURNALS
Company selector sorted alphabetically, or all companies at once; lock dates evaluated per company; per-database journal exclusions: keep opening or simulation journals out of your checks, once and for all.
YOUR X_STUDIO FIELDS
Your Odoo Studio custom fields become first-class citizens. Click "Analyse the open database": the extension discovers the available fields model by model, with human labels; you pick, they are validated against the database, then shown on every finding, exported as dedicated CSV columns, carried int…