Governed AI execution

AI writes the plan.
Determinism executes it.
The record proves it.

Pruvato runs real business work — starting with customer quotations — under rules you approve, with every outcome independently verified against your own systems and kept on a tamper-guarded record.

Get your free Quotation Health Check  See how it works

Core engine live · Zoho workflow in partner build UAE design-partner program · 3–5 businesses Zoho Books · WhatsApp-first
One quote, start to finishfrom a real run
Customer request arrives on WhatsAppTue 09:14 · fingerprinted the moment it landsreceived
One price isn't in your list — so it asks you instead of guessing"DUC 2.5 SC — which price applies?" · nothing invented, everstopped & asked
You approve this exact version — change a line and the approval no longer countsapproved by name, tied to the document's fingerprintyou approved
Registered in your Zoho — then checked by a separate read-only accountconfirmed against your books, not the AI's word for itconfirmed
A quantity changed after approval — caught, and you hear it firstline 2: 50 became 65 · flagged before it costs anythingdoesn't match
See the raw record behind these five rows ▸
run 4e30…d1d4 · tenant zoho-sandboxjournal · append-only
12plan.parked run 7c2b…f114 · price for item 7042…1180 not in catalogue · stopped, asked instead of guessed
14rfq.received content sha256:41c9… · source whatsapp-text@1.0.0
15plan.compiled 2 lines grounded · 1 unknown surfaced → asked, not guessed
17approval.granted console:Kenan Deen · bound sha256:b8ef…3812
18quote.registered → attest independent read-back · read-only at the provider
19read-back mismatch → refute line 2 (item 5001…3049): quantity 50 ≠ 65 · drift caught, on record
Excerpted rows, each shown exactly as recorded — not a screenshot of a claim. Parked means the plan stopped and asked instead of guessing. And the verdicts: attest = Confirmed · refute = Doesn't match — needs you · unknown = Not confirmed yet — the same three states, in the record's own words.

AI drafts your quotes

From the WhatsApp message, priced from your own list, never guessing.

Your rules can't be broken

A quote that breaks them stops and asks you.

Every quote proven

Confirmed in your own Zoho by a read-only account, on a permanent record.

Get your free Quotation Health Check

What we build under

Four working rules.

A completion message is a claim, not evidence.
The policy is the execution path, not a photograph beside it.
The doer never vouches for its own work.
Unknown is an answer. Nothing is assumed done.
The problem

The accountability gap.

AI can already draft your quotes, update your systems, message your customers. But when a customer, an auditor, or your own accountant asks "why did this happen?" — most AI tools can only show you what the AI said it did.

What you get today

"The AI says it's done."

A confident message from the tool itself. Useful for debugging. Worthless when money or a customer relationship depends on it.

What you get here

Your Zoho confirms it.

A separate read-only account reads your books back and compares, line by line. The AI's word is never the proof.

What you get today

Activity logs.

Thousands of technical entries showing that things ran — not whether the right thing happened, or who allowed it.

What you get here

A record built for questions.

What ran, under which of your rules, approved by whom, with what result — permanent, and answerable in one lookup.

What you get today

Problems caught afterwards.

The discount below your floor is discovered in review — after the quote went out.

What you get here

Problems that can't run.

Your rules sit inside the execution path. A quote that breaks them isn't flagged — it stops, and asks you.
Only possible when you govern the work itself

What you get today

Silence when nothing happened.

The quote that was never registered, the follow-up never sent — no log entry, no alarm. Nothing looks wrong.

What you get here

The missing step, caught.

Every job runs against a declared plan — so the step that never happened shows up as unfinished, never as fine.
Only possible when you govern the work itself

The burden of proof should sit with the system — not with you.

The mechanism

One governed path from request to proven outcome.

Describe the work AI proposes

Paste the customer's WhatsApp message. The model drafts a plan — line items, prices, terms — grounded against your real catalogue and rules.

The compiler disposes Deterministic

Every field is grounded or becomes a question. Numbers come from the customer's text or your price list — never invented, never averaged into existence.

You approve — bound to the version Human

Exceptions reach you as a named decision on an exact document hash. Change one line afterward and the approval no longer covers it. "Ok 👍" is not an approval; this is.

Deterministic execution Engine

The engine — not the model — performs the work, under the approved plan, with rules enforced in the execution path. A below-floor quote isn't flagged. It cannot be sent.

Independent verification, on the record Independent check

The part that checks the work reads your systems back independently, and reports Confirmed, Doesn't match — needs you, or Not confirmed yet — never assumed. Every action lands on your record, permanent and searchable by your team — and trustworthy to an auditor.

