Invoicing
Should this work have been invoiced?
An intervention finished, a contract still active, an order delivered… and invoicing that never followed. Kohentra tells a normal delay from a genuine miss.
Operational intelligence for Dolibarr
Kohentra learns how your business really uses Dolibarr, works out what should normally happen next, and shows you only what is worth a look. When a situation calls for it, it brings in a specialised business agent. Every conclusion can be explained and corrected, and each one sharpens the next.
Already a customer? Log in →
Everything else was examined and did not need your attention.
Example situation
Past · Present · Expected future
Your Dolibarr history: the objects you actually use, how they relate, the sequences they follow, their rhythms.
Not every gap. Not every missing record. Only the situations that, given how your business actually runs, deserve a human look.
When the evidence allows, Kohentra establishes what is expected (an invoice, a closure, a follow-up) and checks that it happens.
No crystal ball: an expectation your own data demonstrates, and always explained.
It discovers your business
Your Dolibarr is not a textbook model. Enabled modules, custom fields, data-entry habits: every company uses it its own way.
Kohentra doesn't ask you to describe everything up front. It connects to your Dolibarr read-only and discovers how you really work.
It learns what is normal
Billing rhythms, usual lead times, recurrences, sequences, exceptions that keep coming back: Kohentra measures how your business really behaves, on your own history, not on a generic rule.
And when it doesn't know enough, it holds back. And tells you so.
Missing data is never, by itself, an anomaly.
The expected future
Kohentra doesn't predict the future. It extends a rhythm it has measured, with a tolerance drawn from how regular that rhythm is, and refuses to project when the basis is too thin. A new projection can first run in observation, bothering no one, until it has shown it gets things right.
A short queue, not an alert feed
Kohentra isn't trying to detect as much as possible. It looks for the fewest situations that truly deserve your attention, and tells you why each one is there.
Business agents
Invoicing, closing an intervention, qualifying a ticket, matching related records: some situations need precise expertise. Kohentra knows which one, when, and within what scope.
A lone agent is not Kohentra. Kohentra is the layer that decides which agent looks at what, remembers what it concluded, and measures what its conclusions are worth.
Agent designer
Describe what you want an agent to do, the way you would explain it to a colleague. The designer helps you turn it into a complete definition that you review and approve: its domain, the situations it examines, its criteria, the context it may read, how it reasons, its possible conclusions and what each one means, and the actions it may propose.
Every agent is versioned. Every version declares what it reads and what it may request. Nothing is granted when it is created.
What do you want this agent to do?
« Spot the services we keep buying even though no active customer contract seems to cover them any more. »
New agent: version 1.0.0, in observation, with no authority at all.
Qualification
At Kohentra, improving an agent doesn't mean blindly swapping out the old one. A new version first works alongside the one in service, on the same situations, with no business effect. You compare. You judge. It goes live only when you decide.
| Version | Status | In your workspace |
|---|---|---|
| 1.0.0 | In service | Qualified on your judgements |
| 1.1.0 | Under evaluation | Same tickets, no effect · disagreements to judge |
| 1.2.0 | Prepared | Not published: runs nowhere |
A published version never changes. None inherits the trust earned by the previous one.
A new version isn't better because someone changed it. It has to prove it.
Humans at the heart of the loop
For every agent conclusion, you say whether it is correct, incorrect (and which conclusion was expected) or impossible to judge. It isn't a courtesy click: it's the only evidence Kohentra accepts.
Your judgements tell it:
Governed learning
Learning is continuous. Trust has to be demonstrated.
Objects, domains, usage, relations.
Habits, lead times, recurrences, business chains, expected events.
Conclusions confirmed, corrected or rejected.
Measured weaknesses drive a new version.
Every new version is tested against reality before it serves.
Kohentra is read-only by default. Today, most of what it concludes still goes to a human decision.
But trust can be earned. For each action, you choose the level of autonomy: propose only, execute after confirmation, or execute without prior confirmation once the evidence is there. Action by action, always supervised, always logged, always revocable.
Use cases
What Kohentra handles, phrased the way you would ask it.
Invoicing
An intervention finished, a contract still active, an order delivered… and invoicing that never followed. Kohentra tells a normal delay from a genuine miss.
Interventions
Close too early and you lose a follow-up still due. Close too late and it buries the ones that matter. Kohentra tells you when every condition is met.
Expected events
Your tools see what happened. Kohentra also sees what should have happened, and didn’t.
Support
Between spam, requests already dealt with and real customers left waiting, Kohentra sorts things out, and tells you why a ticket stands out.
Relations
Customer, contract, intervention, equipment: Kohentra measures what really links your records, and never passes off a correlation as a certainty.
Add-on modules
Asset management, connectors, in-house modules: Kohentra discovers the objects your add-ons bring and links them to the rest of your business, without custom code.
Security and control
Kohentra reads your activity to help you decide. It never grants itself the right to act, and every agent stays within the scope it has declared.
Each company has its own data, settings and users. None can see another's.
Nothing is written to your Dolibarr without explicit permission, action by action.
Each agent version declares what it reads, what it may pass to a language model and what it may request. Everything else is refused.
No agent can read an API key, a login or a token.
Conclusions, judgements, activations, permissions: who, when, on which version.
Roll back to an earlier version, withdraw a permission, put an agent back into observation: always possible.
Straight answers
No. Kohentra has a business memory, a model of how your objects relate, expected events, orchestration, qualified and versioned agents, and human review loops. Its core analyses are deterministic. When an agent does call a language model, the model sees only what the agent is allowed to send it, and it never gets write access.
Quite the opposite. Its whole purpose is to cut the noise: show you only what deserves your attention, with the facts that justify it.
No. It establishes what should normally happen based on behaviour and relations demonstrated in your data, and it holds back when it doesn't know enough.
No, and that's by design. An agent starts in observation, with no authority. It is qualified on your judgements, and every new version is evaluated and compared before it goes live.
It measures the quality of conclusions, exposes an agent's mistakes and drives its next versions. It never rewrites history, nor your Dolibarr.
No. Kohentra first discovers your objects, relations and usage. You stay in control of what it is allowed to read.
Kohentra works with Dolibarr today, and that is where it has proven itself. We don't claim to be a universal platform.
See the situations Kohentra brings to the surface, and how it backs each one up.
Already a customer? Log in →