Skip to content
CogniYukti

Services delivery · sold to delivered

Most services businesses find out their margin after the project.

By which point the hours are approved, the expenses are absorbed, two changes were agreed on a call and never priced, and the one milestone everybody forgot to invoice is nine weeks old.

None of that is a reporting problem. Each is a moment where the product should have refused, or noticed.

  • A document that will not send if it does not add up
  • Rates pinned at approval, so history never moves
  • Five rules that find what you did and never billed
Send for signature
refused

The fixed price is €240,000. The milestones that trigger billing add up to €228,000.

Difference: €12,000

Found before the client sees it, not during the first invoice conversation. And the refusal names the number rather than saying the document is invalid.
Illustrative

Where this usually lives

A spreadsheet, a project tool, and a conversation nobody wrote down.

The commercial terms are in a document somebody wrote in a word processor. The plan is in a project tool that knows nothing about money. The hours are in a timesheet product. The margin is in a spreadsheet one person maintains.

Every seam between those is a place where the thing that was sold and the thing being delivered quietly diverge — and the divergence is only ever discovered by the person doing the reconciliation, weeks later, with no way to prove which side was right.

  • The client's obligations are rows, not a paragraph

    What they owe you — access, data, a decision, a person — each with an owner and a deadline, on the document they signed.

  • Eight parts can be bought separately

    Timesheets without expenses, statements of work without resourcing. Each refusal names which part is missing rather than failing vaguely.

  • A version is taken before an edit, not after

    So the snapshot that exists is the state as it was signed — with the reason written into the code.

Change

A signed change rewrites the live project, in one act.

Not a note on a project. A change request is priced line by line — each an addition, a removal or a modification against something specific, with its own effort and its own money. The header total is derived from the lines and recomputed on every edit, so it can never be typed wrong.

The approval chain depends on the price: above a threshold a finance step is inserted; below it, skipped. Approving does not apply the change — it mints a numbered change document and waits for the client.

Client signs the changeOne transaction. All of it, or none.
  1. 01Signs the change document
  2. 02Adds the two new deliverables — and mirrors each as a project milestone
  3. 03Adds the extra consultant, with a booking
  4. 04Raises the budget by the summed value and the summed hours
  5. 05Moves the end date by the agreed number of days
  6. 06Which raises the ceiling the leakage rule measures against
Which is why the margin reads correctly the same day, rather than after somebody remembers to update four screens.
Illustrative

The whole module

Every capability, with a page that names the screen.

Written after reading how each one actually behaves — which is why each page tells you what it refuses to do as plainly as what it does.

See every capability in one list — all 4

Questions that decide it

Including the ones about what it will not do.

Is there a Gantt chart or a critical path?

No — and this is the clearest boundary in the module. Milestones have real dependencies with a proper cycle check, and nothing computes a critical path, a float or a baseline from them. If scheduling is the problem you are solving, this is not the tool.

Can the client accept milestones themselves?

Not directly. Acceptance and change sign-off are recorded by your team on the client's behalf — the code calls it the proxy pattern. The statement of work itself is signed by the client, through a link, with the document re-hashed at the moment of signature. Worth knowing which is which.

Does it recognise revenue across a project?

No. Revenue recognition exists in the product for subscriptions; milestone, time-and-materials and expense invoices do not enter it. There is no work-in-progress or unbilled accrual here.

Do monthly retainers invoice themselves?

Not from this module. Automatic billing covers time-and-materials work; a retainer's automated path is milestone acceptance. A monthly cadence recorded on the document does not by itself raise anything.

Are public holidays taken out of capacity?

Approved leave is. Holidays are not, today — a holiday calendar exists elsewhere in the product and this calculation does not join it. Plan for a manual adjustment in a heavy holiday month.

What does it cost?

We quote rather than publish. Which of the eight parts you need, and how many people deliver, move the number too much for a price list to help.

Book a demo

Bring a statement of work you have already sent.

The last one is usually the uncomfortable part of the demo.

  • Load its milestones and see whether they sum to its price
  • Approve a timesheet, change the rate card, and check last month's cost
  • Price a change, approve it, sign it, and watch the budget move
  • Open the leakage list on a project you thought was finished