Deltatech Average Payment Period
by Terrabit https://www.terrabit.ro , Dorin Hongu https://www.terrabit.ro| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Invoicing (account)
• Discuss (mail) |
| Lines of code | 182 |
| Technical Name |
deltatech_average_payment_period |
| License | OPL-1 |
| Website | https://www.terrabit.ro |
| Versions | 16.0 17.0 18.0 19.0 |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Invoicing (account)
• Discuss (mail) |
| Lines of code | 182 |
| Technical Name |
deltatech_average_payment_period |
| License | OPL-1 |
| Website | https://www.terrabit.ro |
| Versions | 16.0 17.0 18.0 19.0 |
Deltatech Average Payment Period
Computes average duration of cash accounting
Tracks how long customers and suppliers actually take to pay, giving finance teams a concrete measure of cash-collection and payment efficiency.
For each reconciled journal entry the module records the exact payment date and computes the number of days elapsed since the invoice date. An aggregated pivot/graph report — Average Payment Period — is added directly to the Accounting Reports menu so managers can slice the data by partner, journal, or period at a glance.
Key features:
- Payment Date— automatically derived from the reconciliation partner line and stored on each
account.move.line. - Payment Days— difference (in days) between the invoice date and the payment date, weighted by the line amount for accurate averages across grouped data.
- Plain Payment Days— simplified variant limited to customer invoices (
out_invoice) and vendor bills (in_invoice), excluding credit notes, for cleaner KPI reporting. - Average Payment Period report— a dedicated pivot and graph view (menu: Accounting > Reporting > Average Payment Period) grouped by partner by default; filterable by date, partner, journal, and account.
- Weighted average calculation— when grouping rows, the average is computed as
sum(amount × days) / sum(amount)rather than a plain arithmetic mean, preventing distortion from small-amount outliers.
Usage
Viewing the Average Payment Period report
- Open Accounting and navigate to Reporting > Average Payment Period.
- The pivot view opens pre-grouped by Partner, showing for each
partner:
- Balance — total reconciled amount.
- Payment Days — weighted-average days to payment across all reconciled lines.
- Plain payment days — average days for customer invoices and vendor bills only (credit notes excluded).
- Use the search bar to filter by partner name, reference, or date range. The Date filter supports month/quarter/year buckets.
- Switch to the Graph view for a visual comparison across partners or time periods.
- Add or remove groupings (e.g. Date, Journal) via the Group By menu to break down the average by period or by journal type.
How Payment Days are populated
Payment Days are computed automatically whenever a journal entry line is fully reconciled:
- ✓The module looks at the
full_reconcile_idof eachaccount.move.lineand finds the date of the matching counter line (credit side for debit lines and vice versa). - ✓This date is stored as Payment Date on the journal entry line (visible in the Journal Items form under the Due Date field group).
- ✓The difference
payment_date - invoice_date(in days) is stored as Payment Days.
No manual action is required; values update automatically on reconciliation and de-reconciliation.
Bug Tracker
Bugs are tracked on Terrabit Issues. In case of trouble, please check there if your issue has already been reported.
Do not contact contributors directly about support or help with technical issues.
Credits
Authors
- Terrabit
- Dorin Hongu
Maintainers
Current maintainer:

This module is part of the dhongu/deltatech project on GitHub.
You are welcome to contribute.
Need help getting started?
We are an Odoo partner building apps for the Romanian market (SAGA & WinMentor export; Romanian accounting localization in progress). Direct support from the team that built the module.
Contact Terrabit →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