Installation
What Customer Statements & Ageing requires, how to install it, and how to check the install worked.
Requirements
- Odoo 18.0, Community or Enterprise
- Invoicing (account)
Nothing else. No external service, no API key, no outbound connection.
Install
- Put technovision_customer_statement in your addons path.
- Update the apps list and install Customer Statements & Ageing.
It adds a Statements menu under Invoicing → Customers, two security groups, a dispute flag on customer invoices, and a bilingual statement report.
Give somebody the groups
| Group | Can |
|---|---|
| Statements User | Generate statements, flag disputes, print |
| Statements Manager | The above, plus exclusions and configuration |
The user group implies account.group_account_readonly rather than reaching for sudo(). That matters: multi-company record rules still apply, so somebody who cannot see another company's invoices cannot see them on a statement either.
Check the install worked
- Invoicing → Customers → Statements → New.
- Pick a customer with posted invoices, set a period, generate.
- The statement shows an opening balance, the movements, and a closing balance.
- Print. You get one PDF with English and Arabic side by side.
If the closing balance does not equal opening + charges − credits, that is a bug and we want to hear about it — there is a test that fails if the arithmetic ever stops reconciling.
It does not chase anybody
Worth knowing before you install it: there is no dunning engine, no reminder emails and no escalation levels. Installing it will not start mailing your customers.
That is a deliberate split introduced in 2.0.0:
- This module answers what does this customer owe, and what made it up?
- technovision_payment_reminders answers who needs chasing, and how firmly?
Neither depends on the other. Buy either or both — and when both are installed, the dispute flag this module puts on an invoice also stops the reminder module chasing it, without either module having to know the other exists.
Upgrading from 1.x
Version 1.x did chase overdue invoices, which duplicated technovision_payment_reminders. A customer running both received two letters about one debt, so the engine was removed in 18.0.2.0.0.
On upgrade this module:
- removes its own reminder mail template and the cron's server action — its own leftovers, and inert;
- leaves your reminder history alone. statement_reminder_policy, statement_reminder_level and statement_communication keep their rows. Nothing reads them any more.
Those tables are your record of who was chased and when. An upgrade should not delete that, so it does not. A warning in the server log names them with row counts, so you can drop them by hand if you would rather.
If you want the chasing back, install technovision_payment_reminders.
Uninstalling
Removes statements and their lines. Invoices are untouched — the dispute flag is removed with the module, so re-installing means re-flagging.