AltID Wallet
AltID is Denmark's official app for ID and proofs. It lets users create and present digital proof from their mobile device, including an identity card and age proof in the first version of the app.
The integration follows the standard eID Easy OIDC flow. This page covers only what is specific to AltID: prerequisites, the user-facing steps, the identity claims returned, and the current public app requirements.
Prerequisites
Before starting, ensure the following are in place:
- You have a working OIDC client set up on test.eideasy.com with a registered
redirect_uri. - AltID is enabled for your client in the eID Easy admin panel.
- You have configured your JWK public key for
private_key_jwtauthentication. If not yet done, send us yourclient_idand your JWKs JSON or public JWKs URL so we can configure it for you. - You have access to the AltID sandbox.
- The AltID app is installed and ready on your test device. See Setting up AltID below.
Testing in the playground
You can test this wallet through the eID Easy EUDI Wallet playground: http://eudiw-playground.eideasy.com/.
Running the flow
1. Start the authorization request
Follow Step 1 of the OIDC guide and include the pid scope to request verified identity claims:
scope=openid profile pid
2. Select the wallet on the authorization page
Once the eID Easy authorization page opens:
- Select Denmark as the country
- Choose AltID as the method
3. Complete the wallet authentication
On the AltID screen:
- Scan the QR code with the AltID app, or open the wallet directly if you are using the same mobile device
- Review the identity or age-proof attributes requested by the relying party
- Approve the data sharing request in the wallet
Once approved, the wallet redirects back to eID Easy, which redirects your user to your redirect_uri with an authorization code.
4. Exchange the code and validate the ID token
Follow Steps 3-5 of the OIDC guide to exchange the code and validate the returned ID token.
The ID token is a signed JWS. Verify it using the public key published via the discovery document:
https://test.eideasy.com/.well-known/jwks.json
Identity claims returned
When the user successfully authenticates with AltID, the ID token includes a verified_claims object with government-issued identity data:
{
"verified_claims": {
"verification": {
"trust_framework": "eidas",
"time": "2026-03-11 12:29:34",
"evidence": [
{
"type": "electronic_record",
"document_details": {
"type": "EudiPid"
}
}
]
},
"claims": {
"given_name": "Sofie",
"family_name": "Jensen",
"birthdate": "1991-06-18",
"nationalities": ["DK"],
"birth_place": {
"country": "DK",
"locality": "Copenhagen"
}
}
}
}
| Field | Description |
|---|---|
verification.trust_framework | Always eidas for EUDI Wallet credentials |
verification.time | Timestamp of when the verification was performed |
verification.evidence[].type | electronic_record for wallet-issued PID |
verification.evidence[].document_details.type | EudiPid for EU Digital Identity PID credentials |
claims.given_name | First name as on the official document |
claims.family_name | Last name as on the official document |
claims.birthdate | Date of birth in YYYY-MM-DD format |
claims.nationalities | Array of ISO 3166-1 alpha-2 country codes |
claims.birth_place | Structured birth location, where available |
TIP
Standard profile claims (name, given_name, family_name, birthdate) may also appear at the top level of the ID token payload alongside verified_claims.
Setting up AltID
AltID is available to users over 13 years old who have MitID and a Danish CPR number. According to the official Digitaliseringsstyrelsen page, the current version of the app can create an identity card and an age proof.
Install the wallet app
- Request access to the AltID sandbox via sending email to altid@digst.dk
- Install AltID on your test device
Prepare the wallet
- Open the AltID app
- Follow the in-app steps to create or manage the digital proof. When authenticating with MitID, choose "Test accounts"
- login: Fenris1234, password: Test1234
- login: Nissen1234, password: Test1234
- login: Lunam1234, password: Test1234
- login: Lorde1234, password: Test1234
- Use the sandbox access provided for the eID Easy AltID integration
Your wallet is now ready to use in the OIDC flow.
For the latest public app requirements and availability, see the official AltID page from Digitaliseringsstyrelsen: https://digst.dk/it-loesninger/altid/.