Gaurav.
Back to projects

Project · 2025

Customer Document Portal

Cut manual certificate-sending by ~90%

Role
Full-stack developer — auth, Shopify verification, and document delivery.
Context
Customers kept emailing the admin for certificates that already existed; every request was answered by hand.
Timeline
2025
90%
less manual certificate-sending
100%
self-service document access

constraints & discovery

Customers must only ever see documents for products they actually ordered. Verification had to reconcile Shopify order history with admin-created accounts.

problems → solutions

problem 01 / 02

Certificate requests were a manual, per-customer email chore.

→ solution

A gated portal that maps a logged-in customer to their own certificates for instant download.

problem 02 / 02

Access had to be proven, not assumed.

→ solution

Customers are verified against live Shopify orders; the admin can also provision accounts directly.

architecture decisions

  • 01Next.js app with JWT auth over a PostgreSQL entitlement model.
  • 02Shopify GraphQL lookups resolve which products — and therefore which documents — a customer may see.
  • 03Document access is scoped per account so no cross-customer leakage is possible.

learnings

Most 'support load' is really an access problem — give people a scoped door and the tickets disappear.