The product, in depth
Know why an opportunity fits.
TenderFit is a procurement qualification application for UK technology businesses. Developed by Cosilan Systems, it brings official Find a Tender data, structured company profiles, explainable matching and AI-assisted document review into one workspace. It helps suppliers investigate which opportunities deserve attention, which parts of a contract fit their business, and what still needs checking before they commit time to a bid.
The project connects a detailed data-engineering foundation with a practical interface. Users can browse opportunities, inspect contract facts, review individual lots and trace suggested requirements back to the text they came from.
01 / The qualification problem
The business problem
Finding a public-sector opportunity is only the start of the process. A small software company, managed service provider or cyber security consultancy still has to establish whether the work fits its capabilities, location and preferred contract size. It also needs to understand the deadline, read the procurement documents and identify requirements that may affect its ability to deliver.
That information can be spread across structured records, free-text descriptions and linked documents. Larger procurements add another complication: a supplier might be well suited to one lot while other parts of the contract fall outside its services.
We developed TenderFit around this qualification work. The aim is to give suppliers useful reasons to investigate an opportunity, alongside the evidence and gaps that should inform their judgement.
02 / The company profile
A company profile that makes matching useful
The process begins with the supplier's own profile. A business can describe its services, record capabilities and certifications, choose procurement categories, set delivery coverage and define a preferred contract-value range. It can also state which work it does not undertake.
Procurement categories use the official Common Procurement Vocabulary, or CPV. Users can search for categories by name or code, with broader categories connected to more specific services through the catalogue's hierarchy.
The profile distinguishes between information that has not been supplied and information the company has explicitly declared. That distinction matters when assessing requirements: an unanswered question should remain an unknown. Meaningful profile changes also create revisions, so comparisons can be associated with the company information used at the time.
03 / Explained matching
Opportunity discovery with an explanation
The opportunity list brings together contract titles, buyers, values, deadlines and company-fit summaries. Users can search by text, filter by CPV or status, and sort by fit or deadline.
The matching engine compares structured facts such as procurement categories, contract value, delivery geography and declared exclusions. Results show positives, blockers, warnings and unknowns, with the underlying evidence available on the detail page. A supplier can see the reason behind a result instead of having to interpret a percentage score.
Availability is assessed separately from company fit. A closed opportunity can still be relevant to the business, while an open opportunity can fall outside its scope. Keeping those questions separate gives users a more useful view of the procurement.
04 / Individual lots
Finding the relevant lot inside a larger contract
TenderFit assesses individual lots as well as the overall opportunity. This is particularly useful for smaller suppliers considering a procurement that combines several types of work.
A technology contract might contain security operations, penetration testing and hardware supply. A specialist firm could fit the first two lots while explicitly excluding the third. TenderFit can surface the relevant lots without losing that distinction in a single overall result.
Lot-specific values, classifications and delivery facts stay associated with their source lot. The system also preserves the difference between facts published for the whole tender and facts belonging to one part of it. An overall contract value is not divided between lots to fill a gap in the source data.
05 / Reading the evidence
AI-assisted reading with quoted evidence
Tender documents often contain requirements that are difficult to capture through structured fields alone. TenderFit adds an advisory AI reading of notice text, lot descriptions and available text extracted from linked documents.
The application supports text extraction from PDF, Word, HTML and plain-text files. The AI reading produces a summary and suggests explicitly stated requirements, such as certifications, financial thresholds, insurance or service obligations. Each displayed suggestion includes a quotation matched to the supplied source section.
Source coverage remains visible. If a file cannot be downloaded, needs a sign-in, has no readable text layer or falls outside the configured analysis limits, the interface records the gap. Users can distinguish reviewed material from documents that still need attention.
AI interpretation remains advisory. A matching quotation establishes where the words appeared; the user still needs to check their meaning, context and applicability.
06 / Profile comparison
Comparing requirements with the company profile
The profile-comparison feature builds on that reading. It compares the work described by the tender and the extracted requirements with the company's declared services and business facts.
The interface groups evidence into work that matches, work not covered by the profile, and work the company says it does not do. Requirement checks show where a condition looks met, where something may be missing, and where the available information is insufficient.
These conclusions include supporting tender passages and profile quotations where available. Missing profile information stays uncertain, and AI suggestions do not overwrite the deterministic company-fit assessment. This gives suppliers another way to investigate an opportunity while keeping the distinction between published facts and interpretation clear.
07 / Data engineering
Engineering for traceability
The interface sits on a data pipeline built around the official Find a Tender OCDS API. Raw responses, historical releases and accepted record snapshots are retained alongside the current tender view.
This foundation addresses details that can easily undermine a procurement tool. Monetary values are stored as exact decimal text. Missing facts remain missing. Delivery geography comes from procurement delivery information, and source representations remain available when records need to be investigated or reprocessed.
Ingestion includes pacing, retries, resumable checkpoints and quarantine handling for malformed or inconsistent records. The AI layer adds bounded requests, reusable source readings and prompt versions, allowing unchanged material to be reused while retaining a history of analysis attempts.
08 / Application architecture
A responsive application built for further development
TenderFit uses Next.js, React, TypeScript and Tailwind CSS for the application interface, with SQLite and Drizzle ORM for persistence and Zod for validation. Vitest and Playwright support automated checks across the data, matching and interface layers.
The current application brings profile management, opportunity discovery, lot-level qualification, document reading and advisory profile comparison into a responsive workflow.
For Cosilan Systems, TenderFit demonstrates how custom software can make specialist information easier to assess. The project combines external-data integration, domain-specific rules and practical AI features, with explanations close to the decisions they support.




