The message journey between the dApp and the wallet through@WalletConnect WalletConnect.

First, initiate the connection.

The user opens the dApp and clicks on "Connect Wallet."

dApp generates a unique URI and converts it to a QR code.

The wallet scans the QR code.

Secondly, the session is created.

The dApp sends a request to create a session via the Relay network.

The wallet receives the request and presents it to the user:

1. The type of blockchain required.

2. Accounts and addresses.

3. The permissions are to send transactions or sign messages.

If the user agrees, encrypted session keys are generated between the two parties.

Third message exchange

When the dApp sends a command like sign this transaction, the message goes:

1. dApp → encrypts the message with the session key.

2. The message is transmitted through the Relay Server.

3. The wallet decrypts and sees the content.

Fourth user interaction

The wallet shows the user the details of the command:

Send 1 ETH to this address.

"Sign in".

The user decides: reject or approve.

Fifth, return the result

If the user agrees, the wallet signs the transaction with the private key.

The result (signature or TxHash) is sent encrypted → via Relay → delivered to the dApp.

If the user rejects, an error message (Rejected) is returned.

Sixth, manage the session

The session remains open for the duration of the connection.

The user or dApp can terminate it at any time.

Next time, they can create a new session in the same way.

#WalletConnect

$WCT