Document Intelligence and Language Automation

Most businesses run on documents that software cannot read: contracts, specifications, submittals, invoices, purchase orders, inspection reports, correspondence. People extract the important parts by hand, transcribe them into a system, and the organisation absorbs the cost of that as normal.

Document intelligence is the work of turning those documents into structured, verifiable data — and doing it in a way that a person can check.

What It Does

  • Extraction — pull the specific fields that matter from documents that vary in format.
  • Classification and routing — identify what a document is and start the right process.
  • Comparison — check a submittal against a specification, or an invoice against a purchase order, and surface the differences.
  • Obligation and requirement extraction — what a contract actually commits you to.
  • Summarisation with citations — every summary traceable to the page and region it came from.
  • Validation and confidence — flag low-confidence extractions for review rather than passing them through silently.

The Design Rule: Never Silently Wrong

An extraction system that is 95% accurate and tells you which 5% it is unsure about is genuinely useful. One that is 98% accurate and presents everything with equal confidence is dangerous, because the errors are invisible until they cause a problem downstream.

So confidence scoring, validation rules and a human review queue are core to the design rather than optional extras. Documents that are clean and consistent flow through; the awkward ones surface for a person.

Where This Fits

Document intelligence is usually a component rather than a product — it feeds workflow automation, powers retrieval and search, and underpins estimating work such as our project estimation agent.

Tell us which documents are consuming your team’s time and we will assess what can be extracted reliably — and what genuinely needs a person.

Related services

When a Simpler Approach Is the Better Choice

Document intelligence earns its place when the documents vary: different senders, different layouts, the same field in a different position every time, information stated in prose rather than sitting in a labeled box. That variation is what defeats a fixed template, and it is the specific problem this work solves. If your documents do not vary, you probably do not need it. A single form, from a single sender, in a stable layout, can be handled by a positional template or a mapped export, and that is less work to build and easier to reason about when it breaks.

The same logic applies upstream. If the sender can provide an EDI feed, a structured invoice format, or an API, take the structured feed. Reading the printed version of data that already exists in structured form somewhere upstream is work you are choosing to do, and it will always be less reliable than the feed.

Two other cases where this is the wrong fit. First, where the read is not extraction but judgment: deciding whether a proposed substitution is acceptable, or whether a clause is commercially tolerable, is a decision, and the useful automation there is pulling the clause out and putting it in front of the right person, not producing an answer. Second, where nobody will work the review queue. Confidence scoring only helps if flagged items go somewhere and someone handles them. If the honest answer is that no one has capacity for exceptions, the thresholds get loosened until the queue looks empty, and you are back to a system that is silently wrong.

How the Pipeline Is Put Together

The system is built in layers, and keeping those layers separate is what makes it maintainable when documents change.

Separation matters most at the moment something moves. A sender changes layout and the change is absorbed in preparation and classification. A field definition is revised and only that definition and its entry in the answer key move with it. A model is swapped and the validation rules and audit record are untouched, which is exactly what gives you a basis for judging whether the swap actually helped.

  • Intake. Watch the place documents already arrive. Keep the original unchanged and work from a copy, so that anything downstream can be recomputed without asking the sender again.
  • Page preparation. Page splitting, deskew, and OCR where the file is an image, producing a text layer that retains coordinates so any value can be pointed back at a region on a page.
  • Classification. Decide what a document is before deciding what to pull from it, because the field set depends on the type. Types the system does not recognize go to a person rather than being forced into the nearest match.
  • Extraction. Per-type field definitions, with output constrained to a schema, and every value returned with its source location.
  • Validation. Rules that do not depend on the model: totals that must add up, dates that must fall in a sensible order, part numbers that must exist in your catalog, quantities that must match the purchase order.
  • Routing. Values that clear their thresholds and pass validation go to the target system. Everything else goes to the review queue, opened at the page and region in question rather than as a bare list of fields.
  • Audit record. Input document, version of the field definitions in force, model output, validation results, and what a reviewer changed.

What the Work Depends On From You

The answer key is the item most often skipped and the one that most determines whether any of this works. Without values someone has confirmed, there is nothing to measure against, accuracy becomes an impression rather than a measurement, and tuning degenerates into arguments about individual documents.

  • A sample of real documents that includes the difficult ones: the poor scans, the ones with handwritten changes, the ones everybody complains about. A clean sample produces a system that works on clean documents only.
  • Written field definitions. What delivery date means when a document carries a requested date, a promised date, and a revised date.
  • A verified answer key: the correct values for the sample documents, confirmed by someone who can be held to them.
  • One named person who can settle disagreements about what a field means.
  • The target system and how it accepts data: API, staging table, or import format, and who owns the credentials.
  • A review policy per field: which fields may pass unreviewed, which always get a person, and what a reviewer is permitted to change.
  • Storage and retention rules for both the documents and the extracted values, including anything with contractual or regulatory constraints attached.

