Financial Operations · Data model
The Evidence Graph: Connecting Transactions, Controls and Audit Support
Auditors do not ask for documents. They ask whether a control operated, and expect you to prove it with something traceable to a transaction. A folder of PDFs cannot answer that. A graph can.
The short answer
An evidence graph is a data model in which transactions, controls, evidence artefacts, assertions and people are nodes, and the relationships between them are explicit edges — so that questions like “prove this control operated on this transaction” become graph traversals rather than document searches. It replaces folder hierarchies, which can store evidence but cannot express what it supports. The shift is from storing evidence to modelling what evidence proves.
Summary for readers and answer engines
Reviewed 25 Aug 2026
- ▸Folders store documents. A graph stores what a document proves, for which transaction, under which control, asserted by whom.
- ▸Five node types cover financial evidence: transaction, control, evidence artefact, assertion and actor.
- ▸Four traversals answer most auditor requests: control coverage, transaction support, assertion basis, and preparer independence.
- ▸Gaps become computable. A control with no evidence edge for a period is a finding you can detect rather than discover.
- ▸Build it one control at a time. A graph covering three controls completely is worth more than a partial model of forty.
Source: Mark Alex, Real Biz Digital — The Evidence Graph: Connecting Transactions, Controls and Audit Support (https://realbizdigital.net/insights/evidence-graph/). Reproduce with attribution.
Key takeaways
- 01Model the edge, not just the node. An evidence artefact with no relationship to a control or transaction is a document, not audit support.
- 02Keep source references rather than only copies. A reference proves where evidence came from; a copy proves only what was seen.
- 03Version evidence when its source changes, and keep the prior version. Auditors ask about the period, not about today.
- 04Compute coverage per control per period. That single query eliminates most of the annual scramble.
- 05Record the actor on every assertion. Preparer and reviewer independence is a structural property of the graph.
- 06Start with the three controls your auditor asks about most. Completeness on those beats breadth on everything.
Quick answers
One-line answers to the questions this page is most often asked. Each is expanded further down, and each is written to be quoted on its own.
- What is an evidence graph?
- A data model where transactions, controls, evidence artefacts, assertions and people are nodes connected by explicit relationships, so audit questions become traversals rather than searches.
- Why not just use folders?
- A folder can hold a bank statement but cannot express that it supports the bank reconciliation control for March, prepared by one person and reviewed by another.
- What node types are needed?
- Five: transaction, control, evidence artefact, assertion and actor. Most financial audit questions traverse only these.
- What questions does it answer?
- Control coverage for a period, the support behind a specific transaction, the basis for an assertion, and whether preparer and reviewer were independent.
- How are gaps detected?
- Structurally. A control with no evidence edge for a required period, or an assertion with no supporting artefact, is a computable gap rather than a discovered one.
- Should evidence be copied or referenced?
- Both. Keep a copy for immutability and a source reference for provenance, because auditors ask where evidence came from as well as what it says.
- How should a graph be built?
- One control at a time, completely. Three fully modelled controls answer more questions than forty partially modelled ones.
Five nodes, six edges
The model is deliberately small. Financial audit questions are structurally simple; they are only hard because the relationships are usually implicit.
Key facts
- ▸The
SUPPORTSedge is the one folder structures cannot express, and it is the one every audit request depends on. - ▸
DERIVED_FROMmatters more than it looks: an extract taken from a report taken from a ledger has a provenance chain, and auditors increasingly ask for it. - ▸Separating
SUPPORTSfromEVIDENCESis worth the extra edge type. Evidence that a control ran is different from evidence that a transaction is valid.
| Edge | From → To | Meaning |
|---|---|---|
COVERS | Control → Transaction | This control applies to this transaction or population |
SUPPORTS | Evidence → Control | This artefact evidences that the control operated |
EVIDENCES | Evidence → Transaction | This artefact substantiates this specific transaction |
ASSERTS | Actor → Assertion | This person made this claim |
ABOUT | Assertion → Control or Transaction | What the claim concerns |
DERIVED_FROM | Evidence → Evidence | This artefact was produced from that one |
| Node | Represents | Key attributes |
|---|---|---|
| Transaction | A financial event: journal entry, payment, invoice, adjustment | Amount, date, account, entity, source system |
| Control | A defined control activity | Control id, frequency, owner, framework reference |
| Evidence artefact | A document, extract, screenshot, report or system record | Type, source system, captured-at, hash, source reference |
| Assertion | A claim made by a person: reconciled, approved, reviewed, attested | Assertion type, period, made-at |
| Actor | A person or system that acted | Identity, role, authority level |
Six edge types is enough. Estates that model twenty relationship types end up with a graph nobody queries, because nobody remembers which edge to traverse.
Four traversals that answer most audit requests
Key facts
- ▸Traversal four is the one that surprises finance teams. Segregation of duties becomes a graph property you can prove exhaustively rather than a control you test on a sample.
- ▸Traversal one is where the time saving is. Coverage that took two weeks of spreadsheet work becomes a query.
- ▸Traversal three is increasingly requested as auditors focus on the basis for judgements rather than just the existence of documents.
Control coverage for a period
Control → COVERS → Transactions in period, then check each has an inbound SUPPORTS or EVIDENCES edge. Returns covered and uncovered populations. This is the query that replaces the annual scramble.
Answers: ‘show me that the bank reconciliation control operated every month this year, with support.’
Support behind a transaction
Transaction ← EVIDENCES ← Evidence, plus Transaction ← ABOUT ← Assertions and their Actors. Returns everything substantiating one item.
Answers: ‘why is this £340,000 accrual this amount, and who said so?’
Basis for an assertion
Assertion → ABOUT → Control or Transaction, then out to supporting Evidence and its DERIVED_FROM chain.
Answers: ‘the controller asserted this reconciliation was clean — on what basis?’
Preparer and reviewer independence
For a Control in a period, collect Actors on preparer assertions and reviewer assertions and test for intersection.
Answers: ‘demonstrate that no reconciliation was reviewed by its preparer.’ A structural property, computed rather than sampled.
Four traversals, each a few lines. The engineering effort is entirely in populating the edges, which is why capture-at-completion matters so much.
Gap detection as a structural property
Once relationships are explicit, missing evidence is computable rather than discoverable. Six gap types cover almost everything auditors find.
- 01Run gap detection continuously, not before an audit. A gap found in the period it arose can be remedied; the same gap found in March cannot.
- 02Set thresholds from your own materiality. Requiring evidence for every transaction produces a graph full of noise and a team that ignores it.
- 03Treat orphan evidence as a process signal rather than a finding. It usually means someone captured something useful and had nowhere to attach it.
- 04Report gaps by control owner. A list of 340 gaps is ignored; eleven gaps each addressed to a named person get closed.
- 05Distinguish a missing artefact from a missing relationship. Frequently the document exists and only the edge is absent, which is a five-second fix.
- 06Track gap count and age. Rising age means gaps are being reported and not resolved, which is worse than not reporting them.
| Gap | Query shape | Severity |
|---|---|---|
| Control with no evidence in a required period | Control with no inbound SUPPORTS for period | High — control may not have operated |
| Transaction above threshold with no supporting evidence | Transaction where amount > threshold, no EVIDENCES | High |
| Assertion with no supporting evidence | Assertion with no reachable Evidence | Medium — a claim with no basis |
| Evidence with no relationship | Evidence with no outbound edges | Low — an orphan document, but a sign of process drift |
| Preparer equals reviewer | Actor intersection on one control period | High — segregation of duties failure |
| Evidence older than its source | Evidence captured-at < source modified-at | Medium — stale support, the supersession problem again |
This is the mechanism behind continuous audit readiness: gaps detected in-cycle, attributed to owners, and closed before anyone external asks.
Why folder hierarchies fail
The deeper problem with folders is that a document can only live in one place, while a piece of evidence frequently supports several controls and several transactions. A bank statement supports the bank reconciliation control, substantiates twelve specific payments, and forms the basis of a completeness assertion. In a folder it lives in one of those contexts and the others are lost.
Path-based conventions attempt to compensate — /2026/Q1/BankRec/MainAccount/ — and they encode exactly one relationship. Every additional relationship becomes a duplicate copy or an undocumented convention.
- ›One place per document
- ›Relationships implied by path names
- ›Coverage requires manual enumeration
- ›Provenance recorded in filenames, if at all
- ›Segregation of duties tested by sampling
- ›Reorganisation breaks every reference
- ›Many relationships per document
- ›Relationships explicit and queryable
- ›Coverage is one traversal
- ›Provenance is a first-class edge
- ›Segregation proven exhaustively
- ›Structure changes without breaking references
Nothing here requires a graph database. The model can be expressed in relational tables perfectly well; what matters is that the relationships are explicit and queryable rather than implied by where a file sits.
Provenance and versioning
- 01Keep the source reference alongside the copy. The copy is immutable proof of what was seen; the reference proves where it came from and lets a later reader re-derive it.
- 02Record the derivation chain. An extract from a report from a ledger has three levels, and an auditor asking “where did this number come from” is asking for exactly that chain. The W3C provenance model is a useful reference for the shape.
- 03Hash every artefact at capture. Cheap, and it converts “this is the document” into a verifiable claim.
- 04Version rather than replace. When the source changes, capture a new version and keep the prior one. Audit questions are about a period, not about the current state.
- 05Record captured-at and source-modified-at separately. The comparison between them is the supersession check, and it is one of the highest-value automated tests available.
- 06Never delete evidence. Supersede it. A deleted artefact is indistinguishable from one that never existed, which is exactly the ambiguity evidence exists to remove.
These six practices cost very little at capture time and are effectively impossible to retrofit, which is the argument for building the graph before the audit rather than during it.
An incremental build path
Pick the three controls your auditor asks about most
Usually bank reconciliation, revenue recognition and manual journal review. Completeness on three beats partial coverage of forty.
Model those controls and their transaction populations
Create the Control nodes and the COVERS edges. This alone reveals population definitions nobody had written down.
Attach evidence at capture, going forward
Do not backfill history first. Start capturing correctly from the next period; backfill only what the current audit needs.
Add assertions with actors
Preparer and reviewer on every control instance. Traversal four becomes available immediately, and it is usually the first result that impresses internal audit.
Turn on gap detection
Continuous, attributed to control owners, with age tracked. This is where the graph starts changing behaviour rather than describing it.
Extend one control at a time
Each addition is cheap once the model exists. Resist the temptation to model everything before anything works.
The order matters: modelling forward from the next period is achievable, and backfilling three years of history is a project that never finishes. Capture correctly now; backfill only on demand.
Next step
Map evidence to controls, then query the gaps
Barzel FinOps Atlas builds the evidence graph, traces evidence, verifies chains and detects missing evidence as callable tools — with a free sandbox tier for testing against one real control.
What a graph does not solve
Two limits.
- 01It does not make weak evidence strong. A graph can prove that a screenshot supports a control; whether a screenshot is sufficient and appropriate evidence remains an auditor’s judgement under standards such as PCAOB AS 1105.
- 02It does not substitute for control design. A perfectly evidenced control that does not address the risk is still a control-design finding, and the graph will document it faithfully.
Frequently asked questions
What is an evidence graph?
A data model in which transactions, controls, evidence artefacts, assertions and actors are nodes connected by explicit typed relationships, so that audit questions such as proving a control operated on a specific transaction become graph traversals rather than document searches.
Why are folder hierarchies insufficient for audit evidence?
Because a document can only live in one folder while a piece of evidence typically supports several controls and transactions at once. A bank statement evidences the reconciliation control, substantiates twelve specific payments and underpins a completeness assertion — a folder captures one of those relationships and loses the rest.
What node types does an evidence graph need?
Five: transaction, control, evidence artefact, assertion and actor. Most financial audit questions traverse only these, and models with twenty node types end up unqueried because nobody remembers the structure.
What relationships matter most?
Six edges: covers between control and transaction, supports between evidence and control, evidences between evidence and transaction, asserts between actor and assertion, about between assertion and its subject, and derived-from between evidence artefacts.
Which audit questions does a graph answer?
Four traversals cover most requests: control coverage for a period, all support behind a specific transaction, the basis for an assertion including its derivation chain, and whether preparer and reviewer were independent for every control instance.
How does an evidence graph prove segregation of duties?
By testing actor intersection between preparer and reviewer assertions for each control period. It becomes a structural property provable exhaustively across every instance, rather than a control tested on a sample.
How are evidence gaps detected?
Structurally. A control with no supporting evidence in a required period, a material transaction with no evidencing artefact, an assertion with no reachable support, or a preparer-equals-reviewer intersection are all computable rather than discoverable.
Should evidence be copied or referenced?
Both. Keep an immutable copy with a hash to prove what was seen, and a source reference to prove where it came from and allow later re-derivation. Auditors ask both questions.
What is the derivation chain and why does it matter?
The recorded lineage where one artefact was produced from another — an extract from a report from a ledger. When an auditor asks where a number came from, the derivation chain is precisely the answer, and it cannot be reconstructed later.
Should evidence ever be deleted?
No. Supersede it and retain the prior version, because a deleted artefact is indistinguishable from one that never existed, and audit questions concern the period rather than the current state.
Does an evidence graph require a graph database?
No. The model expresses perfectly well in relational tables. What matters is that relationships are explicit and queryable rather than implied by file paths or naming conventions.
How should an evidence graph be built?
One control at a time, starting with the three your auditor asks about most, capturing correctly from the next period forward and backfilling history only where the current audit requires it. Backfilling three years before anything works is a project that never finishes.
Glossary
- Evidence graph
- A model of transactions, controls, evidence, assertions and actors connected by explicit typed relationships.
- Control coverage
- The proportion of a control’s transaction population with adequate supporting evidence for a period.
- Assertion
- A recorded claim by a named person that something was reconciled, reviewed, approved or attested.
- Derivation chain
- The recorded lineage from one evidence artefact to those it was produced from.
- Orphan evidence
- An artefact with no relationship to any control, transaction or assertion.
- Computable gap
- A missing piece of audit support detectable by query rather than by review.
- Source reference
- A pointer to where an evidence artefact originated, distinct from a copy of it.
- Supersession
- Replacing evidence with a newer version while retaining the prior one.
- Actor intersection
- The test for whether the same person both prepared and reviewed a control instance.
- Captured-at
- The timestamp at which evidence was collected, compared against source modification to detect staleness.
Standards and entities referenced
Every named framework on this page resolves to a public definition. If you are checking our claims, start here rather than with us.
Sources and further reading
Primary specifications and standards this article relies on. Where a claim is our own operating judgement rather than something a standard states, the text says so.
- 01 · PCAOBPCAOB AS 1105 — Audit Evidence ↗The standard defining sufficiency, appropriateness, relevance and reliability of audit evidence.
- 02 · W3CW3C PROV-O — The Provenance Ontology ↗A standard vocabulary for entities, activities and agents — the model an evidence graph is a special case of.
- 03 · COSOCOSO Internal Control — Integrated Framework ↗The control framework auditors map financial process evidence against.
- 04 · Institute of Internal AuditorsInternational Standards for the Professional Practice of Internal Auditing ↗What internal audit is required to evidence, and the independence expectations around it.
- 05 · U.S. SECSarbanes-Oxley Act — Section 404 ↗Where segregation of duties becomes an externally audited control.
- 06 · AICPASOC 2 / Trust Services Criteria ↗The criteria an agent estate’s access, change and monitoring evidence is tested against.
- 07 · WikipediaMerkle tree ↗The structure behind append-only logs whose history cannot be silently rewritten.
- 08 · ISOISO/IEC 27001 — Information security management ↗The ISMS baseline that agent-layer controls have to fit inside rather than beside.
Last reviewed 2 September 2026 by Mark Alex. External links open in a new tab; we do not control their content.
Cite this article
Alex, M. (2026). The Evidence Graph: Connecting Transactions, Controls and Audit Support. Real Biz Digital. https://realbizdigital.net/insights/evidence-graph/
Try the mechanics on a live server
To watch an MCP server answer a structured request before you let one read your ledger — Barzel Scripture Intelligence is free and public at scripture-intelligence-server.mcpize.run: no signup, no key, 54 tools. Setup is in the reference.
Buy it on the marketplace
Barzel FinOps Atlas is this assurance layer, sold as a running product
Thirty tools covering close readiness and blocker detection, cash position, cash variance and cash-flow risk, transaction risk scoring, policy exception detection, control risk, finance approvals, and the evidence surface — evidence-to-control mapping, evidence graphs, evidence tracing, chain verification, missing-evidence detection, auditor request answering and audit packet generation. A free sandbox tier means the first readiness report costs nothing.
| Plan | Price | Included | Right for |
|---|---|---|---|
| Free Sandbox | Free | 500 calls/mo · close readiness, blockers, evidence checks | Testing readiness scoring against one real close |
| Starter | $29/mo | 1,000 calls/mo · evidence mapping, cash position, approvals | A single entity running one governed close cycle |
| Growth | $99/mo | 5,000 calls/mo · evidence graph, audit packets, control risk | A controller’s team with an external audit each year |
| Business | $249/mo | 15,000 calls/mo · the full 30-tool surface | Multi-entity close with SOX obligations and continuous audit readiness |
| Enterprise | $799/mo | 50,000 calls/mo · everything in Business, scaled | Group-wide finance operations across many entities |
Sold on the MCPize marketplace · prices as listed 2 Sep 2026 · the listing is authoritative
The five Barzel servers, and which problem each one is sold for
One estate rarely needs all five. This is the honest mapping, so you buy the layer your problem actually lives in.
| Server | Sold for | Entry price | Where it sits |
|---|---|---|---|
| Barzel Central Gateway | Knowing and governing the estate: inventory, registry, routing, risk scoring, approvals, evidence | Free, then $10–$149/mo | Control plane — decides what may be reached, and by whom |
| BarzelVault | Stopping a specific dangerous action before it executes, with proof afterwards | $199–$3,999/mo | Decision point — evaluates the individual call before execution |
| BarzelOps | Running real business workflows across HubSpot, Xero, Gmail, Drive and Slack under approval | Free, then $19–$199/mo | Execution layer — does the work the policy allowed |
| Barzel FinOps Atlas | Attributing AI spend to agents, tools and outcomes, then forecasting and capping it | Free, then $29–$799/mo | Economics layer — what the estate costs per outcome |
| Barzel Scripture Intelligence | A free, credential-free public MCP server to test clients and inspect real protocol traffic | Free, unmetered, no signup | Reference implementation — safe place to learn the protocol |
Written by
Mark Alex
Founder of Real Biz Digital and architect of the Barzel ecosystem — five MCP servers published and callable in public. Software developer, technology entrepreneur and mechatronics engineer, working across AI agent governance, MCP security, AI infrastructure, FinOps and intelligent operations.