Logo

The Swiss e-ID in your product.

Login, anonymous checks and age verification – swiyu, e-ID, standard OIDC

Provica verifies your users' swiyu wallet and returns the result in whatever shape fits your application: as an OIDC login, as an anonymous yes/no check, or as a finished age proof for your shop. Purpose-bound, data-minimal, on your behalf.

Request a Provica demo View the waitlist

One platform underneath all three integration forms

The same purpose binding, the same data minimization, the same log – whether login, check or age gate.

Purpose binding per client

Every client has an attribute policy and a visible purpose text. Only the intersection of scope and policy is ever requested.

Data minimization

DCQL requests exactly and only what the purpose requires – never more.

Consent log

An append-only log of every release – with a purpose snapshot, but no attribute values.

Pairwise subjects

A separate, non-correlatable subject per tenant – portals cannot link users across each other.

Account recovery

A newly issued e-ID is never silently linked to an existing account. Login pauses until the one-time recovery code is provided.

Swiss hosting

Operated in Switzerland, multi-tenant, with an admin console and audit log – with your own verifier DID on request.

Provica in action

One QR code, four steps – and your portal knows the verified attributes.

Provica

The login page of an integrated portal: "Log in with e-ID", QR code for the swiyu wallet, visible purpose text.

Provica

The flow: portal integrates via OIDC, the user scans the QR code, the wallet presents selectively, Provica delivers verified claims.

Build it yourself, or use Provica

The swiyu verifier is open source – it's operating it that hurts.

Operate a verifier

Yourself: deploy and operate the swiyu verifier, manage signing keys as SEC1, response encryption is mandatory – plus checkout logic and proof management if you need age verification in a shop. With Provica: done.

Track swiyu changes

Yourself: keep VCT and issuer DIDs current while the documentation lags behind. With Provica: we keep it current for you.

Purpose binding and consent

Yourself: build purpose binding, consent and data minimization from scratch. With Provica: built in, from day one.

Tenants and audit

Yourself: solve tenants, key rotation and audit logs on your own. With Provica: multi-tenant, with an admin console and audit log.

How the OIDC login works

One QR code. Four steps. Done.

1

Portal integrates via OIDC

A standard OIDC client (Authorization Code + PKCE). No proprietary SDK, no wallet logic.

2

User scans the QR code

Provica generates the verification request and shows a QR code or deep link for the swiyu wallet.

3

Wallet presents selectively

The wallet presents only the purpose-bound attributes – as an SD-JWT VC via OID4VP.

4

Verified claims returned

Provica verifies, minimizes and delivers the attributes as an OIDC ID token and via the userinfo endpoint.

Three integration forms, one platform

You get the result in whatever shape fits your application – from an account login to an age proof in the cart.

Most common

OIDC login

Integration form · Available in the beta

Best for

Portals that maintain an account.

At a glance

  • A standard OIDC client (Authorization Code + PKCE)
  • No proprietary SDK, no wallet logic in your portal
  • A separate, non-correlatable subject per tenant
  • Back-channel logout, without polling
  • Recovery code when a new e-ID is issued

Check API

Integration form · Available in the beta

Best for

Applications that need no identity, just an answer.

At a glance

  • Two REST calls – no OIDC redirect, no account
  • Rules: age_over_16, age_over_18, age_over_65 and nationality
  • Signed result token, redeemable exactly once
  • Bound to aud, nonce and exp
  • Two checks on the same person stay unlinkable

Age gate

Integration form · In preparation

Best for

Shops that need age verification without holding credentials.

At a glance

  • Age requirement per product and per category
  • Derived from the real cart, at every checkout path
  • Only consumed after a successful payment
  • Your shop holds an API key, never a client_secret
  • No date of birth in the shop – you get a yes or a no

Open standards, integrated into what you already use

WordPress protects content (available in the beta), WooCommerce blocks orders (in preparation).

swiyu
OID4VP
OpenID Connect
SD-JWT VC
WordPress
WooCommerce

On the official Swiss e-ID ecosystem

Weeks of work saved

A custom swiyu integration costs weeks of implementation – plus ongoing operation. With Provica you're live in an afternoon.

For portals, shops and content

Government portal, online shop or content platform: login, anonymous checks and age verification all come from a single integration.

Closed beta

Provica is currently in closed beta. Talk to us if you'd like to get your portal or shop ready for the e-ID early.

Ready to bring the Swiss e-ID to your portal or shop?

Provica is in closed beta. We'll discuss your use case and get in touch as soon as a spot opens up.