How to Search Your Invoices by Content (Not Just File Name)
You know the invoice exists. You processed it two months ago. It was from that electrical contractor, somewhere around $3,400, and it had a line item for switchboard upgrades.
So you open your document folder and type “switchboard” into the search bar. Nothing. You try the contractor's name. Three results, none of them the right one. The file is called scan_20260314_0047.pdf, because that is what the scanner named it, and no one renamed it afterwards.
Traditional file search mostly matches filename text. That works if your naming is perfect, but it breaks down fast in real-world folders full of camera IDs, scanner defaults, vendor exports, and old downloads. This is especially true when you remember the topic, not the filename, or when documents came from scans, email exports, or shared workspaces.
Semantic document search solves this by finding documents based on what they contain and mean, not what they were named. For finance teams buried in PDFs, it turns an unstructured document pile into something you can actually query.
In this guide
- Why file-name search was always a workaround
- What OCR gets right, and what it misses
- How semantic document search works
- Keyword search vs semantic search: side by side
- Extraction quality determines search quality
- Practical queries once invoices are structured
- How Zerentry makes this work
- Semantic document search FAQ
Why file-name search was always a workaround
The MYOB AccountRight community has requested the ability to search invoice descriptions by keyword for exactly this reason. Users want to find all invoices mentioning “mud guards” without remembering the invoice number or date. They typed something descriptive into the invoice at the time. The system cannot find it because it only searches structured header fields.
File-name search assumes someone organised the document before storing it. In practice, invoices arrive as email attachments named by the sender's system, scans named by the scanner, and exports named by the accounting platform. The person receiving them rarely renames 200 documents a month.
The result is a folder where the contents of each file bear no relationship to its name. Searching that folder by filename is searching metadata that was never designed to be searched.
What OCR gets right, and what it misses
OCR (optical character recognition) was the first step toward making scanned documents searchable. It converts images of text into actual text characters. Modern AI OCR achieves 95 to 98% accuracy on standard invoice formats, extracting vendor names, invoice numbers, dates, line items, amounts, tax details, and payment terms automatically.
But accuracy at the character level is not the same as understanding.
OCR can read “Invoice #12345,” but it cannot tell you whether that invoice is overdue, paid, or even relevant to your workflow. It captures characters, not meaning. OCR treats every character equally. It can read “2024-01-15” but does not know whether that is an invoice date, a delivery date, or a due date.
The deeper problem: real documents contain relationships. Totals tied to line items, names linked to addresses, tax fields connected to subtotals. OCR does not see relationships. It sees text.
This distinction matters for search. If your system only has raw OCR text, a query for “invoices over $5,000” requires the system to know which number on the page is the total. OCR alone cannot answer that.
How semantic document search works
Semantic search interprets the meaning and intent behind a query rather than matching literal keywords. When someone searches “documents showing proof of income,” semantic search returns pay stubs, W-2s, and bank statements, even though none contain that exact phrase.
Two mechanisms make this possible.
Mechanism 1
Embeddings
Embeddings convert text into dense numerical vectors positioned in a high-dimensional space. Words and phrases with similar meanings end up near each other. “Purchase order” and “PO” land close together, even though they share no characters. This means a search does not need an exact string match to find what you are looking for.
Mechanism 2
Natural language processing
NLP breaks your query into structured components. A query like “invoices from Acme Corp last quarter” gets decomposed into: document type (invoice), entity (Acme Corp), and time range (last quarter). The system does not just look for those words. It understands you want financial documents from a specific vendor within a date window.
Most production systems use both keyword and semantic search together, a pattern called hybrid search. Keyword matching handles exact identifiers like invoice numbers. Semantic search handles everything else.
Keyword search vs semantic search: side by side
The difference is concrete. Keyword search requires exact term matches, which means synonyms or rephrased queries may be missed. Semantic search interprets meaning and relationships, surfacing relevant results even when the wording differs.
| Query | Keyword search | Semantic document search |
|---|---|---|
| “vehicle maintenance schedule” | Returns only documents containing those exact words | Returns documents discussing “car service intervals” because the concepts are equivalent |
| “PO from Acme” | Misses documents labelled “purchase order” | Matches both “PO” and “purchase order” via embeddings |
| “electricity bills from last quarter” | Requires files to contain the phrase “electricity bills” | Matches utility invoices from the relevant date range |
| Synonym handling | Treats “car” and “automobile” as unrelated | Recognises them as equivalent |
| Natural language queries | Poor results | Decomposes query into structured intent |
As document collections grow in size and complexity, traditional keyword-based search increasingly fails to surface relevant results, particularly when users phrase queries in natural language or use terminology that differs from the source text. This is where semantic document search becomes necessary rather than optional.
Extraction quality determines search quality
Semantic search can only find what has been properly indexed. And indexing scanned invoices is harder than indexing clean text files.
Search quality depends on the quality of the source data being indexed. PDFs, scanned files, and spreadsheets require accurate extraction and normalisation as prerequisites for strong retrieval performance. Many teams treat ingestion and parsing as foundational steps rather than afterthoughts.
This is the part that most “search” features get wrong. They bolt a search bar onto a folder of poorly extracted documents. The search technology might be sophisticated, but the data underneath is not structured enough to produce useful results. A semantic search query for “invoices over $5,000 from January” requires the system to have correctly extracted the total, identified it as a total (not a line item or tax amount), and parsed the date into a queryable field.
Practical queries once invoices are structured
When extraction is accurate and fields are properly structured, the types of queries you can run change fundamentally.
- Find by description. Search for “electricity bills from last quarter” across thousands of documents and get results based on content, not file names.
- Find by vendor and context. Search “invoices from Acme Corp” and retrieve every document from that vendor, regardless of how each file was named or which email thread it arrived in.
- Cross-document validation. GenAI-powered invoice processing uses RAG to find related invoices, POs, and contracts, and to perform cross-document validation. This means you can check an invoice against the original purchase order or contract terms without manually pulling up each document.
- Duplicate and similarity detection. Vector databases give documents semantic understanding, finding similar invoices and duplicates instantly, clustering related documents, and matching invoices to contracts or POs. Two invoices with different numbers but suspiciously similar amounts, dates, and line items surface automatically.
These queries are only possible when the system has structured data to search against, not raw OCR text.
How Zerentry makes this work
Zerentry approaches this as an extraction-first problem. Rather than traditional OCR, Zerentry uses specialised Large Language Models that understand context, not just characters. The LLM reads an invoice the way a person would: identifying the vendor, the date, each line item, the tax, the total, and the relationships between them.
The numbers back this up. Zerentry reports 99.2% field accuracy and processes documents 10x faster than manual entry. That accuracy matters for search because every misread field is a document you cannot find later.
Zerentry's semantic search lets users find documents by meaning. Because every field is extracted and structured at upload time, the search index contains rich, accurate data from the start. You are not searching raw text. You are searching structured invoice records.
Two features compound the accuracy over time:
- Self-learning extraction. Every time your team corrects an extracted field, Zerentry memorises the correction. The next invoice from that vendor benefits from the fix.
- Accounting sync. Extracted data connects to Xero and QuickBooks, so retrieved invoice data is already sync-ready. Search results are not just documents to look at. They are records you can act on.
For practices managing documents across multiple clients, the combination of AI document processing and semantic search means the filing system stops being a bottleneck. The document finds itself.
Semantic document search FAQ
What is the difference between keyword search and semantic document search?
Keyword search matches exact terms in file names or text. Semantic document search interprets meaning, so a query like "car service intervals" returns documents about "vehicle maintenance schedules" even though no words overlap.
Does semantic search replace OCR?
No. OCR converts images to text. Semantic search operates on the extracted text and structured data. The two work together, but OCR alone produces raw text without the field-level structure that makes semantic search accurate.
How accurate does extraction need to be for semantic search to work?
Every misidentified field is a gap in your search index. Zerentry's 99.2% field accuracy means the structured data behind each document is reliable enough for precise queries across large collections.
Can I search invoices by line item content?
Yes, if your extraction tool captures line items (not just header fields like vendor and total). Zerentry extracts line items, so you can search for specific products, services, or descriptions within invoices.
Search your invoices by content from day one
Zerentry extracts every field from every invoice in 5 to 15 seconds, structures the data for semantic search, and syncs to Xero or QuickBooks automatically. Free for 30 invoices/month — no credit card required.
Start free →