Contract scanner
LiveThree-tier extraction cascade so PDF, DOCX and scanned contracts all work — one accept list for every upload door, and a report page that says which step the analysis is on.
- ✓One accept list — PDF, DOCX, TXT, JPEG, PNG — shared by the desk upload, the phone upload and camera, Vio attachments and bulk ZIPs
- ✓Legacy .doc refused with a message that says what to do instead
- ✓Three-tier extractor cascade — fallbacks for poor PDFs
- ✓Tesseract OCR for scanned or photographed documents
What it is.
The entry point to every LexVio analysis. Drop a PDF, DOCX or TXT, a JPEG or PNG photograph, or paste text. LexVio runs a three-tier extraction cascade: LlamaParse for structured layouts, PyMuPDF for clean PDFs, and Tesseract OCR for scanned or photographed documents. The accept list is exactly those five types and it is one list — the desk upload, the phone's chunked upload and camera, the Vio attachment and every member of a bulk ZIP go through the same check. A legacy .doc file is refused with a message saying to save it as .docx or PDF, because there is no .doc parser in the stack and pretending otherwise would decode it as text.
Whatever you throw at it lands on the other side as clean structured clauses with section numbers preserved. While the analysis runs, the report page says where it is — parsing, jurisdiction, indexing, analysing, finalising — by name and never as a percentage: the steps are wildly unequal in length (indexing takes seconds, analysing takes minutes) and a number invented from their count would be a progress bar that lies. A failed analysis leaves the step it broke on in place, so the row says what went wrong.
Three steps.
End to end.
PDF, DOCX, TXT, JPEG or PNG, or raw text. Scans are fine. Legacy .doc is refused with a message, on every door.
LlamaParse first, then PyMuPDF, then OCR — whichever produces clean structured output for your document. A photograph goes straight to the OCR tier.
Section-numbered clauses indexed and ready for risk scoring, search, and Vio Q&A. The report page names the step the analysis is on until it is ready.
What you get.
- ✓One accept list — PDF, DOCX, TXT, JPEG, PNG — shared by the desk upload, the phone upload and camera, Vio attachments and bulk ZIPs
- ✓Legacy .doc refused with a message that says what to do instead
- ✓Three-tier extractor cascade — fallbacks for poor PDFs
- ✓Tesseract OCR for scanned or photographed documents
- ✓Section-number preservation
- ✓Handles photographed contracts from phones
- ✓Analysis progress by named step — parsing, jurisdiction, indexing, analysing, finalising — never a percentage
Quick answers.
200K input token limit per scan run (≈400-500 pages depending on density). Larger contracts can be split or bulk-uploaded as a portfolio.
Because the pipeline cannot measure one. It knows which step it is on, not how far through it is, and the steps differ in length by orders of magnitude. The report page shows the five steps and marks the current one; a percentage would be a number we made up.
More in Review & Risk Analysis.
Red, amber, or green for every clause, with an explanation and confidence score.
One organisation-wide number, 0-100, from the parts of your legal position the product can actually read — and "not assessed" for the parts it cannot.
Upload a ZIP of contracts and run the full analysis across all of them in one job.
Reads the governing-law clause before deciding which law a contract is analysed under — and treats "unknown" as an answer.