Quickstart
This is the fastest path to a working verification: drop a script tag in a page, and you're done.
What you'll have at the end
- A page with the Veridia widget rendered
- A real document + selfie capture flow
- A
verificationIdyou can poll, or a webhook event you receive - A
verdictofapproved,review, orrejectedwith a confidence score
About 5 minutes for a basic integration. Add 10 more minutes if you want to wire up webhooks.
Three steps
- Installation — get an API key, embed the widget on a page
- First verification — run a test verification end-to-end
- Handling results — get the verdict via events, polling, or webhooks
What you'll need
- A Veridia account (sign up here)
- A
qv_pub_*publishable API key (created automatically when you sign up — find it in the dashboard under API keys) - A page where you can drop a couple of script tags (any framework, or plain HTML)
- Two minutes of camera access on a real device for testing
Test mode vs production
Every Veridia tenant gets two environments:
| Environment | Key prefix | Purpose |
|---|---|---|
| Test | qv_pub_test_* | Free verifications, real ML pipeline, results don't count toward billing |
| Live | qv_pub_* | Real verifications, real billing |
Use the test key while you're integrating. Switch to the live key when you're ready to ship.
Already integrated something similar?
If you've integrated Stripe Elements, Sumsub, or Onfido before, the mental model is the same:
| Concept | Stripe / Sumsub equivalent | Veridia |
|---|---|---|
| Publishable key | pk_test_* | qv_pub_test_* |
| Frontend widget | Stripe Elements / Sumsub WebSDK | <veridia-widget> |
| Server confirmation | Webhook + signature | Webhook + HMAC-SHA256 |
| Poll status | GET /v1/payment_intents/:id | GET /v1/verify/:id |
The main difference: Veridia is a single HTML tag, no SDK install or framework wrapper required.
Ready? Step 1 →