What Commonly Goes Wrong

Most of these are caught by watching the flag rate per field and per source rather than an overall accuracy figure. A sender changing layout does not announce itself; it shows up as one field from one source suddenly failing validation more often. Whenever a definition, rule, or model changes, the answer key is rerun so the effect is visible as a change in measured results rather than a change in how confident the output looks.

  • Fields that are not single values. Line items, ranges, and see attached schedule. These have to be modeled as lists with expected cardinality, or routed to a person, rather than squeezed into one box.
  • Amendments and revisions. Extraction happens per document, but correctness is per obligation, and the current value often lives in a later change order or addendum. Without versioning at the document set level, the system confidently reports superseded values.
  • Tables that split across pages, where the header is on one page and the rows continue on the next, and totals that only reconcile once the pieces are rejoined.
  • Definitional disagreement found late. Two departments define the same field differently, nobody noticed until extraction forced the question, and the answer key has to be rebuilt.
  • Thresholds tuned to shrink the queue. Lowering the bar until few items are flagged removes the visible work without removing the errors. The honest levers are better definitions, better validation rules, or accepting more review.

Frequently Asked Questions

What is document intelligence here, concretely, and what is it not?

It is a pipeline configured against your specific documents and your field definitions, built and tuned as engineering work rather than switched on as a product. It is not a document management system or a file repository: it does not become the system of record for your documents and it does not replace where you store them today. It also does not make the business decision. It can start a process, but approving an invoice, accepting a substitution, or agreeing that a contract commits you to something stays with whoever owns that decision.

What does it run on, and what has to already exist on our side?

Three things: a place documents reliably land that can be read programmatically, a target that can accept structured data, and a model layer. Landing points are usually a monitored mailbox, an SFTP drop, a SharePoint or blob container, or a scanner output folder; what matters is that arrival is detectable and that files are not renamed by hand on the way in. The target side is where the real constraint usually appears: a documented API on the system of record is the best case, a staging table you own is workable, and a manual import format is a fallback that caps how far the automation can reach. The model layer can be a hosted API or a model running inside your own tenant, and that choice is settled before anything is connected because it determines where documents travel.

How does a rollout actually proceed, in order?

Collect a sample of real documents including the awkward ones, write the field definitions, then build the answer key. A baseline pass measures extraction against that key field by field, which is what tells you which fields are ready and which are not. Validation rules and confidence thresholds are set from that baseline, and the pipeline then runs alongside your current process, writing to a staging location instead of the live system so the two can be compared on the same documents. Fields that hold up are cut over to writing into the target one at a time; the rest stay in review until their definitions or rules improve.

How does this integrate with the systems we already run?

By writing into the system that already owns the data, rather than becoming a new place people have to look. Where the ERP, accounting package, project management tool, or maintenance system exposes a documented API, that is the path, because it applies the same validation your users get when they key the value themselves. Where there is no API, a staging table or a supported import file is next best, and screen automation is a last resort that should be treated as fragile and monitored accordingly. In every case the written value carries a reference back to the source document, page, and region, so anyone looking at the record in the target system can get back to where it came from.

Who can see the documents, and what stays under our control?

Access is scoped to the document sources you name and the target you nominate, using credentials you issue and can revoke. Where processing runs is a decision made before anything is connected: inside your own tenant, or against a hosted model API. Whether a model provider may retain or train on submitted content is one of the terms settled contractually before anything is connected, and it is a common reason to require the model layer to run inside your own environment. The original documents stay in your systems, and the extracted values, confidence scores, and review history are written somewhere you can query directly.

What do we have to decide that cannot be delegated?

One person on your side has to be able to say what a field means and sign off the correct values for the sample. The rest of the inputs are in the list above of what the work depends on from you. A single owner matters because the same field is frequently defined differently by two departments, and building an extraction system forces that disagreement into the open; without someone who can settle it, the answer key keeps moving and every accuracy conversation turns into a definitions conversation instead.

What accuracy should we expect, and how would we know?

There is no honest number before a baseline pass on your own documents. Accuracy is measured per field against your answer key rather than per document, because a document-level score hides the one field that is wrong most of the time while the easy fields carry the average. Published benchmark figures come from public document sets and do not transfer to your invoices or submittals. What you can decide before any of that is the review policy: which fields you are willing to accept unreviewed, and which always go to a person regardless of what the confidence says.

Does this work on scans, handwriting, and drawings?

Born-digital PDFs with a real text layer are the easiest case, because the characters are already correct and the work is in finding the right ones. Scans depend on the scan: consistent resolution and orientation is workable, while pages that were faxed, folded, or photographed at an angle often are not, and nothing downstream recovers characters that were never captured. Handwritten entries are better treated as always-review than tuned toward a threshold. Drawings and stamped markups are a different problem again: a title block is structured enough to read reliably, a callout floating next to geometry usually is not, and that boundary is worth establishing on your own sheets before a workflow is designed around it.