How ibonly/verifypass works
Verix is a multitenant liveness, face-recognition, and ID-verification service. A tenant creates a verification session; an end user captures documents and liveness evidence through the SDK or hosted flow; the API stores evidence and queues work; a worker evaluates the attempt and produces a decision that tenants can review in the dashboard or retrieve through the API. The README also documents onboarding, reports, settings, and signed webhook delivery. Some route-to-service and client-to-API details are unsampled, so those links are marked unverified.
Main entry points: pipeline.js Verification pipeline · App.jsx Tenant dashboard · VerificationWidget.jsx Verification widget · app.js Express API
Components 22
Client capture
- Capture SDK
frontend/sdk/core/src/client.js - Verification widget
frontend/sdk/react/src/VerificationWidget.jsx - Hosted flow
frontend/verify-page/src/App.jsx
Tenant API
- Express API
backend/src/app.js - Session lifecycle
backend/src/services/sessionService.js - Evidence uploads
backend/src/services/uploadService.js - MongoDB
backend/src/lib/db.js - Job dispatch
backend/src/services/jobService.js
Verification processing
- Worker runtime
backend/worker.js - Verification pipeline
backend/src/worker/pipeline.js - Decision engine
backend/shared/src/decisionEngine.js - Risk screening
backend/src/worker/screening.js - Biometric providers
backend/src/worker/providers
Tenant operations
- Tenant dashboard
frontend/dashboard/src/App.jsx - Manual review
backend/src/routes/review.js - Reports and settings
backend/src/routes/reports.js - Webhook configuration
backend/src/routes/webhooks.js
External delivery
- Webhook delivery
backend/src/worker/webhookDispatcher.js - Tenant webhook receiver
- Transactional email
backend/src/services/emailService.js
Other components
- Tenant integrator
- End user
Connections 23
- Tenant integrator → Session lifecycle: creates sessions
README.md - End user → Verification widget: completes capture
README.md - Verification widget → Capture SDK: uses client
README.md - Verification widget → Express API: uploads evidence
README.md - Hosted flow → Verification widget: hosts flow
README.md - Express API → Session lifecycle: mounts session routes
backend/src/app.js - Express API → Evidence uploads: mounts capture routes
backend/src/app.js - Session lifecycle → Job dispatch: enqueues work
backend/src/services/sessionService.js - Session lifecycle → MongoDB: reads and writes
- Evidence uploads → MongoDB: stores evidence metadata
- Job dispatch → Worker runtime: dispatches jobs
backend/src/services/jobService.js - Worker runtime → Verification pipeline: runs pipeline
backend/worker.js - Verification pipeline → Decision engine: decides outcome
backend/src/worker/pipeline.js - Verification pipeline → Risk screening: screens identity
backend/src/worker/pipeline.js - Verification pipeline → Biometric providers: uses providers
- Verification pipeline → MongoDB: loads and finalizes
backend/src/worker/pipeline.js - Tenant dashboard → Express API: calls tenant API
- Tenant dashboard → Manual review: submits decisions
frontend/dashboard/src/App.jsx - Tenant dashboard → Reports and settings: manages reports
README.md - Tenant dashboard → Webhook configuration: configures webhooks
frontend/dashboard/src/App.jsx - Webhook configuration → Webhook delivery: configures delivery
- Webhook delivery → Tenant webhook receiver: sends signed events
README.md - Webhook delivery → Transactional email: uses email service
backend/src/worker/webhookDispatcher.js