One identity, every platform
KYC, Age, KYP, ProntoTag & OIDC
Swiss legal jurisdiction
Privacy-first by design
Identity verification shouldn't mean handing your data to a stranger.
Every time someone is asked to verify their identity online, they face an uncomfortable trade-off: prove who you are, but in doing so expose your passport, your date of birth, your face, and your address to a system you may never fully trust.
ProntoID was built to solve this. Incorporated in Sion, Switzerland, and operating under one of the world's strongest privacy frameworks — the Swiss Federal Act on Data Protection (nFADP) — ProntoID acts as a secure intermediary. We verify once, and we attest everywhere — without ever re-sharing the underlying document.
Think of us as a Swiss vault for your digital identity: your data stays locked inside, while cryptographically signed attestations travel outward to the platforms that need them.
"Verify once. Attest everywhere. Your documents never leave the vault."
One vault. Five powerful services.
Each service is purpose-built for a specific real-world use case — from regulatory compliance to personal safety.
Verify once. The attestation does the travelling.
Our two-layer attestation architecture separates the raw verification event from the claim that gets shared. Your government-issued document is scanned, liveness-checked, and validated inside ProntoID's secure pipeline. What leaves the system is a signed, privacy-preserving attestation — not your passport.
Upload your document
Passport, EU ID card, or driving licence — captured in a guided, encrypted flow at verify.prontoid.com.
Liveness check
AWS Amplify Face Liveness confirms you are physically present and match your document photograph.
Cryptographic attestation
ProntoID generates a bcrypt-hashed, signed attestation stored in our secure DynamoDB ledger with a one-year TTL.
Partner receives the claim
Platforms receive an OIDC ID token with specific verified claims — no raw document data is ever transmitted.
Attestation flow
User
Uploads document + completes liveness selfie
↓
ProntoID Pipeline
Textract · Rekognition · MRZ parse · liveness check
↓
Attestation Layer
Bcrypt hash · RS256 signed token · 1-year TTL
↓
Partner Platform
Receives OIDC ID token with age_verified claim
Raw documents never leave ProntoID's secure environment.
Age verification for BentBox
Content platforms face mounting regulatory pressure to verify the age of users before granting access to adult material. In France, ARCOM has the power to order ISP-level blocks on non-compliant platforms. In Italy, AGCOM enforces similar rules. Visa and Mastercard have their own age assurance requirements for platforms accepting card payments.
ProntoID integrates directly into the BentBox platform as an age-gate solution. When a user attempts to access age-restricted content, they are redirected to ProntoID's secure verification flow. After completing document verification and a liveness check, they are returned to BentBox with a signed session confirming their age — and nothing more.
BentBox never sees a passport scan. It receives an OIDC-compliant ID token containing the age_verified: true claim, signed with ProntoID's RS256 private key. Their platform can verify the token signature at any time, but the underlying document data remains locked in the Swiss vault.
✅
ARCOM compliant
Meets French regulatory requirements for age assurance on adult platforms.
🔐
Zero raw data transfer
BentBox receives signed claims only — never a document image.
⚡
One-time verification
Users verify once; the session persists securely via signed cookie.
🌍
Globally accepted
Works for users with passports, EU IDs, and driving licences worldwide.
Digital model releases that actually hold up.
Paper model release forms get lost, forged, or disputed. Email PDFs lack identity verification. ProntoTag solves this by tying a legally meaningful consent record to a verified identity.
A photographer creates a ProntoTag session and the model receives a secure link. After completing identity verification, they provide explicit digital consent for the shoot and its intended usage. The signed release is stored in ProntoID's cryptographic ledger — immutable, timestamped, and retrievable by both parties at any time.
For studios managing high volumes of talent, our developer API enables automated release generation, bulk retrieval, and webhook notifications when consent is completed.
Know Your Pal before you meet.
Meeting someone from a dating app, hiring a freelancer, or selling an item locally all carry a degree of risk. KYP addresses that by enabling mutual, consent-based identity verification before a meeting takes place.
Both parties initiate a KYP request. Each independently confirms their verified ProntoID identity to the other — no phone numbers, addresses, or document scans are exchanged directly between individuals. The system confirms: this person is who they claim to be.
KYP is designed for platforms that want to offer a built-in safety feature. Integrate via the developer API and surface the "Verify with ProntoID" flow directly inside your product.
Why Switzerland? Why does it matter?
Switzerland's revised Federal Act on Data Protection (nFADP), which came into force in September 2023, is among the most rigorous data protection frameworks in the world. Like GDPR in the EU, it enshrines data minimisation, purpose limitation, and the right to erasure. Unlike many jurisdictions, Switzerland's long-standing tradition of institutional privacy makes it a uniquely trusted legal home for sensitive personal data.
ProntoID's corporate entity — Brooks & Keitt — is registered at Place du Midi 30, 1950 Sion, Valais. All processing infrastructure runs on AWS in us-east-1, with architecture designed to minimise cross-border data flows and meet the adequacy standards required for Swiss–EU data transfers.
At a technical level, the following controls protect every user's data:
Bcrypt hashing
Identity fields are hashed before storage in our attestation ledger — never stored in plain text.
TTL enforcement
Attestation records expire and are purged automatically after one year.
No data sales
We do not monetise, broker, or share user data with third parties under any circumstances.
Claim minimisation
Partners receive only the specific claims they are authorised to request — nothing more.
Liveness detection
AWS Rekognition Face Liveness prevents spoofing attempts using photographs or video replays.
Full audit trail
Every verification event is logged with tamper-evident timestamps for compliance reporting.
Integrate identity verification in hours, not months.
ProntoID is built API-first. The developer portal at developer.prontoid.com offers self-service onboarding, service configuration, real-time usage statistics, billing management, and full API documentation — all in one place.
Our REST API follows a simple, consistent pattern: authenticate with your API key, send a verification request, and receive a signed attestation or OIDC token in return. Webhooks notify your platform the moment a user completes verification. For OIDC integration, ProntoID can be added as an identity provider in minutes using any standard OAuth 2.0 library.
Fully validated document types include:
- International passports (ICAO 9303; MRZ parsed with highest-priority confidence)
- EU national identity cards (front + back; MRZ parsed from reverse side)
- EU driving licences (front-only; OCR and AnalyzeID extraction)
- US driver's licences and state ID cards
Any government-issued photo ID with a Latin-character MRZ zone is also supported via our standard MRZ and OCR extraction pipeline — including documents issued in the UK, Canada, Australia, and New Zealand. Country-specific layout quirks may affect field confidence scores, but the core verification flow works without modification.
All verification sessions include an AWS Amplify Face Liveness check before any attestation is issued — ensuring a live human being is present and matches the submitted document.
Example — OIDC token verification
// Verify ProntoID RS256 ID token in your application
$token = $_COOKIE['prontoid_session'];
$jwksUrl = 'https://prontoid.com/.well-known/jwks.json';
$claims = verifyJwt($token, $jwksUrl);
if ($claims['age_verified'] === true) {
// User is verified — grant access
}
Ready to open your Swiss privacy vault?
Verify your identity once and use it everywhere — or integrate ProntoID into your platform today. Our developer portal gets you from API key to live integration in under an hour.
Brooks & Keitt · Place du Midi 30, 1950 Sion, Switzerland · nFADP & GDPR compliant