# Use Case 4.1 Obtain one or more cards from a (Q)EAA Issuer
## Overview
| Aspect | Description |
| ---------------------------- |---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **Summary** | The user adds one or more cards to their NL Wallet and/or updates one or more cards, by starting issuance flow on the issuer’s website,
approving the data request by the issuer using PIN, and then confirming issuance of the offered data with PIN. |
| **Goal** | Obtaining and/or updating cards from a (Q)EAA Issuer. |
| **Preconditions** |
- The App holds the requested data.
|
| **Postconditions** | - Card(s) is/are issued to and stored in the App.
- The disclosure event is added in the history.
- The issuance event or card renewed is added in the history
|
| **Triggered by** | - User invokes a universal link that contains the URL to a (Q)EAA Issuer.
- User scan a QR [UC9.9 Scan QR](UC2.1_SetupRemotePinAndBiometricsUnlock.md)
|
| **Additional Documentation** | - [PIN Validation](../../architecture/use-cases/pin-validation.md)
- [Issuance](../../architecture/use-cases/issuance-with-openid4vci.md)
- [Disclosure Based Issuance](../../architecture/use-cases/disclosure-based-issuance.md)
|
| **Possible errors** | - No internet
- Server unreachable
- Session expired
- Attributes missing
- Known issuer error
- Unknown issuer error
|
| **Logical test cases** | - [LTC2 Issuance fails](../logical-test-cases.md#ltc2)
- [LTC4 User rejects issued attributes](../logical-test-cases.md#ltc4)
- [LTC5 Disclosure based Issuance happy flow](../logical-test-cases.md#ltc5)
- [LTC8 User rejects disclosure of attributes](../logical-test-cases.md#ltc8)
- [LTC9 User continues after initially cancelling disclosure](../logical-test-cases.md#ltc9)
- [LTC10 User continues after initially cancelling issuance](../logical-test-cases.md#ltc10)
- [LTC11 cross-device generic issuance](../logical-test-cases.md#ltc11)
- [LTC12 Renew card happy flow](../logical-test-cases.md#ltc12)
- [LTC79 User has no cards to be issued](../logical-test-cases.md#ltc79)
|
---
## Flow
| # | Description | Next |
| ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------- |
| **1** | **PRIMARY SCENARIO** | |
| **1.1** | **System retrieves data request from issuer and displays loading indicator**- Message: Data is being retrieved
- Actions: Stop
- Duration: 0.0 - 1.0 seconds
| |
| 1.1a | User selects Stop | 8 |
| 1.1b | Case: Wallet does not contain requested attribute | Error flow: Attributes missing |
| 1.1c | Error: No internet | Error flow: No internet |
| 1.1d | Error: Server unreachable | Error flow: Server unreachable |
| 1.1e | Error: Unknown issuer error | Error flow: Unknown issuer error |
| 1.1f | Error: Known issuer error | Error flow: Known issuer error |
| **1.2** | **System displays screen 'Share Details to get cards'**- Message: Do you want to share details with [organization] to get your cards?
- Actions: Share, View Data, Stop, Help
| |
| 1.2a | User selects Share | 1.3 |
| 1.2b | User selects View Data | 2 |
| 1.2c | User selects Stop | 8 |
| 1.2d | User selects Help | Go to: [UC9.6 Get help](UC9.6_GetHelp.md) |
| **1.3** | **System executes partial flow [PF2.4 Confirm a protected action](../partial-flows/PF2.4_ConfirmProtectedAction.md)** | |
| 1.3a | Result: Confirm | 1.4 |
| 1.3b | Result: Cancel | 8 |
| 1.3c | Result: Back | Back |
| **1.4** | **System retrieves cards for issuance, while displaying loading indicator**- Data is being retrieved
- Actions: Stop
- Duration: 0.1 - 1.5 seconds
| |
| 1.4a | Case: Cards can be retrieved | 1.5 |
| 1.4b | Case: Issuer has no cards to issue to this user | Error flow: No cards found |
| 1.4c | Error: No internet | Error flow: No internet |
| 1.4d | Error: Server unreachable | Error flow: Server unreachable |
| 1.4e | Error: Session expired | Error flow: Session expired |
| 1.4f | User selects Stop | 8 |
| **1.5** | **System displays screen 'Add cards'**- Message: Do you want to add/update these cards?
- Lists cards to be added
- Lists cards to be renewed
- Actions: Add Card(s), View Data, Stop, Help
| |
| 1.5a | User selects Add Card(s) | 1.6 |
| 1.5b | User selects View Data | 7 |
| 1.5c | User selects Stop | 4 |
| 1.5d | User selects Help | Go to: [UC9.6 Get help](UC9.6_GetHelp.md) |
| **1.6** | **System executes partial flow [PF2.4 Confirm a protected action](../partial-flows/PF2.4_ConfirmProtectedAction.md)** | |
| 1.6a | Result: Confirm | 1.7 |
| 1.6b | Result: Cancel | 8 |
| 1.6c | Result: Back | Back |
| **1.7** | **System displays screen 'Card added'**- Message: Card added
- Actions: To my overview, Close
| |
| 1.7a | User selects To my overview | Go to: [UC7.1 Show all available cards](UC7.1_ShowAllAvailableCards.md) |
| 1.7b | User selects Close | Go to: [UC7.1 Show all available cards](UC7.1_ShowAllAvailableCards.md) |
| 1.7c | Error: No internet | Error flow: No internet |
| 1.7d | Error: Server unreachable | Error flow: Server unreachable |
| **2** | **GET SHARING DETAILS** | |
| **2.1** | **System displays screen 'About sharing'**- Message: About sharing with [organization]
- Actions: Read about [organization], View card details (per card), Read the agreement, Back
| |
| 2.1b | User selects About [organization] | 4 |
| 2.1a | User selects View card details | 2.2 |
| 2.1c | User selects Read the agreement | 5 |
| 2.1d | User selects Back | Back |
| **2.2** | **System displays screen 'Requested data'**- Message: # from [Card Title]
- Requested data
- Actions: Details Incorrect, Help, Back
| |
| 2.2a | User selects Details Incorrect | 3 |
| 2.2b | User selects Help | Go to: [UC9.6 Get help](UC9.6_GetHelp.md) |
| 2.2c | User selects Back | Back |
| **3** | **WHEN DETAILS ARE INCORRECT** | |
| **3.1** | **System displays screen 'Details incorrect'**- Message: Details Incorrect?
- Actions: Back
| |
| 3.1a | User selects Back | Back |
| **4** | **GET ISSUER ORGANIZATION DETAILS** | |
| **4.1** | **System displays screen 'About organization screen'**- Message: About [Organization]
- Organization data
- Actions: Help, Back
| |
| 4.1a | User selects Help | Go to: [UC9.6 Get help](UC9.6_GetHelp.md) |
| 4.1b | User selects Back | Back |
| **5** | **GET SHARING AGREEMENT DETAILS** | |
| **5.1** | **System displays screen 'Agreements'**- Message: these agreements apply to the sharing action.
- Agreements summary.
- Actions: Privacy policy, Back
| |
| 5.1a | User selects Privacy policy
→ System opens browser and suspends app | |
| 5.1b | User selects Back | Back |
| **6** | **GET CARD TO SHARE DETAILS** | |
| **6.1** | **System displays screen 'Card data'**- Organization data
- Actions: Details Incorrect, Back
| |
| 6.1a | User selects Details Incorrect | 3 |
| 6.1b | User selects Back | Back |
| 6.1c | User selects Help | Go to: [UC9.6 Get help](UC9.6_GetHelp.md) |
| **7** | **GET CARD TO ISSUE DETAILS** | |
| **7.1** | **System displays screen 'Card data'**- Actions: Details Incorrect, Back
| |
| 7.1a | User selects Details Incorrect | 3 |
| 7.1b | User selects Back | Back |
| 7.1c | User selects Help | Go to: [UC9.6 Get help](UC9.6_GetHelp.md) |
| **8** | **STOP** | |
| **8.1** | **System displays screen 'Confirm stop'**- Are you sure you want to stop?
- Actions: Yes Stop, No, Report Problem
| |
| 8.1a | User selects Yes stop | End |
| 8.1b | User selects No | Back |
| 8.1c | User selects Report a problem | 5 |
| **8.2** | **System displays screen 'Sharing stopped'**- Are you sure you want to stop?
- Actions: Yes Stop, No, Report Problem
| |
| 8.2a | User selects Yes stop | End |
| 8.2b | User selects No | Back |
| **9** | **REPORT PROBLEM** | |
| **9.1** | **System displays screen 'Report problem'**- Message: Report Problem
- Options: problems
- Actions: Back
| |
| 9.1a | User selects Back | Back |
| 9.1b | User selects Problem option | 5.2 |
| **9.2** | **System displays screen 'Under construction'** | |
| 9.2a | User selects Back | Back |