The proof, up close

Every action is three stories. Only one of them counts.

What was supposed to happen, what the system says happened, and what your books show. Most tools stop at the second. The verdict here only ever comes from the third.

Expectedfrom the version you approved Quote QT-000148 · AED 17,010.00
3 lines · VAT 5% excl. · valid to 03 Sep
approved by name, tied to fingerprint b8ef…
Claimedwhat the tool reported — unverified "Registered successfully"
a receipt is what we were told,
not what is true — so it's drawn in a dashed box
Observedread back from your Zoho, independently 1 quotation found · matches
read by a separate account that cannot write
observed 14:31 · compared line by line
Confirmed. Your books agree with what you approved, checked by an independent read-back. That's the only green we show.
Expectedfrom the version you approved Quote QT-000152 · line 2 · qty 50
GI Conduit 25mm × 50 @ 28.00
Claimednothing — the change was made quietly No report at all
edits made behind the system's back
produce no claim to check, so nothing here would ever raise the alarm
Observedread back from your Zoho, independently Line 2 quantity is 65
50 ≠ 65 · exactly one field differs
named precisely, nothing else disturbed
Doesn't match — you hear it first. A quantity changed after your approval. It's flagged with the exact line and nothing goes further until you decide.

The trail behind the green box

01Draft prepared and priced from your own listhappened 10:51:10 · recorded 10:51:10prepared
02Prices confirmed current against your cataloguehappened 10:51:12 · recorded 10:51:12 · confirmed live, against the catalogue at that momentchecked
03You approved this exact version, by namehappened 10:51:40 · recorded 10:51:40 · fingerprint b8ef… sealed to your answeryou
04Registered in Zoho — the tool's own receipthappened 10:51:44 · recorded 10:51:45 · a receipt is a claim, so it can't close the caseclaimed
05Read back by the read-only account — matches your approvalhappened 10:51:49 · recorded 10:51:49 · this is the row that actually turns the case greenconfirmed

Two clocks on every row — when it happened, and when it reached the record — because a slow check and a late entry are different things, and the record says which. Drawn from real sandbox runs; identifiers shortened.

What this looks like across a whole account

Example — what your dashboard shows. Not live customer data.

Confirmed in your booksAED 812,400independently read back and matched — the only figure we call done
Doesn't match — with youAED 3,9271 quote differs from its approval · awaiting your ruling
Not confirmed yetAED 41,780checks still due or a system hasn't answered — never counted as done

Three buckets, never blended into one score — a single "98% healthy" number is exactly the kind of reassurance that hides the AED 3,927. Every figure opens to its own quotes.

Your rules, sealed

Decided under your rules — and the record keeps which rules.

Every decision is stamped with the exact rules in force at that moment. Update your rules next month and old records stay judged by the rules of their day — nothing is quietly re-graded.

The facts at decision time
Quote totalAED 17,010.00 Largest line discount0% Validityto 03 Sep 2026 Effect requesteddraft only Rules versionyour-rules · v1.0.0
Checked against your rules — all passed
Discount floor respectedno line priced below your declared minimum
Validity date presentevery quote carries an expiry — quotes that can't expire die undecided
Draft-only ceilingnothing may send, accept, or change status on your behalf
Named approval required for this valueabove your threshold, a person answers — every time
Sealed, not photographed: these rules aren't a note beside the action — they're what the engine ran under. A quote that breaks them doesn't get flagged for review. It stops, and asks you. And changing any rule requires your approval, tied to the new version.
When it doesn't match

Exceptions come to you with the facts — and your ruling goes on the record.

Two lists, kept separate on purpose: things that need your decision, and things that couldn't be determined yet (a system didn't answer, a check is still due). Blurring those is how real problems hide in noise.

Needs your decision

Quote in Zoho differs from what you approved

You approvedline 2 · qty 50
Your Zoho showsline 2 · qty 65
Value affectedAED 441.00

Accept the change

The new quantity stands as a documented exception. Your reason is required and recorded word-for-word — a ruling must say why.

Have it corrected — then we re-check

Fix it in Zoho (or ask us to draft the correction), and the same read-only account re-reads your books until they match your approval again.

The same read-only account checks your books again after the fix — the case closes once they actually match your approval.

Your ruling never rewrites the mismatch — it's added beside it, so the record keeps both the problem and the decision, in order, forever.

Why it's different

Evidence tools watch agents. Pruvato governs the work.

Rules run inside execution

Policy in the execution path

