The platform covers most of it. We build the rest.
Capture, Spend and Govern handle the paperwork most companies share; when your documents, your systems or your obligations fit none of them, we design, engineer and support the application that does — on the same Sonar engine underneath.
When the document doesn't fit a product, we build around the document.
This is engineering work, and we talk about it as engineering work: no fixed six-week promise, no proposal written before we have seen what actually arrives.
We start from your documents
Not a sample set. The scans, the phone photos, the DOCX somebody exported from a system that stopped being supported in 2016 — we read what actually arrives, and we agree on what a working answer looks like before anyone writes code.
You see the schema before it is built
The fields, the types, and the confidence thresholds are yours to argue with. Nothing goes near production until the output on your own documents is output you would act on.
We engineer it, and we stay on it
It ships as an API, an interface, or both, on the same Sonar engine that runs Capture, Spend and Govern. Your documents will change; we stay on it when they do.
Moving off a legacy parser is a data problem before it is a software one.
The disruption in a migration almost never comes from the new system. It comes from the fields in the old one that nobody can explain any more.
Map the fields, including the ones nobody documented
Most of the risk in a migration is in the fields that were never written down. Every field in the system you are leaving gets a destination or a decision, and the dead ones get retired on purpose rather than by accident.
Bring the history across
Historical documents run through Sonar the same way new ones do, so the archive answers questions in the same schema as everything that arrives tomorrow. The old system stops being the only place the past lives.
Run both, then cut over
The new pipeline runs alongside the one you have until its output agrees with what you expect it to say. The cutover date is yours.
We won't quote you a schedule before we have looked at the data. Anyone who does is guessing, and the guess is what breaks the cutover.
Structured output, into the systems you already run.
A custom build is only finished when its output is sitting in the system your team opens every morning — not in a file somebody has to fetch. Schema-validated JSON, signed webhooks, native connectors where they exist, and an engineered path where they don't.
What changes between industries is the schema, not the engine.
The documents, the fields worth pulling out, and what it costs to get one of them wrong. That last one is why the threshold is different in each of these.
IT sector
- What arrives
- MSAs, statements of work, renewal notices, and the vendor invoices that arrive in a dozen different layouts.
- What comes back
- Renewal dates, liability caps, licence counts, and the line items that drift from what the contract said — each one scored.
The cost of a guess: A renewal that slips through is a year of spend nobody re-approved; a licence miscount is a true-up bill at audit. A flagged field the team checks beats a confident wrong one that reaches the ledger.
Education
- What arrives
- Applications, transcripts, and the supplier agreements the institution signs — often scanned, often photographed.
- What comes back
- Course histories, credentials, and contract terms as clean records your student and finance systems can take without re-keying.
The cost of a guess: A transcript keyed wrong stalls an admission; a term missed in a supplier agreement is money the department never budgeted. The engine flags what it cannot read rather than guessing a grade or a date.
Workforce
- What arrives
- Resumes, state licences, and compliance files — the paperwork every placement generates, at the volume a staffing desk runs.
- What comes back
- Skills, credentials, and expiry dates as structured candidate records, ready for the ATS, each field carrying its own score.
The cost of a guess: An expiry read wrong puts an unlicensed contractor on an assignment. That is a compliance failure, not a typo — which is why a date it could not read comes back flagged, not filled in.
Healthcare staffing
- What arrives
- Clinical resumes, state licences, compliance packets. Often a photograph of a certificate taken on a phone.
- What comes back
- Specialties, credentials in the order they were earned, licence numbers, and the expiry dates that decide whether someone can work on Monday.
The cost of a guess: An expiry date read wrong puts an unlicensed clinician on a shift. That is not a data-quality problem, it is a regulatory one — which is why the engine flags a date it could not read rather than filling it in.
Legal & contracts
- What arrives
- SOWs, MSAs, NDAs, amendments, and the playbook your team already argues from.
- What comes back
- Clauses matched against that playbook, with whatever deviates marked and ranked — auto-renewals, liability caps, termination terms.
The cost of a guess: A missed auto-renewal is a year of spend nobody approved. A clause the engine skimmed and scored as clean is worse than a clause it admits it could not parse.
Procurement & finance
- What arrives
- Invoices, purchase orders, and the contract that says what the price was supposed to be.
- What comes back
- Line items matched across all three, with the ones that drift from what was agreed surfaced as they arrive.
The cost of a guess: A wrong figure that looks confident gets paid. It is caught at quarter close, if it is caught at all — so a flagged line beats a confident one every time.
Four ways in.
Two you can open right now, one is a demo away, and the last starts with a conversation about what lands in your inbox every morning.
Capture
Any document in, structured and scored records out. The foundation to reach for when you just need the paperwork read into data you can trust.
Spend
Invoices, purchase orders and contracts reconciled against each other, with the money leaking between them flagged as it arrives. The application for the numbers.
Govern
Contracts and agreements read against a playbook, with what deviates flagged. The application for the review that happens before a signature.
A custom build
None of them fits, or the fit is close but not close enough. Tell us what arrives and what you need out of it, and we will tell you honestly whether it is a fit.