TrustCheck.ai
Inspiration
Background verification in India is a $500M+ industry plagued by inefficiency. Traditional verification takes 7-14 days per candidate, involves endless email follow-ups, and relies heavily on manual document review. We witnessed HR teams drowning in spreadsheets, making costly hiring decisions based on incomplete checks, and occasionally missing forged documents that slipped through human review.
The question that sparked TrustCheck:
What if an AI agent could verify a candidate's entire employment and education history autonomously—in hours, not weeks?
With Gemini 3's multimodal reasoning and real-time capabilities, we saw an opportunity to build what was previously impossible: a fully autonomous verification system that reads documents like humans, makes phone calls to verify claims, and reasons about discrepancies—all without human intervention.
What it does
TrustCheck.ai is an AI-powered background verification platform that automates the entire verification lifecycle:
🔍 Document Intelligence
Upload any employment document (payslips, offer letters, certificates), and our Gemini-powered agent extracts:
- Employee details (name, designation, salary)
- Employment timeline verification
- Document authenticity signals
🕵️ Forensic Analysis
Every document undergoes metadata forensics:
$$\text{Trust Score} = \frac{\sum_{i=1}^{n} w_i \cdot s_i}{\sum_{i=1}^{n} w_i}$$
Where $w_i$ represents weight factors (creation date consistency, software fingerprint, editing history) and $s_i$ represents individual signal scores.
📧 Automated Outreach
TrustCheck generates personalized verification emails to universities and previous employers, with secure Google Sheets links for HR to fill verified data.
📞 Voice Verification Agent
For critical verifications, our Twilio-integrated voice agent makes autonomous calls to HR departments, conducting natural conversations:
Agent: "Hi, I'm calling to verify employment for John Doe
who listed your company as a previous employer..."
HR: "Yes, he worked here from 2019 to 2022."
Agent: "Could you confirm his designation and last drawn salary?"
⚖️ Risk Assessment Dashboard
All verification results flow into a unified dashboard showing:
- Green Zone: Fully verified candidates
- Red Zone: Discrepancies requiring review
- Risk scores with explainable AI reasoning
How we built it
Architecture Overview
┌─────────────────────────────────────────────────────────────┐
│ TRUSTCHECK.AI ARCHITECTURE │
├─────────────────────────────────────────────────────────────┤
│ FRONTEND (React + Vite + TailwindCSS) │
│ ├── Uploader Dashboard │
│ ├── Supervisor Dashboard │
│ ├── Client Reports & Email Inbox │
│ └── PDF Viewer & Check Status Pages │
├─────────────────────────────────────────────────────────────┤
│ BACKEND (Node.js + Express) │
│ ├── Document Upload & Processing │
│ ├── Check Orchestration Engine │
│ ├── Email Service (Gmail API) │
│ └── Call Service (Twilio + Gemini) │
├─────────────────────────────────────────────────────────────┤
│ AI LAYER (Gemini 3 Flash) │
│ ├── Document Extraction Agent │
│ ├── Forensics Analysis Agent │
│ ├── Voice Conversation Agent │
│ └── Response Classification Agent │
├─────────────────────────────────────────────────────────────┤
│ DATA LAYER (Pinecone Vector DB) │
│ └── Semantic search, embeddings, metadata storage │
└─────────────────────────────────────────────────────────────┘
Tech Stack
| Layer | Technology |
|---|---|
| Frontend | React 18, Vite, TailwindCSS, react-pdf |
| Backend | Node.js, Express, Multer |
| AI/ML | Gemini 3 Flash Preview, text-embedding-004 |
| Database | Pinecone Vector Database |
| Communication | Gmail API, Twilio Voice SDK |
| Deployment | IBM Cloud VM, Nginx, PM2 |
Key Implementation Details
Multi-Agent Orchestration: Each verification type (Education, Employment, Crime) triggers a specialized agent pipeline:
// Simplified agent flow
async function executeVerification(check) {
const extractedData = await geminiExtract(documents);
const forensicsReport = await geminiForensics(metadata);
const outreachResult = await sendVerificationEmail(check);
// If critical, initiate voice verification
if (check.priority === 'HIGH') {
await initiateVoiceCall(check.hrContact);
}
return computeRiskScore(extractedData, forensicsReport, responses);
}
Challenges we ran into
1. Cross-Platform Path Resolution
When deploying from Windows to Linux VM, absolute file paths stored in Pinecone broke document retrieval. We solved this with dynamic path reconstruction:
// Reconstruct path based on current environment
const uploadsDir = path.join(__dirname, '..', '..', 'uploads',
metadata.client_id, metadata.case_id, metadata.check_id);
2. Real-Time Voice Agent Latency
Initial voice calls had 2-3 second response delays. We optimized by:
- Streaming Gemini responses
- Pre-warming the model context
- Using Twilio's bidirectional streaming
3. Document Variety Handling
Indian employment documents vary wildly—from handwritten letters to encrypted PDFs. We built a robust preprocessing pipeline with fallback extraction strategies.
4. Gmail OAuth Token Management
Production OAuth tokens for automated email sending required careful refresh handling and secure credential storage.
5. Pinecone Dimension Mismatches
Switching embedding models mid-development caused dimension conflicts (768 vs 1024). We implemented version-aware embedding logic.
Accomplishments that we're proud of
🏆 End-to-End Automation
TrustCheck handles the entire verification lifecycle autonomously—from document upload to final risk assessment—something that typically requires a team of 5+ verification specialists.
🎯 >95% Extraction Accuracy
Gemini 3's multimodal capabilities achieve remarkable accuracy on complex Indian documents with varied formats, fonts, and layouts.
🤖 Natural Voice Conversations
Our voice agent conducts verification calls indistinguishable from human operators, adapting to unexpected responses and probing for discrepancies.
⚡ 10x Faster Verification
What traditionally takes 7-14 days now completes in hours:
$$\text{Time Saved} = \frac{T_{traditional} - T_{TrustCheck}}{T_{traditional}} \times 100\% \approx 90\%$$
📊 Explainable Risk Scores
Every risk assessment includes detailed reasoning—not just a score, but why we flagged something, building trust with HR teams.
What we learned
Technical Learnings
Gemini 3's Multimodal Power: The model's ability to reason across text, images, and document structure is a game-changer for unstructured data processing.
Vector Databases at Scale: Pinecone's metadata filtering enables complex queries (find all documents for a check) without traditional SQL overhead.
Production Voice AI: Building real-time voice agents requires careful attention to latency budgets, conversation state management, and graceful error handling.
Product Learnings
Domain Expertise Matters: Understanding verification workflows deeply was as important as the AI implementation.
Trust Through Transparency: HR teams adopt AI verification only when they can see the reasoning, not just results.
Edge Cases Dominate: 80% of development time went into handling the 20% of unusual documents and scenarios.
What's next for TrustCheck.ai
Roadmap
| Phase | Feature | Timeline |
|---|---|---|
| v1.1 | WhatsApp Integration for HR responses | Q1 2026 |
| v1.2 | Multi-language Document Support (Hindi, Tamil, Telugu) | Q2 2026 |
| v1.3 | Criminal Background Checks via Court API Integration | Q2 2026 |
| v2.0 | Self-serve Platform for SMBs | Q3 2026 |
Vision
We envision TrustCheck becoming the trust layer for India's hiring ecosystem—where every job offer is backed by verified, fraud-proof candidate data. As the gig economy grows and job mobility increases, automated, instant verification becomes not just convenient, but essential.
"In a world of digital identities and AI-generated content, trust must be verified, not assumed. TrustCheck.ai is building that verification infrastructure."
Built with ❤️ for the Gemini 3 Hackathon
Built With
- express.js
- gemini3
- gmail
- node.js
- pineconedb
- postgresql
- react
- sheet
- twilio
Log in or sign up for Devpost to join the conversation.