# Wallet-to-Wallet Messaging

Built as a crypto native protocol, ONLY NETWORK’S wallet-based Decentralized ID, which is inherently public, supports an assets negotiation and exchange environment that no centralized chat solution can accomplish.

In the Web3 world, chat is not just about sending and receiving messages but a means to facilitate asset trading, e.g., in-game NFTs. Imagine your dream NFT is right in front of you, sitting in a wallet address, and you are ready to make a generous offer. But how can you contact the owner? There is no email or cell phone number to use. Wallet-to-wallet messaging enables you to start negotiating with the NFT owner at once.

Below we provide a specific use case describing how the user contacts an unknown wallet address.

### **Use Case Name**

Send NFT inquiry message to an unknown wallet address.

### **Actors**

1. Wallet app
2. Wallet user
3. NFT holder
4. ONLY NETWORK protocol

### **Preconditions**

1. The wallet app has integrated the ONLY NETWORK  protocol.
2. The NFT holder has an ONLY NETWORK protocol account.

### **Basic Flow of Events**

1. The use case begins when the user sees an unknown wallet address with the desired NFT.
2. The user searches for the wallet address inside the messaging window of the wallet.
3. The wallet calls the ONLY NETWORK protocol peer discovery API.
4. ONLY NETWORK broadcast the peer ID of the NFT holder's wallet address and locates its client.
5. ONLY NETWORK creates a topic for the wallet user and the NFT holder and establishes communication.
6. User enters the messaging window inside the wallet.
7. User sends an inquiry message.
8. The wallet fully encrypts the message and calls ONLY NETWORK message sending API.
9. ONLY NETWORK forwards the message to the receiver.
10. The NFT holder receives the message and responds.
11. The user receives the response and starts the negotiation.
12. The use case ends successfully.