Snapshotting the rules beside an action lets violations be reviewed after the money moved. Here, the rules are what the engine executes under — violations don't need catching, because they can't run.

Omissions caught

The absent step has nowhere to hide

Watching actions can't see the action that never happened. A declared plan can: the registration that was skipped, the follow-up that never went out — surfaced as Unknown, never assumed done.

No self-vouching

Separated by construction

The identity that writes holds no power to verify; the identity that verifies is read-only at the provider itself — a ceiling we can prove, by attempting a write and keeping the refusal on record. The record is trustworthy because no one gets to grade their own homework.

Judged by a program

Judged deterministically

Governance is arriving everywhere, and that's good — the question underneath it is who sits in the judging seat. Here, a read-only account reads your system of record and compares values, line by line — no second model forming an opinion about the work. That account holds no permission to write, so its findings stand on their own.

Your Zoho connection

What it can do, and what it's allowed to do here.

These are two different things, and the difference is written down rather than promised. What follows are the default rules for a new connection — yours are generated for your own setup and may differ. The right-hand list isn't a feature we haven't built yet — it's a set of actions this connection is structurally unable to perform in your account.

Authorised hereWhat it may do
  • Create a draft quotation, after you approve that exact version
  • Read your customers and price list, to ground the quote in your real data
  • Read a quotation back to confirm it arrived exactly as approved
Not authorisedWhat it cannot do
  • Send a quotation to your customerSending stays with you — the connection has no permission for it
  • Change a quotation's status, or accept one on your behalfDraft is the ceiling; no status transition is permitted
  • Edit or delete anything already in your booksNo edit or delete permission exists on this connection
  • Touch invoices, payments, or anything outside quotationsOutside the agreed scope entirely

The part that checks the work holds no power to change it. Confirming that a quotation arrived correctly is done by a separate read-only user in your own Zoho — one that cannot create, edit or delete anything, enforced by Zoho itself rather than by us.

We prove it rather than assert it: that user attempts a write, Zoho refuses, and we keep the refusal on record.

Default rules shown · v1.0.0 · once these are yours, changing any line requires your approval.

Product status

What works today. What we build with partners. What's planned.

Every capability claim on this page belongs to exactly one of these columns.

Working today
  • Deterministic engine with a permanent record of everything it does — nothing can be edited after the fact
  • Hash-bound human approvals — live-verified, on record
  • The part that checks the work is read-only in your systems, enforced by the provider itself and proven by a refused write
  • Quotation Health Check: your quote history analyzed into a findings report, with every number carrying its evidence
With design partners
  • Your quotation workflow, governed end to end against Zoho Books
  • Independent read-back verification of registered quotes
  • Shaping the rules, approval flows, and report findings around real trading data
Planned
  • WhatsApp-native approvals and quote delivery with receipts
  • Free UAE quotation generator
  • Ask-your-record: plain-language questions over your record, every answer cited

Not yet: invoices, payments, or anything beyond quotations. Not yet: enterprise scale. Quoting first, done properly — the rest follows the same discipline.

Design-partner program · UAE

Start with the free Quotation Health Check.

For trading and services businesses quoting from Zoho, Excel, and WhatsApp. Send us your quotation export — we return a findings report on your last year of quoting: money gone silent, pricing drift, expired pipeline, version chaos. Every figure carries its basis, and what your data can't support, the report says plainly.

What you get

  • The findings report on your real quoting history — free
  • Your quoting workflow as a founding-partner candidate for governed execution
  • Direct line to the founder; your rules shape the product

What we ask

  • A quotation export (any format your system produces)
  • 100+ historical quotes for the analysis to mean something
  • A short call to walk the findings together

Request your report  or email partners@pruvato.com · 3–5 partner slots · English first, Arabic coming

FAQ

The questions owners ask first.

Can this send a quote I wouldn't have approved?

No. Discount floors and rules are enforced in the execution path — a violating quote can't be sent, only escalated to you. Your approval is bound to the exact version you were shown; change anything and the approval no longer covers it.

What can it do inside my Zoho?

Exactly what's authorised and nothing more — see the full breakdown of what it can and can't do in your account under Permissions.

What happens to the data in my quotation export?

The free report reads your file's structure and computes findings; our stored records keep technical fingerprints — versions, counts, hashes — never your amounts. Deletion after the agreed window is itself a recorded event.

Is this another AI agent?

The AI only proposes — plans, drafts, suggestions. A deterministic engine executes, humans approve the exceptions, and an independent check confirms outcomes against your systems. That division is the product.