Document intake · for market data & information teams
Forward it once.
It files itself.
Every account gets its own inbox address. Forward any invoice, contract or statement, attachments and all, and it arrives as structured, reconciled data: line items, amounts, matched to the right contract. No uploads, no manual entry, and nothing changes until you publish it.
One way in
Every document enters through the same door
A vendor invoice and an internal headcount list look nothing alike, and they take the same route in. One address, one set of checks, one place to look when you need to know what arrived and what it did.
Before anything is read
Nothing reaches the model without instructions
Handing every incoming file to a model and asking it what to do is quick to build, and a confident guesser is not what should be running licence administration. So each document passes the same checks first, and those checks are plain rules.
Who sent it
The address it arrived from is checked against the senders your account knows, so a document is attributed before anything is read out of it.
What it should contain
An invoice, a contract and a personnel list each have a shape. Firmfact knows which one it is looking at and what has to be present before the contents count as read.
Which records it may touch
Extraction is scoped to the vendor and the contracts it resolves to. A document cannot reach across your account and change records it has nothing to do with.
What a person confirms
The change is prepared and shown with the reasoning behind it, next to the source document. A person publishes it.
What the AI does
The checks a rule cannot do
Vendor documents do not agree on a layout, and they change it without telling anyone. So Firmfact does not look for a value in a fixed spot on the page. It recognises the data points that matter, the vendor, the period, the reference, the amounts, wherever they happen to sit, and matches them to what your account already holds.
Below, a Bloomberg SID report arrives and is read into users, products and contract items, mapped to your organisation. The extraction stands beside the source file, so every value can be traced back to the page it came from.
Who decides
It prepares the change. You publish it.
Automation you cannot overrule is someone else's opinion arriving faster. Every step of intake is shown with its reasoning, next to the document it came from, and none of it lands in your records until a person says so.
A clean match takes a moment to confirm. A variance comes back as a precise call to action, the line and the amount that disagree with the contract, rather than a month-end research project. The work that is left is the decision.
Kept in Europe
Your documents, processed in the EU
Contracts and invoices are among the most sensitive things a firm holds, so Firmfact runs on EU-primary infrastructure hosted in Germany, with AI processing kept to EU-first sub-processors and an audit-ready history of every change.
Part of the platform
What the documents feed
Market data management
The system of record every read document lands in, contracts and cost together.
Spend management
Invoices read and matched become allocations, budgets and the variance you can act on.
Data rights & usage
The rights buried in those agreements, held as structured data next to real usage.
Document intake, answered
How do documents get into Firmfact?
Every account gets its own inbox address. Forward an invoice, a contract or a statement to it, attachments and all, and it is read into structured data: line items, amounts, periods, matched to the right contract. There is nothing to upload and no template to fill in first.
What does the AI actually do with a document?
It does the reading a fixed rule cannot. Rather than looking for a value in a fixed position on the page, it recognises the data points that matter (vendor, period, reference, amounts) wherever they sit in the layout, and matches them to what your account already holds. The checks around it, who sent the document, what it should contain and which records it may touch, are rules, not model output.
Does Firmfact change our data automatically?
No. Intake prepares the change and shows its reasoning beside the source document. A person publishes it. Clean matches are quick to confirm; a variance arrives as a specific question rather than a research project.
What happens when an invoice does not match the contract?
The difference is surfaced as a variance against the contract it was matched to, with the line items and amounts that caused it. That is the point of reading the document in the first place: the record explains what changed, so the answer does not have to be reconstructed by hand each month.
Where are our documents processed and stored?
On EU-primary infrastructure hosted in Germany, with AI processing kept to EU-first sub-processors, under Dutch law. Details at https://firmfact.com/european-infrastructure.
Forward your first document
Start free, no credit card. Signup includes a Production account for real setup and a Demo account for safe exploration.