# Use Case 3.1 Obtain PID
## Overview
| Aspect | Description |
|------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **Summary** | The user obtains Person Identification Data (PID) by first authenticating themselves using DigiD (with ID card or driver's license),
checking the offered PID and entering their PIN to complete the process. |
| **Goal** | Obtaining the Person Identification Data (PID) to personalize the App. |
| **Preconditions** |
- The User has an instance of DigiD, activated at Level of Assurance High, on a device with an NFC scanner.
- The User has their ID card or driver's license with them.
|
| **Postconditions** | - PID is issued to and stored in the App.
- The PID issuance event is added in the history.
|
| **Triggered by** | - User completes [UC2.3 Setup remote pin and biometrics](UC2.1_SetupRemotePinAndBiometricsUnlock.md)
- User completes [UC2.3 Unlock the app](UC2.3_UnlockTheApp.md) when app is not personalized.
|
| **Additional Documentation** | - [Issuance](../../architecture/use-cases/issuance-with-openid4vci.md)
|
| **Possible errors** | - No internet
- Server unreachable
- Device incompatible
Generic |
| **Logical test cases** | - [LTC1 PID issuance happy flow](../logical-test-cases.md#ltc1)
- [LTC2 Issuance fails](../logical-test-cases.md#ltc2)
- [LTC3 Authentication with auth server fails](../logical-test-cases.md#ltc3)
- [LTC4 User rejects issued attributes](../logical-test-cases.md#ltc4)
|
---
## Flow
| # | Description | Next |
| ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------- |
| **1** | **PRIMARY SCENARIO** | |
| **1.1** | **System displays screen 'Add cards via DigiD'**- Message: Use DigiD to prove who you are
- Actions: Open the DigiD app, Go to Digid website, Help
| |
| 1.1a | User selects Open the DigiD app | 1.2 |
| 1.1b | User selects Go to DigiD website
→ System opens DigiD website in browser and suspends app | |
| 1.1c | User selects Help | Go to: [UC9.6 Get help](UC9.6_GetHelp.md) |
| **1.2** | **System awaits DigiD response and displays screen 'Continue with DigiD'**- Message: Continue in DigiD app to get your data
- Actions: Stop
| |
| 1.2a | Event: DigiD returns control to System, authentication successful | 1.3 |
| 1.2b | Event: DigiD returns control to System, authentication failed | 2 |
| 1.2c | Event: DigiD returns control to System, login stopped or session expired | 3 |
| 1.2d | User selects Stop | 4 |
| **1.3** | **System executes PID issuance until preview**- Data is being retrieved
- Actions: Stop
- Duration: 0.1 - 1.5 seconds
| |
| 1.3a | Event: PID issuance completes successfully | 1.4 |
| 1.3b | Error: PID could not be issued successfully | Error flow: Generic |
| 1.3c | Error: No internet | Error flow: No internet |
| 1.3d | Error: Server unreachable | Error flow: Server unreachable |
| **1.4** | **System displays screen 'Verify your data'**- Message: Are your details correct?
- Actions: Add, No
| |
| 1.4a | User selects Add | 1.5 |
| 1.4b | User selects No | 6 |
| **1.5** | **System executes partial flow [PF2.4 Confirm a protected action](../partial-flows/PF2.4_ConfirmProtectedAction.md)** | |
| 1.5a | Result: Confirm | 1.6 |
| 1.5b | Result: Back | 1.4 |
| **1.6** | **System executes rest of PID issuance**- Duration: 0.1 - 1.5 seconds
| |
| 1.6a | Event: PID issuance completes successfully | 1.7 |
| 1.6b | Error: No internet | Error flow: No internet |
| 1.6c | Error: Server unreachable | Error flow: Server unreachable |
| **1.7** | **System displays screen 'Wallet is ready'**- Message: Your NL Wallet is ready
- Actions: To my overview
| |
| 1.7a | User selects To my overview | Go to: [UC7.1 Show all available cards](./UC7.1_ShowAllAvailableCards) |
| **2** | **WHEN DIGID AUTHENTICATION FAILS** | |
| **2.1** | **System displays screen 'Login failed'**- Message: Login again to get data
- Actions: Login again, Go to DigiD website
| |
| 2.1a | User selects Login again | 1.2 |
| 2.2b | User selects Go to DigiD website
→ System opens DigiD website in browser and suspends app | |
| **3** | **WHEN USER ABORTS OR EXPIRES** | |
| **3.1** | **System displays screen 'Login stopped'**- Message: To continue login again
- Actions: Login again, Go to DigiD website
| |
| 3.1a | User selects Login again | Back |
| 3.1b | User selects Go to DigiD website | |
| **4** | **WHEN USER ABORTS DIGID FROM APP** | |
| **4.1** | **System displays prompt 'Are you sure?'**- Actions: Back, Stop Login
| |
| 4.1a | User selects Back | Back |
| 4.1b | User selects Stop Login | 4.2 |
| **4.2** | **System displays screen 'Login stopped'**- Actions: Login again, Go to DigiD website
| |
| 4.2a | User selects Login again | 1.2 |
| 4.2b | User selects Go to DigiD website
→ System opens browser and suspends app | |
| **5** | **WHEN PID ISSUANCE FAILS** | |
| **5.1** | **System displays screen 'Details are incorrect'**- Message: Details Incorrect
- Actions: Stop, Back
| |
| 5.1a | User selects Stop | 1.1 |
| 5.1b | User selects Back | Back |
| **6** | **WHEN USER REJECTS ISSUED PID** | |
| **6.1** | **System displays screen 'Details are incorrect'**- Message: Details Incorrect
- Actions: Stop, Back
| |
| 6.1a | User selects Stop | 1.1 |
| 6.1b | User selects Back | Back |