Dating and matchmaking

Age verification for dating apps

Dating apps are under real pressure to keep minors out and to prove they take it seriously. Tessio confirms a user is over 18 from their EU Digital Identity Wallet, so you can meet those duties without turning your app into an ID collector.

The problem

Regulators expect dating platforms to keep under-18s off adult-oriented services. The DSA asks platforms accessible to minors to take proportionate protection measures, and the UK Online Safety Act sets age-assurance duties. But collecting IDs to prove age creates its own privacy problem, and users hate handing over documents.

Tessio threads that needle. The user proves they are over 18 from their wallet, you get a signed yes or no, and you store no personal data. You get the assurance regulators want without the ID data users resent giving.

Before and after

The usual way

  • Self-declared birthdays that offer no real assurance.
  • Document upload that users distrust and abandon.
  • You store IDs and dates of birth, adding privacy risk to a sensitive product.
  • No clean audit trail to show a regulator.

With Tessio

  • A wallet based over-18 proof that users can give without sharing documents.
  • A signed, auditable result you can show demonstrates a real age check.
  • No personal data stored, which suits a product built on trust.
  • One approach aligned to the EU wallet and its coming mandate.

How it works

01

Call the API at onboarding

POST an age check when a user signs up or before they access adult features. You get a hosted verification link.

02

The user confirms 18+

They prove they are over 18 from their EU Digital Identity Wallet. No ID upload.

03

You get a signed result

A signed yes or no lands on your webhook. You gate access and keep evidence, and store no personal data.

Start a check

One POST creates a check and returns a link for the user's wallet. The signed result lands on your webhook. Full detail is in the developer docs.

curl -X POST https://api.tessio.eu/v1/age-checks \
  -H "Authorization: Bearer tk_live_your_key" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: signup-4821" \
  -d '{ "minAge": 18, "reference": "signup-4821" }'

Frequently asked

Does this meet DSA and Online Safety Act duties?

The DSA asks platforms accessible to minors to take proportionate measures, and the Commission guidance points to age verification for higher risk contexts. The UK Online Safety Act sets highly effective age-assurance duties enforced by Ofcom. Tessio gives you a real, auditable over-18 proof, which is the kind of measure both regimes are looking for. Read our summaries and confirm your own duties.

Why is a wallet check better for a dating app?

Dating is a trust product, so asking users to upload an ID works against you. A wallet confirmation proves age without sharing documents, and because we store nothing, there's no sensitive dataset to breach.

What about users without an EU wallet?

Today, most people do not have one yet. EU wallet rollout is early and we do not provide a document or selfie fallback, so Tessio is not a drop in replacement for your current age checks. The realistic path is to run Tessio alongside what you already use and move more traffic to the wallet as adoption grows. We would rather tell you that now than after you have integrated.

Related reading

Age assurance for dating apps

Put it in front of your users

Access is invite only while we onboard design partners. Tell us your volume and the markets you cover, and we'll set you up with a sandbox key and a quote.