Request access
Covenant monitoring for lenders. Portfolio reporting for private capital.

Five systems in. One figure out.

Kolis reads what each company files, maps it into one schema and tests it against the covenant in force that quarter. The result is written once and never quietly changed.

English and French. GBP, EUR and USD.

01 Filed

The same line item, as five companies actually filed it.

Systems
QuickBooks, Sage, Cegid, Excel, a PDF by email
Formats
1,024,500.00 and 1 310 000 and 880 000,00
Filed by
The company itself, in minutes
How a line is read

02 One schema

They file into one ledger. Every row the same width, the same order.

Mapped to
One field, turnover, whatever the line was called
Ambiguous
Asked about, never guessed. QuickBooks Total Income is flagged
Written
Once. A correction is a new row, the original stays
The three rules

03 Tested

The ledger becomes the book: every borrower against its own covenant.

The line
Each facility's own level in force that quarter
Over it
Jarrow Print Group, 4.39x against 4.25x. Breach, 3.3% outside
Near it
Harlech Precision, 3.84x against 4.00x. Inside by 4.0%

Demonstration book, synthetic figures. Kolis reports a calculation; it does not declare a default.

Test a covenant yourself

Filed

Every company files in its own system. Kolis reads them all the same way.

Kolis treats the companies you hold or lend to as users, not data sources. Here is the same line item as five companies actually filed it. A line that could mean two things is asked about, not guessed.

  • QuickBooks Total Income Flagged 1,024,500.00
  • Sage Sales Revenue 742,000
  • Cegid Chiffre d’affaires 1 310 000
  • Excel Turnover (net of returns) 469,000
  • PDF by email Revenue for the period 880 000,00

Mapped to

turnover

Four map cleanly and nothing is re-keyed. QuickBooks Total Income is a section subtotal that can carry interest, grants and FX gains, so it is asked about rather than assumed.

Recorded

Three rules the product will not break.

  1. 01

    Nothing rewrites a filed figure. Not even you.

    The filing table is append only. A correction files a new row and keeps the original, in every role including the fund’s own, and the screen shows where the two part company.

  2. 02

    A figure nobody reported is absent, not zero.

    Everywhere, including the exports and the covenant tests. A number that looks like a measurement and is not one is worse than its absence.

  3. 03

    The company that files gets something back.

    Filing takes minutes and partial submissions are accepted. A borrower reads its own covenant, with the working.

Tested

Put in a borrower’s figures. See the verdict Kolis would record.

Leverage and interest cover are the two covenants in almost every loan agreement, worked out here the way the product works them out, including when it refuses to give a number. It opens on the demonstration borrower; change any figure.

The filing, last twelve months
The covenants in force

All amounts in the one currency the borrower reports in. 48,750,000 or 48.75m. A blank figure counts as not reported, never as zero.

Net debt to EBITDA

?

Interest cover

?

In the product each facility also carries its own add-backs and their caps, its step-down schedule and its definition of debt, set once when the loan is set up. Nothing typed here leaves this page.

Certified result

Tested on what the borrower filed. Written once.

Net debt to EBITDA over twelve months, against the level in force that quarter. A restatement files a new result and keeps this one exactly as it was certified. No role can edit it, including yours.

Certified result Q2 FY26

Net debt to EBITDA

4.39x

covenant 4.25x maximum

Breach, 3.3% outside

Net debt
GBP 23,201,150
EBITDA, four quarters to Q2 FY26
GBP 5,285,000
Demonstration book, synthetic figures. Kolis reports a calculation; it does not declare a default.

The product

One dataset. Four audiences who should not see the same thing.

The same filing, served to each party as the thing it is entitled to see.

Shown

Each party sees only what is theirs.

Enforced in the database, not promised in the application. The lender and the borrower read the same result at the same moment. Anyone else is refused.

One covenant result, computed once from one borrower’s filing. Q2 FY26

The lending partner

Holds the facility

  • Borrower named
  • Leverage 4.39x
  • Covenant 4.25x
  • Verdict Breach
  • Book 18 of 18

That borrower’s own CFO

Files the figures

  • Borrower itself only
  • Leverage 4.39x
  • Covenant 4.25x
  • Verdict Breach
  • Book refused

An investor in that fund

Holds capital in it

  • Borrower refused
  • Leverage refused
  • Covenant refused
  • Verdict refused
  • Book by currency

A partner at another fund

No relationship to it

  • Borrower refused
  • Leverage refused
  • Covenant refused
  • Verdict refused
  • Book refused

Which named company is outside its covenant is between the lender and that borrower. An investor in a lending fund is shown the book by currency, the spread and the count, and no row that identifies anyone. Counts read under each account’s own session against the live database, not from a policy.

Where the data lives. The database runs in Frankfurt (eu-central-1). English and French. GBP, EUR and USD. Sub-processors are listed in the data processing agreement.

Read the data processing agreement

Request access

Kolis is taking its first funds.

It is built and it runs. The first conversation is a look at the working product rather than a deck, and a straight account of where it is.

What you run Required

Optional. Which systems your companies file from, which currencies, when you would want to start.

Or write directly to omar@kolis.io