Lead & Tender CRM · built and run by Zucol

The tender you never saw is the one you lost.

Government work is won and lost on notices nobody read in time. This CRM sweeps 62 department, PSU and university portals across 22 states, carries what is worth bidding through EOI, bid and award — then chases the EMD back once it is over. Every change is signed, timestamped and impossible to erase.

The demo needs no account and shows sample data only.

1,608notices found so far
679contacts on file
916audit entries, none editable

Sweep running

npm run discover

    Sources

    0

    Notices

    0

    Elapsed

    0s

    Replay of the sweep recorded on 2026-07-3062 sources, 970 notices, 32.3 seconds. Source list abridged.

     

    portals swept

    Government, PSU and university sites in the registry, across 22 states.

     

    notices found

    Deduplicated across 9 recorded sweeps.

     

    to sweep them all

    62 sources, 970 notices, one run.

     

    permissions to grant

    11 modules × up to 5 actions, per role.

    Tender Discovery

    It reads the notice boards so nobody has to.

    Public buyers publish where it suits them: a university news page, a department PDF index, an aggregator portal. The sweep visits 62 of them on a schedule, plus 8 directory pages that suggest new sources for a human to approve.

    Registered sources by vertical

    62 scannable · 22 states

    • Universities & institutes40
    • Government departments19
    • Public sector undertakings6
    • Aggregator portals5

    Straight from the source registry in the codebase, so this figure moves the day a source is added. Directory pages — which list institutions rather than tenders — are excluded.

    What it pulls out of a notice

    Structured fields recovered without anyone opening the PDF — and, honestly, how often the notice simply does not carry them.

    • Reference number235 of 1,608
    • Submission deadline162 of 1,608
    • Estimated value76 of 1,608

    The rest are a headline and a link — which is the honest state of most public notice boards, and the reason a person still triages the list.

    Widest recorded sweep

    32.3s

    62 sources fetched, parsed and folded into 970 notices in a single run on 2026-07-30 — the whole registry, in about the time it takes to read this sentence.

    1. 01

      Fetch

      62 registered sources. Where only a homepage is known, the engine finds that organisation's tender page first rather than guessing at a busy front page.

    2. 02

      Read

      Listings, notice tables and linked PDFs. A tender page that renders its table in JavaScript is reported as needing a renderer, not silently counted as empty.

    3. 03

      Fold

      A content fingerprint per notice, so the same tender republished across sweeps counts once. 9 recorded runs have folded down to 1,608 distinct notices.

    4. 04

      Score & triage

      Each notice scored on notice and relevance keywords, then triaged new → reviewed → converted or ignored. Converting one creates the record and carries the reference across.

    The working surfaces

    Six screens the day actually happens on.

    Every status, stage and field below is the app's own. Click through them.

    New2

    State technical university — ERP

    Added 2 days agoAK

    District hospital — HMIS

    Added todayRS
    Contacted1

    Municipal corporation — smart classroom

    Call loggedPM
    Follow-up2

    Central institute — LMS renewal

    Due tomorrowAK

    PSU training arm — assessment

    Due in 3 daysSV
    Qualified1

    Open university — admissions portal

    Converting to tenderRS

    Statuses, stages and fields are the app’s own. The rows are illustrative — no live record is shown.

    Everything it does

    The complete list, grouped by the question it answers.

    11 permissioned modules plus the background machinery that has no screen of its own — reminders, escalation, and the queue that makes sure a notification survives a mail provider having a bad morning.

    Find the work

    Before anything can be won it has to be noticed.

    6 features

    • Tender Discovery

      Sweeps department, PSU and university sites for tender, EOI and empanelment notices. Follows a homepage to its tender page, dedupes on a content fingerprint, and scores each notice for relevance.

    • Scan health

      Every source reports OK, failed, or needs-a-renderer — so a portal that quietly stopped parsing shows up as a broken source rather than as an empty week.

    • Dev & Hardware workstream

      The bid-worthy slice of the same sweep, filtered to the software and hardware work actually worth quoting for.

    • Client Contacts

      A shared directory of the people behind the deals, searchable across name, company and designation.

    • Visiting-card capture

      Photograph a card and the fields come back structured — name, designation, company, email, phone. Vision model where a key is configured, on-device OCR where it is not.

    • Organisations

      The accounts records hang off, typed as government, PSU, university, private or international — with a merge for the duplicates that arrive with every import.

    Work the deal

    From first contact to a bid on the table.

    10 features

    • Lead Management board

      A Kanban over the pipeline: New, Contacted, Called, Follow-up, Qualified, Converted, Lost, Cancelled. Move a card, log a touchpoint, schedule the next one.

    • Records

      The master list behind the board — leads, clients and tenders in one table, with filters, sorting, pagination and CSV export.

    • Tender workspace

      One bid, in full: timeline events, document slots, corrigenda, pre-bid queries, team assignments and an approval chain — with a workflow tracker derived from all of it rather than kept as its own status field.

    • Tasks

      Assign work with a priority and a due date. Open, in progress, done or cancelled — and a separate alert the moment one slips.

    • My Day

      The landing page: what is due today, what has slipped, which follow-ups are owed — plus a streak that weekends never break and that forgives one missed weekday.

    • Share a lead, view only

      Give somebody sight of a deal without handing over the ability to change it. Read scope and write scope are separate rules, not the same one reused.

    • Voice updates

      Speak an update, read the transcript, correct it, then save. The review step is mandatory — nothing reaches a record on the strength of a transcription alone.

    • Built-in assistant

      Ask the pipeline a question in plain English — how many, closing when, whose. It answers from your data and shows the matching records.

    • Attachments

      Files against any record, encrypted on the way to disk and served back through a signed, expiring link.

    • Company Documents

      The paperwork every bid asks for, kept once and categorised government, private or international instead of re-hunted per tender.

    Close the loop

    The part everyone forgets: after the bid goes in.

    9 features

    • EMD refund workflow

      Deposits tracked through awaited, held, received, forfeited and adjusted — each state asking for its own evidence and its own document slots, never a form that fits none of them.

    • EMD validation

      A designation, not a job title: the person who may confirm a refund actually landed, separate from whoever runs the bid.

    • Deadline reminders

      Seven days out, three days, one day, and the morning of. Scheduled, not remembered.

    • Escalation

      When nobody acts, the alert stops going to the person already not reading it and climbs the reporting line instead — idempotently, and always landing on somebody.

    • Notification centre

      In-app and email, with a per-person switch for every kind. Security notices are deliberately not switchable.

    • Durable delivery

      Reminders queue, retry and dedupe rather than being fired once and hoped for. A mail provider down at 08:30 no longer eats the day's alerts.

    • Daily digest

      One morning email per person: what is due, what slipped, what changed on their work overnight.

    • Dashboard

      The pipeline by stage and by value, movement over time, and where each person's work sits — folded in the database rather than by shipping every row to the browser.

    • Adoption report

      Whether people actually open the page we made their landing page, measured against a stated 70% target instead of assumed.

    Keep it accountable

    Who may see it, who changed it, and where the secrets live.

    8 features

    • Roles & permissions

      Build your own roles on a module-by-action matrix — view, create, edit, delete, approve — rather than picking from three fixed tiers.

    • Access matrix

      The whole grid on one screen, so what a role can reach is something you read rather than something you reconstruct.

    • Row scoping

      A permission decides which surfaces open; ownership and reporting line decide which rows appear on them. Widening one never widens the other.

    • Immutable activity log

      Every mutation writes a row: who, when, which field, from what to what. There is no update endpoint and no delete endpoint — not as policy, as absence.

    • Enterprise Vault

      Credentials, keys, licences and confidential notes sealed under a master key, with folders, tags, favourites, version history, a trash, and import/export behind their own permission.

    • Vault sharing & expiry

      Share a secret with a person or a whole role at view-only, copy, edit or full access — with an expiry date, a revocation, and an alert when a share is pulled.

    • Encryption at rest

      AES-256-GCM over every uploaded attachment, voice recording and vault record, with retired keys kept loadable so a rotation never strands an old file.

    • Account hardening

      Signed httpOnly sessions, throttled sign-in, per-route rate limits, a content security policy, and deactivation rather than deletion so the audit trail keeps its authors.

    Lifecycle

    Three clocks, running at once.

    A record carries 8 possible lead statuses and 5 tender stages simultaneously, and nothing converts between them — they answer different questions. After the bid closes a third clock starts: 5 EMD states, each with its own evidence, drawn from 10 document types.

    Lead status

    How warm the account is

    There is a next action with a date on it. This is what My Day reads.

    Tender stage

    Where the bid is

    Submitted. The EMD is now sitting with the department, and the clock on getting it back has started.

    EMD refund

    Where the money is

    The bid is decided and the refund has been asked for. This is where deposits go quiet and get forgotten.

    Roles & permissions

    Not three tiers. Whatever shape your team is.

    Roles are built module by module and action by action, not chosen from a fixed list. These four are only what a new workspace starts with.

    • Administrator

      Everything, including who else gets what.

      • Creates and edits accounts and roles
      • The only starting role with the Vault open
      • Can approve at every stage that has one
      Starting permissions38 / 38
    • Manager

      The whole reporting tree, and the decisions on it.

      • Sees and acts on everyone who reports up to them
      • Read-only on user management
      • Vault stays closed until granted deliberately
      Starting permissions26 / 38
    • Team Lead

      Runs the work for their reports.

      • Creates and edits across the pipeline
      • No deletes anywhere
      • No user or role administration
      Starting permissions18 / 38
    • Member

      Their own records, and nothing else.

      • Row scoping is the whole story — they see their own
      • Full control of what they own
      • No admin surfaces at all
      Starting permissions20 / 38

    These four are only where you start. Roles are built cell by cell inside the app, across 11 modules and up to 5 actions each — and note what a Manager does not begin with: the Vault stays closed until somebody opens it deliberately, because inheriting the organisation’s production secrets from “you were promoted” is how credential stores leak.

    • Row scoping is separate

      A grant opens a surface. Ownership and the reporting line still decide which rows land on it.

    • Two lenses, two grants

      The lead board and the record list read the same table. A role can be given either without the other.

    • Deactivate, never delete

      A switched-off account stops signing in immediately and keeps its name on every row it wrote.

    Nudges

    It tells people things. On purpose, and only once.

    22 kinds of notification across in-app and email, every one switchable per person — except the security ones, which are not. Reminders queue, retry and deduplicate rather than firing once into the dark.

    • 5

      Deadlines and reminders

      Scheduled nudges before something is due, and chasers after it slips.

    • 3

      Approvals and escalations

      Where somebody is blocked waiting on a decision — including yours.

    • 8

      Activity on your work

      Changes other people make to records and tenders you're on.

    • 5

      Sharing and access

      When you're given, or lose, sight of something.

    • 1

      Summaries

      Periodic round-ups rather than individual events.

    T-7, T-3, T-1, and the morning of

    Submission deadlines are reminded on a schedule, not remembered by a person.

    Then it climbs

    Ignored long enough, the alert stops going to whoever is already not reading it and walks up the reporting line — once per rung, always landing on somebody.

    70% is the bar

    Whether the team opens My Day at all is measured against a stated target rather than assumed, on a 30-day window.

    Accountability

    Built for the audit you have not been asked for yet.

    Public-sector work gets examined. Every design decision below assumes somebody will one day ask who changed what, and when.

    • Nothing is edited out

      Every mutation writes an activity row — actor, timestamp, field, old value, new value. There is no update endpoint for the log and no delete endpoint. The sample export carried 916 of them across 16 days.

    • AES-256-GCM at rest

      Attachments, voice recordings and vault records are sealed before they touch disk. Retired keys stay loadable through a rotation, so yesterday's file is still readable tomorrow.

    • Two scopes, never one

      A permission decides which surfaces open. Ownership and the reporting line decide which rows appear on them. Being handed a module has never widened whose deals you can read.

    • Deactivate, don't delete

      People leave; their audit trail does not. An account is switched off and immediately stops signing in, while every row it ever wrote keeps its author.

    • No public signup

      Credentials are created from inside by somebody already trusted. There is no self-service door into a system that holds a bid pipeline.

    • Hardened by default

      Signed httpOnly sessions, throttled sign-in, per-route rate limits, a content security policy with per-request nonces, and HTTPS-only in front of all of it.

    Capture

    A photograph of a business card is a contact record.

    Point a camera at a card and the fields come back structured — name, designation, company, email, phone — ready to correct before saving. Where no vision key is configured it falls back to on-device OCR, so the feature degrades rather than disappears.

    679

    contacts on file

    As at 2026-07-27.

    100%

    came from a card

    Photographed, parsed, reviewed, saved.

    394

    distinct organisations

    Deduplicated behind the contacts.

    916

    audit entries

    Across 16 days. None editable.

    Questions

    The ones people actually ask.

    • Both, deliberately. The same table holds leads, clients and tenders, and a record carries a lead status and a tender stage at once because they answer different questions. Teams that only sell direct never touch the tender half; the bid desk lives in it.

    • Public notice pages on government department, PSU and university websites, plus the aggregator portals. The engine follows an organisation’s homepage to its tender page, reads the listing, and folds duplicates on a content fingerprint so a notice republished across three sweeps counts once. It also reports the sources it could not read, which is the part that keeps the coverage honest.

    • No, and it does not try to. Bids are still submitted on the buyer’s portal. This is the layer around that: knowing the notice exists, deciding whether to bid, collecting the paperwork, tracking who approved what, and getting the deposit back afterwards.

    • It is the most commonly dropped thread in tendering — real money sitting with a department after a bid nobody is thinking about any more. Deposits move through held, awaited, received, forfeited or adjusted, each state asking for its own evidence, and a refund is confirmed by a designated validator rather than by whoever ran the bid.

    • That is the default. Permissions decide which modules open; ownership and the reporting line decide which rows appear inside them. A lead can be shared view-only with a named colleague without handing over the ability to change it.

    • No. Card scanning, speech-to-text and the assistant are all dormant until a provider key is configured, and each falls back to something local or manual when it is not. Nothing leaves the server unless you have switched that on.

    • One Next.js process and one PostgreSQL database — self-hosted, currently on EC2 behind nginx with Let’s Encrypt. There is no multi-service deployment to orchestrate and no third-party CRM holding your pipeline.

    • From someone who already has one. There is no public signup — credentials are created inside the app by an existing user, which is the only sensible door into a system holding a live bid pipeline.