Use Case 9.10 Transfer Wallet to another device

Overview

Aspect

Description

Summary

When a user activates a second wallet, they can decide to move their original wallet to this new device. With the source device, they scan a QR displayed on the target device to initiate the transfer. Afterwards, the source device is empty.

Goal

Allow the user to transfer attestation data, usage log and user settings from one device to another.

Preconditions

  • Destination Wallet is a fresh installation of NL Wallet, that is just activated using DigiD, containing a valid PID.
  • Source Wallet is an existing, valid NL Wallet installation, containing attestations, transaction history and user settings.

Postconditions

  • Destination Wallet is ‘active’, containing data from the Source Wallet
  • Source Wallet is ‘inactive’ and no longer usable

Triggered by

Additional documentation

Possible errors

Logical test cases



Flow Overview

The following diagram indicates how the user transfers their wallet from one device to another. They need to operate both devices.

        sequenceDiagram
    autonumber

    actor User
    participant WS as Source Wallet
    participant WT as Destination Wallet

    User ->> WT: Start transfer
    WT ->> User: Show QR-code
    User ->> WS: Scan QR-code
    WT ->> WS: QR-code (with encryption key)
    User ->> WS: Confirm transfer with PIN
    WS ->> WT: Send encrypted wallet data (via backend)
    WT ->> User: Transfer complete
    WS ->> User: Transfer complete (Source wallet now deactivated)
    


Flow Wallet Device Transfer (Source)

#

Description

Next

1

PRIMARY SCENARIO

1.1

User executes UC9.9 Scan QR to scan wallet transfer QR from target device

1.2

1.2

System displays screen ‘Confirm transfer’

  • Message: Do you want to move your wallet?
  • Actions: Yes move, Stop

1.2a

User selects Yes move

1.3

1.2b

User selects Stop

2

1.2c

Event: User stops on destination device

3

1.2d

Error: No internet

Error flow: No Internet

1.3

System executes partial flow PF2.4 Confirm a protected action

  • Cancelable

1.3a

Result: Confirm

1.4

1.3b

Result: Cancel

2

1.3c

Result: Back

Back

1.3d

Event: User stops on destination device

3

1.4

System displays screen ‘Transferring wallet’

  • Message: Wallet is being moved
  • Actions: Stop

1.4a

Event: Transfer completed successfully

1.5

1.4b

Event: Transfer failed

4

1.4c

Event: User stops on destination device

3

1.4d

User selects Stop

2

1.4e

Error: No internet

Error flow: No Internet

1.4f

Error: Server unreachable

Error flow: Server Unreachable

1.5

System displays screen ‘Move completed’

  • Message: Wallet successfully moved, this app is now empty
  • Actions: Create new NL wallet, Help

1.5a

User selects Create new NL wallet

Go to: UC1.1 Introduce the app

1.5b

User selects Help

Show placeholder ‘under construction’

2

STOP TRANSFER

2.1

System displays bottom sheet ‘Are you sure you want to stop?’

  • Actions: Yes stop, No

2.1a

User selects Yes stop

2.2

2.1b

User selects No

Back

2.2

System displays screen ‘Stopped’

  • Actions: Close, Help

2.2a

User selects Close

Go to: UC7.1 Show all available cards

2.2b

User selects Help

Show placeholder ‘under construction’

3

WHEN DESTINATION DEVICE STOPS TRANSFER

3.1

System displays screen ‘Stopped on destination device’

  • Actions: Close, Help

3.1a

User selects Close

Go to: UC7.1 Show all available cards

3.1b

User selects Help

Show placeholder ‘under construction’

4

WHEN WALLET TRANSFER FAILS

4.1

System displays screen ‘Move failed’

  • Message: Wallet could not be moved
  • Actions: See details, Close

4.1a

User selects See details

4.2

4.1b

User selects Close

End, Go to: UC3.1 Obtain PID 1.8

4.2

System displays bottom sheet ‘Error details’

  • Actions: Close

4.2a

User selects Close

4.1



Flow Wallet Device Transfer (Destination)

#

Description

Next

1

PRIMARY SCENARIO

1.1

System displays screen ‘Scan QR’

  • Message: Use the QR scanner on your other device to start transfer
  • Actions: Center QR code on screen, Help, Back

1.1a

Event: Source device contacts target device, upon scanning QR.

1.2

1.1b

User selects Center QR code on screen
→ App displays modal with centered QR

1.1c

User selects Help

Show placeholder ‘under construction’

1.1d

User selects Back

Back

1.1e

Error: No internet

Error flow: No Internet

1.2

System displays screen ‘Confirm on your other device’

  • Message: Confirm and enter PIN on other device
  • Actions: Help, Stop

1.2a

Event: Source device confirms initiation of wallet transfer, upon user approval.

1.3

1.2b

Event: User stops on source device

3

1.2c

User selects Stop

2

1.2e

User selects Help

Show placeholder ‘under construction’

1.2h

Error: No internet

Error flow: No Internet

1.2i

Error: Server unreachable

Error flow: Server Unreachable

1.3

System displays screen ‘Transferring wallet’

  • Message: Wallet is being moved to this device
  • Actions: Stop

1.3a

Event: Wallet transfer completed successfully

1.4

1.3b

Event: Wallet transfer failed

4

1.3c

Event: User stops on source device

3

1.3d

User selects Stop

2

1.3e

Error: No internet

Error flow: No Internet

1.3f

Error: Server unreachable

Error flow: Server Unreachable

1.4

System displays screen ‘Success’

  • Message: Your wallet is ready
  • Actions: To my overview, Help

1.4a

User selects To my overview

Go to: UC7.1 Show all available cards

1.4b

User selects Help

Show placeholder ‘under construction’

2

STOP TRANSFERRING

2.1

System displays bottom sheet ‘Are you sure you want to stop?’

  • Actions: Yes stop, No

2.1a

User selects Yes stop

2.2

2.1b

User selects No

Back

2.1c

Error: No internet

Error flow: No Internet

2.2

System displays screen ‘Stopped’

  • Actions: Close, Help

2.2a

User selects Close

End, Go to: UC3.1 Obtain PID 1.8

2.2b

User selects Help

Show placeholder ‘under construction’

3

WHEN USER STOPS ON SOURCE DEVICE

3.1

System displays screen ‘Stopped from source device’

  • Actions: Try again, Help

3.1a

User selects Try again

End, Go to: UC3.1 Obtain PID 1.8

3.1b

User selects Help

Show placeholder ‘under construction’

4

WHEN WALLET TRANSFER FAILS

4.1

System displays screen ‘Move failed’

  • Message: Wallet could not be moved
  • Actions: See details, Try again

4.1a

User selects See details

4.2

4.1b

User selects Try again

End, Go to: UC3.1 Obtain PID 1.8

4.2

System displays bottom sheet ‘Error details’

  • Actions: Close

4.2a

User selects Close

4.1