Developer-first integration

12+ flows. One API. Zero PII stored.

Jurisdiction-aware routing, fraud detection, and appeal workflows built in. Embed the widget, call the API, and let vouchID handle global compliance automatically.

Drop-in widgetVerified trust signalsTokenized backend flow

SDK quickstart

5 min setup
import VouchIDWidget from "@vouchid/widget-sdk";
const widget = new VouchIDWidget({
elementId: "vouchid",
platformKey: process.env.NEXT_PUBLIC_PLATFORM_KEY,
mode: "age",
onSuccess: ({ platformSessionToken }) =>
fetch("/api/vouchid/verify", {
method: "POST",
body: JSON.stringify({ platformSessionToken }),
}),
});
widget.mount();
Why builders choose vouchID

Privacy-preserving infrastructure that feels native to your stack.

Every integration path is composable. Pick the component you need, automate the rest, and keep your threat surface tight.

Embed in minutes

Use our prebuilt iframe or headless hooks to start verifying users without rethinking your UI stack.

Keep data off your servers

Tokens, not documents. We hand back scoped IDs and verification states so you stay outside sensitive-data scope.

Works with any stack

framework-agnostic SDK, typed REST endpoints, and webhooks you can wire into existing queues in minutes.

Choose your integration path

Hosted widget or fully headless—mix and match to fit your roadmap.

Start with the low-code widget to launch quickly, then graduate to our SDK and APIs for deeper control. Both routes share the same signed tokens and security guarantees.

Request verification

Trigger the widget or SDK flow when users hit a protected surface. We host the consent and provider chooser.

Receive scoped trust

On success the widget emits a signed platform session token you validate via our `/verifications/validate-platform-token` endpoint.

Act on the outcome

Store the scoped vouch, enforce access rules, subscribe to revocation webhooks, or ask us to re-verify on a schedule.

Widget + webhook

Drop the hosted widget, listen for success in `window.postMessage`, and exchange the session token on your backend.

<iframe
src="https://widget.vouchid.co?platformKey=pub_platform_your_key&mode=age"
allow="camera; microphone"
class="vouchid-widget"
></iframe>

SDK (React/Node)

Instantiate the `VouchIDWidget` class, mount into any div, and receive callbacks for success, failure, or close events.

const widget = new VouchIDWidget({
elementId: "vouchid-container",
platformKey,
mode: "age",
onSuccess: ({ platformSessionToken }) =>
exchangeToken(platformSessionToken),
});
widget.mount();
Your trust toolbox

Everything you need to go live, without the heavy lift.

Typed SDK & API

TypeScript definitions, OpenAPI spec, and Postman collection included in every workspace.

Jurisdiction routing

12+ verification methods automatically selected by jurisdiction, with fallback chains and appeal workflows built in.

Observability hooks

Webhook retries, signed events, and structured logs so you can monitor trust flows in production.

Ready to ship private trust controls?

Start verifying users in days, not quarters. Our team will help you map the flow, integrate, and launch.