Certifly.
A full-stack SaaS for digital certificate generation, verification, and management — credit-based monetization, bulk CSV processing, and tamper-proof PDF certificates.
Architecture & Key Decisions
- Credit-based monetization with atomic transactions — preventing race conditions on credit balances.
- Razorpay integration with signature verification and payment reconciliation.
- Bulk certificate pipeline: CSV upload → async processing → 100+ certificates per operation.
- Template engine with HTML/CSS editing and dynamic variable substitution — custom designs without code changes.
- Puppeteer PDF generation with browser pooling and high-DPI rendering (~2–3s per certificate).
- Multi-tenant with user data isolation at the DB and API layers; MongoDB aggregation pipelines + strategic indexing for dashboard stats.
The Hard Part
Tamper-proof verification that anyone can trust
A certificate is only worth something if a third party can verify it. The public verification system issues unique codes and validates a certificate as tamper-proof without requiring the verifier to authenticate — fraud prevention built into the product itself, backed by atomic credit accounting so balances can't be gamed under concurrency.
Key Features
- Public certificate verification — unique codes, tamper-proof validation, and third-party verification without authentication.
- Credit purchase flow with Razorpay.
- Paginated certificate management for large datasets.
Trade-offs & What v2 Adds
Why synchronous bulk processing for the MVP?
Development speed over maximum throughput; a queue-based (Redis/Bull) design is the v2 path.
Why filesystem PDF storage initially?
Cost — with S3/Cloudinary planned for v2.
What v2 would add
A Redis job queue, cloud storage, automated email delivery, template caching, and webhooks for integrations.
Want the full walkthrough?
Happy to walk through the credit model, verification design, and the Puppeteer pooling in detail.