Live on ageverifyeu.com

Verify age.
Not identity.

Age-gate your EU platform in minutes. One API call, a hosted flow, and a single boolean back to your webhook — no documents stored, ever.

// 1. Create a session
POST /v1/verification-sessions { country_code: "DE", age_threshold: 18 }
// 2. Redirect user → they verify via EUDI Wallet or eID
// 3. Webhook fires{ age_over_threshold: true }
Create session One API call from your backend
User verifies Hosted UI — EUDI Wallet or eID
Receive result Signed webhook: boolean only
11 EU/EEA country policies
0 Documents stored
<10 min Sandbox to first webhook
100% EU-hosted infrastructure

Why standard checks fail
European developers

01

Excessive data collection

Traditional KYC stores passports, addresses, and dates of birth — creating GDPR liability far beyond what age verification actually requires.

02

Poor conversion rates

Asking users to upload documents mid-checkout causes 40–60% drop-off. A wallet tap or eID redirect takes seconds.

03

Per-country complexity

Germany uses German eID. France uses France Identité. Denmark uses MitID. Building and maintaining this in-house takes months per country.

Why AgeVerify EU

Boolean result vs. full identity exposure

Traditional KYC collects far more than age verification requires — creating GDPR liability, user friction, and data breach surface area.

Capability AgeVerify EU Traditional KYC / Document Upload
Data stored per verification Boolean result + metadata only Name, DOB, address, document scan
GDPR data minimization (Art. 5(1)(c)) By design — only what is necessary Requires extensive data retention policies
EUDI Wallet / national eID support Native Relying Party (OpenID4VP) Rarely — usually OCR document upload
EU Age Verification Blueprint alignment Full Blueprint Relying Party implementation Not applicable — pre-Blueprint architecture
Integration effort Single REST call + hosted UI Per-country SDK integration required
User experience One-tap wallet presentation or eID Photo upload, liveness check, manual review
Infrastructure data location 100% EU-hosted (Frankfurt / Ireland) Varies — often US-based cloud providers
Developer Console

Integrate in an afternoon

Sandbox credentials, domain allowlisting, usage logs, HMAC-signed webhooks. Everything you need to go live is in the dashboard.

{
  "client_reference_id": "user_123",
  "country_code": "DE",
  "language": "de",
  "age_threshold": 18,
  "purpose": "restricted_access",
  "callback_url": "https://yoursite.com/webhook"
}
{
  "session_id": "avs_2nLz7X5",
  "verification_url": "https://verify.ageverifyeu.com/session/avs_2nLz7X5",
  "status": "created",
  "expires_at": "2026-06-10T22:50:00Z"
}
{
  "event": "verification.completed",
  "session_id": "avs_2nLz7X5",
  "age_over_threshold": true,
  "age_threshold": 18,
  "country_code": "DE",
  "assurance_level": "high",
  "method": "national_eid",
  "policy_version": "DE-AGE-2026-001"
}
Privacy Facts
Serving Size: 1 Verification Request
Shared With Client App
Age Eligibility (over 18) Yes
Verification Status Verified
Assurance Level High
Policy Version Used Traceable
NOT Collected / Shared
Full Name None
Date of Birth None
Home Address None
Identity Documents Stored None
Live Sandbox

Try it before you integrate

Select a country and verification method to see real webhook output from the sandbox — no API key required.

Webhook output

// Select a country and click "Run Simulated Check"

Common questions

Everything you need to know before integrating.

What is AgeVerify EU?

AgeVerify EU is a B2B age verification API and hosted verification UI for European digital platforms. Developers call POST /v1/verification-sessions from their backend, redirect users to the hosted UI at verify.ageverifyeu.com, and receive a signed webhook containing only a boolean age_over_threshold result — never names, birth dates, or document images.

How does it preserve user privacy?

AgeVerify EU applies strict GDPR data minimization (Article 5(1)(c)). The platform does not store names, exact dates of birth, home addresses, or identity document scans. Verification results contain only: age_over_threshold, method, assurance_level, country_code, and policy_version.

Is it GDPR compliant?

Yes. The API runs in Frankfurt, Germany. AgeVerify EU acts as a data processor — your platform remains the controller. A full GDPR Article 28 Data Processing Agreement is accepted during organization onboarding. Infrastructure is 100% EU-hosted.

Does it support EUDI Wallet?

Yes. AgeVerify EU operates as a Relying Party (Verifier) under the European Commission's EU Age Verification Blueprint. Users present proof-of-age attributes from EUDI Wallet via OpenID4VP. No identity attributes are requested or stored beyond the boolean eligibility result.

Which verification methods and countries are supported?

Current methods include: EUDI Wallet (OpenID4VP, all countries); national eID networks — German eID (Personalausweis Online), France Identité, Cl@ve (Spain), MitID (Denmark), BankID (Norway); and document verification as a medium-assurance fallback.

Pre-built country policies: Germany, France, Spain, Italy, Greece, Netherlands, Ireland, Denmark, Sweden, Norway, and Finland. Additional countries added regularly.

What regulations require age verification in the EU?

The Digital Services Act (DSA) requires platforms to prevent minors from accessing harmful content. The EU Age Verification Blueprint defines the technical standard for wallet-based checks. National laws in Germany, France, and Spain require 18+ verification for alcohol, gambling, and adult content.

How do webhooks work?

When a verification session completes, AgeVerify EU delivers a POST request to your endpoint with a verification.completed event. Every webhook is signed using HMAC-SHA256 — verify the X-AgeVerify-Signature and X-AgeVerify-Timestamp headers before processing. Delivery is retried with exponential back-off on failure.

How do I test without real identity documents?

Create an app in sandbox mode and generate test keys (sk_test_...). The hosted verify UI shows sandbox methods — test_over_18, test_under_18, test_failed, and test_expired — that simulate each outcome without touching real identity providers. You can also POST directly to /v1/provider-callbacks/sandbox to skip the UI entirely.

How do I get started?

Create a free sandbox account at dashboard.ageverifyeu.com/signup. The onboarding wizard takes under 5 minutes: create your organization, add billing and compliance info, then create an app and generate API keys. Sandbox is free and unlimited. Use the integration guide to run your first verified webhook in under 10 minutes.

Start building today

Free sandbox. No credit card. First verified webhook in under 10 minutes.

Already have access? Sign in · Get product updates

AgeVerify EU is an API-first age verification platform for EU and EEA markets. It checks whether a user is over 16, 18, or 21 using EUDI Wallet or national eID, then returns only a yes/no result — never names, birth dates, or document images.