Skip to Content

Treasury — Rolling Forecast, Credit Lines and Covenants

Cash Flow Forecast, Credit Lines and Bank Covenants for Odoo Community — rolling forecast built from real due dates, unbilled sales and purchase orders and recurring flows, multi-bank multi-currency consolidated position with the rate and its age on every line, credit line headroom, and dated covenant measurements. Quote providers plug into the existing dyo_connexions_base source chain.

199.00 € 199.00 €

Free
Cette application n'est pas vendue ici : utilisez les boutons Odoo Apps Store ou Omnifloo ci-dessous.
Terms and Conditions
30-day money-back guarantee
Shipping: 2-3 Business Days

Cash Flow Forecast, Credit Lines and Bank Covenants for Odoo Community — rolling forecast built from real due dates, unbilled sales and purchase orders and recurring flows, multi-bank multi-currency consolidated position with the rate and its age on every line, credit line headroom, and dated covenant measurements. Quote providers plug into the existing dyo_connexions_base source chain.

View on the Odoo Apps StoreTry it on Omnifloo

Overview

Treasury — forecasting, financing and covenants

Odoo Community ships account. It ships no cash forecast, no consolidated bank position, no credit line, no covenant. Verified on September 14, 2026 in the shipped modules: the only cash chart in the standard product is the one on the Accounting dashboard — per journal, over the past thirty days, based on statement lines. It is a rear-view mirror, and there is one per bank.

Also searched as: Odoo cash flow forecast, cash flow forecast Odoo Community, Odoo cash plan, Odoo consolidated multi-bank position, Odoo credit line, Odoo bank covenant, Odoo available drawdown, Odoo 19 multi-currency treasury.

The forecast starts from actual due dates, not from a spreadsheet

Each line says where it comes from and links to its source document in one click: accounting due date, sales order not yet invoiced, purchase order, recurring flow, credit line repayment. Four methodological decisions govern the calculation.

  • The starting point is the position, that is, the balances of the tracked accounts, not zero.

  • Actual due dates take precedence. From an order, the forecast only includes the portion not yet invoiced: the invoice is already counted with its actual due date, which is the right one.

  • The degree of certainty is recorded, never averaged. Certain, probable, assumed: each line states it, and the screen lets you view only what is certain. Weighting by a probability coefficient would have produced a single figure nobody knows how to interpret.

  • A due date that has already passed weighs on today. Discarding it because it precedes the start date would make overdue invoices disappear — precisely the ones cash flow depends on most.

The highlighted figure is not the closing balance: it is the low point and its date. That is what drives the decision.

The consolidated position states which rate was used, and how old it is

Adding up currencies is easy. Defending the total six months later is not. A position is therefore a dated snapshot that freezes, line by line: the balance in currency, its origin — bank statement or journal entries —, the rate used, the date of that rate and its source. A rate older than the expected freshness is marked outdated. The total is still calculated: an old rate is better than no figure at all, provided its age is visible.

Credit lines are not balances

A credit line is not money you have, it is money you can draw. It never enters the consolidated position. Authorized overdraft, revolving credit, term loan, factoring, Dailly assignment (French receivables financing): the module tracks the authorization, drawdowns, repayments and the resulting available balance. A constraint prevents the outstanding amount from exceeding the authorization, because a drawdown entered twice would produce a negative available balance displayed as just another number.

Covenants are recorded, never interpreted

Breaching a covenant is not a technical incident: it is an event of default triggering acceleration, that is, the bank's right to demand immediate repayment. The module records the measured value and the threshold in force on that day — frozen in the measurement, so that an amendment signed in June does not retroactively make the March measurements compliant — and states whether the threshold is breached.

It does not tell you whether to call the bank. Nor whether to negotiate an amendment, request a waiver, or whether the breach is serious. These decisions depend on the contract, the banking relationship and legal advice. No field in this module carries a recommendation, and a test verifies it.

Exchange rates: the API and its fallback

The module plugs into the source chain of dyo_connexions_base — it does not write a second one. Four providers with a free tier are prepared and shipped disabled: Alpha Vantage, Twelve Data, Financial Modeling Prep, EOD Historical Data. Connect the one you have.

Bloomberg is not offered: its programmatic access requires a Terminal subscription costing tens of thousands of dollars a year, which no buyer of an Odoo Community app has. Yahoo Finance has had no official public API since 2017 — what circulates are undocumented endpoints that break without notice — and Google Finance exposes no API.

With no key at all, the module works. It uses the rates already stored in Odoo, invents nothing, and shows on each line where the rate comes from. This is the fallback, and it is the most common case.

Not proven in production

The four quotation connectors have not been run against the live services. All four require registration, and no key was available on September 14, 2026. The endpoints and the position of the rate in the response come from the public documentation; they have not been confirmed by a real call. That is why the URL, the key parameter name, the currency pair format and the rate path are all editable fields, and why the base module's “Try” button returns the raw response.

The entire module is tested by its automated tests on a fresh Odoo 19 database, network calls included — against recorded responses, errors and quotas included. It has not been run for a full quarter by a real user.

What the module does not do

It calculates no interest: doing so would require knowing the calculation basis, day-count convention and fees of each agreement, which it does not read. It does not calculate a covenant ratio on your behalf: the EBITDA in a loan agreement is almost never the one in the chart of accounts. It connects to no bank — retrieving statements is a different job. It does not replace the financial reports of Odoo Enterprise.

Specifications

Price€199 excl. VAT
LicenseOPL-1
Odoo series19.0: published on the Odoo Apps Store; 20.0: published on the Odoo Apps Store
Version1.0.0
EditionOdoo Community / on-premise
Technical namedyo_tresorerie
DomainAccounting and finance
Free version (lite)dyo_tresorerie_lite

Price excluding VAT as displayed on the Odoo Apps Store; purchase and installation are done on the Store or through your Omnifloo instance.