$ 1746.90
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Invoicing (account)
• Discuss (mail) |
| Community Apps Dependencies | Show |
| Lines of code | 2160 |
| Technical Name |
l10n_ro_account_report_inventory_register |
| License | OPL-1 |
| Website | https://www.nexterp.ro |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Invoicing (account)
• Discuss (mail) |
| Community Apps Dependencies | Show |
| Lines of code | 2160 |
| Technical Name |
l10n_ro_account_report_inventory_register |
| License | OPL-1 |
| Website | https://www.nexterp.ro |
Romania - Inventory Register (Registrul-inventar)
Tipizat Romanian Inventory Register (Form Code 14-1-2) — balance-sheet snapshot at fiscal year end, grouped in Assets / Liabilities sections per account type, exportable as PDF, Excel and CSV.
Overview
This module produces the Romanian standardised Inventory Register (Registrul-inventar, Form Code 14-1-2) as a printable tipizat A4 form, plus Excel and CSV exports for archival or further processing.
The register is a fiscal-year-end snapshot of every balance-sheet element (assets, liabilities, equity) carrying a non-zero balance at the cut-off date. Each account is listed with its book value and its inventory value side by side, with a difference column and a causes column reserved for manual annotations on the printed form.
Rows follow the chart-of-accounts hierarchy built from Odoo's
account.group parent/child structure (the same one used for the
Balance Sheet / Trial Balance):
- Accounts are ordered by code ascending and listed under the most specific group they belong to.
- Group rows appear as bold sub-headers indented per nesting depth, each carrying a subtotal computed over its full subtree.
- Empty groups are skipped automatically.
- A grand total closes the form.
- The starting
Nr. crt.is parametric, so successive years can be numbered as one continuous sequence.
Built & supported by NextERP Romania
Romanian Odoo specialists, here for the long run — from implementation to localization and day-to-day production support.
What we do
Odoo Solutions
From quick-start rollouts to multi-company deployments and custom modules built for your processes.
Romanian Localization
SAF-T (D406), e-Factura, e-Transport, D300 / D390 / D394, ANAF integration, full chart of accounts and fiscal positions.
Our Services
Implementation, customization, migration, integration, support and consultancy — Romanian-speaking, SLA-backed.
Features
- Tipizat Form Code 14-1-2 — six-column layout (No., Description, Book Value, Inventory Value, Difference, Causes) with company header (name, Tax ID), cut-off date and the standard "Prepared by / Management" signature footer.
- Balance-sheet scope — covers every account whose
account_typeis in the asset / liability / equity / payable / receivable family (P&L accounts are excluded by design — the register is a standing balance snapshot, not a flow statement). account.grouphierarchy — accounts are nested under their Odooaccount.groupparents, with per-group subtotals computed recursively over the subtree. Empty branches are pruned.- Three output formats — PDF (
Form Code 14-1-2printed in the top-right corner), Excel (xlsxwriter, low-memory streaming) and CSV (;-delimited, UTF-8 BOM for Excel compatibility). - Continuable numbering — the wizard takes a starting
No.so successive registers chain into one uninterrupted sequence. - Hide-zero toggle — by default accounts whose balance rounds to zero at the cut-off date are skipped; disable to print every balance-sheet account.
Configuration
The module is plug-and-play: no master data has to be created
specifically for the Inventory Register. The wizard reads every
posted account.move.line and resolves account names, codes and
group hierarchy through the standard Odoo account.account /
account.group records.
A few prerequisites must be satisfied on the company before the register makes sense as a printable document:
- Chart of accounts — ensure the Romanian chart of accounts is
installed and the
account.grouprecords exist (Odoo computes their membership from the code-prefix range, so as long as the chart was installed normally the hierarchy is ready). - Posted entries up to the cut-off date — only
parent_state = 'posted'move lines are aggregated; draft entries are ignored so the cut-off snapshot is reproducible. - Company header data — set the company
vat(Tax ID) on Settings → Companies so it shows in the PDF / XLSX / CSV header rows alongside the company name. - Multi-company — if you operate several companies, the wizard
defaults to
env.companyand the company selector is shown only when the user belongs tobase.group_multi_company.
Access to the wizard is granted via the account.group_account_user
group (declared in security/ir.model.access.csv); no further role
configuration is required.
How it works
Opening the wizard
Go to Accounting → Reporting → Romania → Inventory Register. The
menu item is registered under the Romania-scoped statements menu
contributed by l10n_ro_account_enterprise and is visible to users
holding account.group_account_readonly.

Wizard fields
| Field | Meaning |
|---|---|
| Company | Defaults to the active company; selector only shown in multi-company mode |
| As of | Cut-off date for balances — defaults to December 31 of the current year |
| Starting number | First value of the No. column; use this to continue from a previous register |
| Hide zero balances | When ticked (default), accounts whose balance rounds to zero are skipped |
| Output format | PDF (tipizat A4), Excel or CSV |
What happens on Generate
- The wizard runs a raw SQL aggregation across
account_move_linefiltered onparent_state = 'posted',date <= as_of_dateand the balance-sheet account types (asset / liability / equity / receivable / payable). - Each account is attached to its
account.groupvia the standard Odoo computation (code-prefix range), and the printable rows are emitted depth-first: group open / accounts / group close, with per-group subtotals computed over the full subtree. - The selected renderer (PDF / XLSX / CSV) is invoked. PDF uses a
QWeb template with
Form Code 14-1-2printed in the top-right corner, six bordered columns, alternating gray shades per group depth, and aGRAND TOTALrow in dark gray. XLSX mirrors the same layout viaxlsxwriterinconstant_memorymode. CSV is;-delimited with a UTF-8 BOM so Excel opens it directly. - The generated file is streamed back to the browser through
/web/content; the wizard record retains the binary in itsfile_datafield for re-download until garbage-collected.
If no balance-sheet account has a non-zero balance at the cut-off
date the wizard raises a UserError instead of producing an empty
form.
Versions
19.0.1.0.0 (2026-05-24)
- Changelog tracking starts at this release.
Discover the NextERP suite
Other modules from the same publisher, built to work together.
NextERP Romania
Odoo implementation, customization, Romanian localization and long-term support since 2018.
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module