Inspiration

What it does

How we built it

Challenges we ran into

Accomplishments that we're proud of

What we learned

Inspiration

Fraud and identity theft cost businesses billions annually. We wanted to build a developer-first, AI-powered verification API that removes the complexity of KYC and business due-diligence — no expensive third-party integrations, no black-box systems. Just a clean REST API that any team can drop into their stack in minutes.

What it does

IDVerif is a SaaS verification platform with two core pipelines:

Identity Verification — Developers submit a user's name, ID number, country, date of birth, gender, and optionally an ID document image and a live face capture. Gemini Vision cross-references the submitted fields against what's visible on the document, runs biometric face matching, and returns a 0–100 confidence score with a per-field breakdown of passed, failed, and warning results.

Business Verification — Developers submit a business name, website, address, country, and social handles. The engine runs a Google Custom Search, crawls the business website, and feeds all discovered data into Gemini's reasoning model to evaluate consistency. The result is a scored verification report with discrepancies flagged.

Both pipelines are exposed as a REST API (POST /api/v1/verify/identity and POST /api/v1/verify/business), protected by scoped API keys with per-key permission controls and daily usage limits.

The platform also ships with:

  • A full Admin Dashboard for API key management, verification logs, analytics charts, a sandbox tester, and API documentation
  • A Superadmin Panel for platform-wide oversight, client management, and platform settings
  • Firebase-based authentication with Google OAuth and email/password sign-in
  • An onboarding flow for new clients
  • A tiered pricing model (Starter free / Pro $49/month / Enterprise custom)

How we built it

  • Frontend & Backend: Next.js 16 (App Router) with React 19, TypeScript, and Tailwind CSS v4
  • UI Components: shadcn/ui built on top of Base UI, with Recharts for analytics dashboards
  • Database: AWS DynamoDB via the AWS SDK v3, accessed from Vercel using OIDC-based role authentication (no long-lived credentials). A single-table design stores clients, API keys, verifications, contact messages, and platform settings using a pk prefix convention (e.g. client#<id>, verification#<id>)
  • AI Engine: Google Gemini (vision model for ID document analysis, reasoning model for business verification)
  • Web Search: Google Custom Search API for business web presence discovery
  • Authentication: Firebase Auth (Google OAuth + email/password)
  • Hosting: Vercel (with vercel.json config and Vercel Analytics)
  • UI Prototyping: v0 by Vercel

Challenges we faced

  • DynamoDB single-table design — Modelling diverse entity types (clients, verifications, API keys, settings) in one DynamoDB table required a careful pk-prefix convention and a generic helper layer that supports both partition-only and composite (pk + sk) tables
  • Vercel OIDC with DynamoDB — Avoiding static AWS credentials meant setting up OIDC role assumption via @vercel/functions/oidc, which required careful IAM configuration
  • Gemini structured outputs — Getting Gemini to consistently return valid JSON for per-field verification breakdowns required careful prompt engineering with strict schema instructions
  • Rate limiting and plan enforcement — Implementing per-key daily limits and per-client monthly quotas at the API layer without a relational database required scan-and-filter patterns on DynamoDB

What we learned

  • DynamoDB's single-table pattern is powerful but demands disciplined key design from the start
  • Gemini's vision capabilities are genuinely impressive for document parsing — but prompt specificity is everything
  • Building a multi-tenant SaaS on serverless infrastructure (Vercel + DynamoDB) is very achievable with the right auth strategy

What's next

  • Webhook delivery for async verification results
  • Liveness detection for face capture
  • Expanded document type coverage (passports, driver's licences, utility bills)
  • SOC 2 Type II audit preparation ## What's next for IDVerif

Built With

  • aws-dynamodb
  • aws-sdk-v3
  • firebase
  • google-custom-search-api
  • google-gemini-ai
  • next.js
  • react
  • recharts
  • shadcn/ui
  • tailwind-css
  • typescript
  • v0
  • vercel
Share this project:

Updates