# SDK Components

{% hint style="danger" %}
The following information is deprecated and may limit its use. Please refer to the WalletConnect 2.0 tab for the latest version of NEOPIN wallet integration: [walletconnect-2.0](https://docs.neopin.io/developers/walletconnect-2.0 "mention")
{% endhint %}

<table><thead><tr><th width="342">ConnectManager components</th><th width="468">Descriptions</th></tr></thead><tbody><tr><td>ConnectManager</td><td>Singleton object for connecting with the NEOPIN Wallet. You can set the MetaData to be displayed in NEOPIN.</td></tr><tr><td>ConnectManager+ClientDelegate</td><td><ul><li>A file containing methods that can receive result values according to the state after connection.</li><li><p>The methods currently supported are as follows.</p><ul><li><strong>func</strong> client(_ client: Client, didFailToConnect url: WCURL)</li><li><strong>func</strong> client(_ client: Client, didConnect url: WCURL)</li><li><strong>func</strong> client(_ client: Client, didConnect session: Session)</li><li><strong>func</strong> client(_ client: Client, didDisconnect session: Session)</li><li><strong>func</strong> client(_ client: Client, didUpdate session: Session)</li></ul></li></ul></td></tr><tr><td>ConnectManager+Connect</td><td><ul><li>A file with the code to connect with the NEOPIN Wallet.</li><li><p>The methods currently supported are as follows.</p><ul><li>connect</li><li>disconnect</li></ul></li></ul></td></tr><tr><td>ConnectManager+Log</td><td>A file for logging in the Sample app.</td></tr><tr><td>ConnectManager+Send</td><td><ul><li>A file containing methods that can be used after connecting to the NEOPIN Wallet.</li><li><p>The methods currently supported are as follows.</p><ul><li><p>getMyAccount</p><ul><li>Method for getting the address of the NEOPIN Wallet.</li></ul></li><li><p>requestSendTransaction</p><ul><li>Method of creating a Transaction and passing it to the NEOPIN Wallet.</li><li>Transactions allowed by NEOPIN Wallet comply with ERC-20 protocols.</li></ul></li></ul></li></ul></td></tr><tr><td>ConnectManager+Session</td><td>A file for saving and releasing sessions.</td></tr></tbody></table>

#### **NeopinConnect.Session Structure (DeepLink)**

<table><thead><tr><th width="138">Type</th><th width="329">Value</th><th width="286">Descriptions</th></tr></thead><tbody><tr><td>scheme</td><td>"nptwc"</td><td>Scheme used for NEOPIN Wallet</td></tr><tr><td>topic</td><td>"38b70a66-9959-4c85-96d5-2db30cedbbb4"</td><td>Random UUID</td></tr><tr><td>version</td><td>"1.0"</td><td>Version</td></tr><tr><td>bridge</td><td>"https://wc-bridge.neopin.io/"</td><td>Bridge Server</td></tr><tr><td>key</td><td>"6f133083c20d226e5c0846f494df16fed16158ede182910c34bbe7ce98d8b994"</td><td>Random Public Encryption and Decryption</td></tr></tbody></table>

#### **NeopinConnect.Session.ClientMeta Structure**

<table><thead><tr><th width="140">Type</th><th width="329">Value</th><th width="299">Descriptions</th></tr></thead><tbody><tr><td>appId</td><td>"${Issuance required}"</td><td>Used as DApp storage delimiter</td></tr><tr><td>name</td><td>"Dapp Sample"</td><td>DApp name to display on the screen</td></tr><tr><td>url</td><td>"https://www.sample.com/"</td><td>DApp introduction URL to display on the screen</td></tr><tr><td>description</td><td>"Sample"</td><td>Brief introduction</td></tr><tr><td>icons</td><td>listOf("https://neopin.io/favicon.png")</td><td>DApp icon URL to display on the screen</td></tr><tr><td>deepLink</td><td>"sample://open"</td><td>(Optional) DeepLink to be called after sendTransaction is finished\</td></tr></tbody></table>

#### **NeopinConnect.Client.Transaction Structure**

<table><thead><tr><th width="138">Type</th><th width="331">Value</th><th width="299">Descriptions</th></tr></thead><tbody><tr><td>from</td><td>"0x..."</td><td>The address from which the transaction is sent.</td></tr><tr><td>to</td><td>"0x..."</td><td>The address to which the transaction is received.</td></tr><tr><td>nonce</td><td>"0x0001"</td><td>The number of transactions that the transaction sender has sent before this transaction.</td></tr><tr><td>gasPrice</td><td>"0x9184e72a000"</td><td>Price per gas, which is an integer value of gasPrice.</td></tr><tr><td>gas</td><td>"0x76c0"</td><td>Integer value of gas amount set for transaction execution.</td></tr><tr><td>value</td><td>"0x0"</td><td>(Optional) Integer value of the remittance that you want to send through the transaction.</td></tr><tr><td>data</td><td>"0xa9059cbb00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"</td><td>(Optional) Hash of method identifiers and encoded parameters.</td></tr><tr><td>chainID</td><td>"8217"</td><td>NEOPIN Connect supports a variety of networks, so specifying a chainID is required.</td></tr></tbody></table>
