LutraID Playground¶
Welcome to the LutraID playground.
LutraID is a credential issuance and verification platform from Lutra Labs. This playground deployment is intended for developers, wallet teams, and interoperability event participants who want to test OpenID4VC issuance and presentation flows with a small set of public profiles before integrating the production version.
Overview¶
The playground offers two main capabilities:
- Issuer playground - create test credential offers and receive credentials in an EUDI-compatible wallet.
- Verifier playground - generate OpenID4VP presentation requests, scan a QR code or open a same-device link, and inspect the verification result.
| Resource | URL |
|---|---|
| Playground | https://api.playground.france-identite.gouv.fr/lutralabs/lutraid |
| Backend URL | https://api.playground.france-identite.gouv.fr/lutralabs/lutraid-api |
| Product website | https://id.lutralabs.io |
| info@lutralabs.io |
Supported Standards¶
| Category | Supported items |
|---|---|
| Issuance protocol | OpenID for Verifiable Credential Issuance (OpenID4VCI) 1.0 |
| Verification protocol | OpenID for Verifiable Presentations (OpenID4VP) 1.0 |
| High-assurance profile | HAIP 1.0-oriented technical profiles for selected issuance and verification flows |
| Credential formats | SD-JWT VC (dc+sd-jwt), ISO mdoc (mso_mdoc) |
| Query language | DCQL generation for verifier presentation requests |
| Remote presentation modes | Cross-device QR code, same-device link |
| Response modes | direct_post, direct_post.jwt |
| Issuance grants | Pre-authorized code, authorization code with PKCE and PAR |
| Request signing and trust material | X.509-backed issuer and verifier signing certificates, signed request objects, platform-managed root CA |
| Encryption | Credential response encryption and encrypted verifier responses where supported by profile |
Playground Flows¶
Issuance¶
The issuer provides predefined test profiles for wallet issuance:
| Credential | Format | Identifier | Notes |
|---|---|---|---|
| PID | SD-JWT VC | urn:eudi:pid:1 |
Compact test PID with sample identity attributes. |
| PID | mdoc | eu.europa.ec.eudi.pid.1 |
EUDI PID test credential using an ISO mdoc representation. |
| Mobile Driving Licence | mdoc | org.iso.18013.5.1.mDL |
ISO/IEC 18013-5 mDL test credential using the org.iso.18013.5.1 namespace. |
Available issuance cases:
| Issuance case | Credential offer contents |
|---|---|
| PID (SD-JWT) | PID as SD-JWT VC |
| PID (mDoc) | PID as ISO mdoc |
| mDL (mDoc) | Mobile Driving Licence as ISO mdoc |
| PID (SD-JWT + mDoc) | PID in both SD-JWT VC and mdoc formats |
| PID (SD-JWT) + mDL (mDoc) | PID as SD-JWT VC plus mDL as ISO mdoc |
How to test:
- Open playground.
- Choose an issuance case.
- Review or edit the sample credential subject JSON.
- Create a credential offer.
- Scan the QR code, or open the same-device link, with an OpenID4VCI-capable wallet.
- Accept the offer in the wallet.
The broader LutraID document registry also includes configurable templates for PID, mDL, Age Verification, PhotoID, EHIC, PDA1, Learning Credential, and organization-specific employee credentials. Availability in the public playground may be narrower than the full runtime catalog.
Verification¶
The verifier provides predefined OpenID4VP requests:
| Verification case | Accepted format | Requested data |
|---|---|---|
| PID | SD-JWT VC | given_name, family_name, birth_date |
| PID | mdoc | given_name, family_name, birth_date |
| Mobile Driving Licence | mdoc | given_name, family_name, birth_date |
| PID + Mobile Driving Licence | PID as SD-JWT VC or mdoc; mDL as mdoc | PID: given_name, family_name, birth_date; mDL: given_name, family_name, birth_date |
How to test:
- Open playground.
- Choose a verification case.
- Initiate verification.
- Scan the QR code, or open the same-device link, with an OpenID4VP-capable wallet.
- Approve the presentation in the wallet.
- Return to the browser and review the verification status and received presentation data.
In the full LutraID runtime, verification profiles are generated from structured document requirements and can accept SD-JWT VC and mdoc variants for the same logical document type. For example, a PID profile can request the same canonical attributes from either dc+sd-jwt or mso_mdoc credentials.
HAIP-Oriented Capabilities¶
LutraID includes a HAIP-oriented technical profile for selected high-assurance OpenID4VC flows, covering wallet attestation, x5c credential proofs, CA-signed signing posture, direct_post.jwt response handling, and x509_hash client identifiers for verifier scenarios.
Trust Material and Metadata¶
The playground publishes wallet-facing metadata through the standard OpenID discovery endpoints:
Wallets that require verifier or issuer trust anchors should import the playground certificate or root CA published above before testing signed requests, encrypted responses, or mdoc-related trust paths.
Contact¶
For testing help, wallet interoperability feedback, or access questions, contact info@lutralabs.io.
When reporting an issue, please include:
- the flow you tested, issuance or verification
- credential format,
dc+sd-jwtormso_mdoc - wallet name and version
- device, browser, and other environment details
- screenshots or logs if possible