# Intégrer le portefeuille Socios.com dans votre dApp

Les dApps disposent généralement d’un bouton « Connecter le portefeuille » qui déclenche une fenêtre contextuelle où l’utilisateur peut sélectionner son fournisseur de portefeuille. La fenêtre contextuelle envoie alors un message au portefeuille choisi afin de vérifier que cet utilisateur possède bien cette adresse de portefeuille.

Il existe plusieurs façons d’intégrer le Socios Wallet dans la modale contextuelle « Connect Wallet » de votre dApp. En vous appuyant sur des outils réputés, vous pouvez offrir une expérience sécurisée et fluide qui fonctionne avec plusieurs fournisseurs de portefeuilles (comme MetaMask et d’autres) et chaînes, y compris Chiliz Chain (à la fois Spicy Testnet et Chiliz Mainnet).

Cette page a pour objectif de vous présenter विभिन्न options parmi lesquelles choisir.

{% hint style="info" %}
Parce que vous ciblez Chiliz Chain, assurez-vous de spécifier le bon `chainId` dans votre configuration :

* 88882 : Spicy Testnet
* 88888 : Chiliz Mainnet

Commencez par tester votre intégration sur Spicy Testnet (88882), vérifiez que tout fonctionne correctement, puis passez seulement ensuite à Chiliz Mainnet (88888).

Voir tous les paramètres ici : [Se connecter à Chiliz Chain](/fr-ai/develop/basics/connect-to-chiliz-chain.md)
{% endhint %}

## Choisissez vos bibliothèques et frameworks

Vous pouvez tirer parti de divers outils externes pour simplifier la connexion aux portefeuilles, la prise en charge multichaîne et les fonctionnalités avancées. Choisissez votre outil en fonction de la pile technologique de votre projet.

### WalletConnect (désormais Reown)

{% hint style="info" %}
[Reown](https://reown.com/) est le [nouveau nom](https://reown.com/blog/walletconnect-is-now-reown) de WalletConnect Inc.\
Le célèbre kit d’outils de connexion de portefeuille WalletConnect s’appelle désormais [Reown SDK](https://reown.com/reown-sdk) (ou AppKit). Il était auparavant connu sous le nom de Web3Modal.
{% endhint %}

Reown propose [un guide étape par étape pour utiliser AppKit](https://reown.com/blog/how-to-get-started-with-walletkit)et vous devriez également consulter [leur documentation complète](https://docs.reown.com/walletkit/overview).

{% hint style="warning" %}
**OBLIGATOIRE**

Le Socios.com Wallet implémente la norme [ERC-1271](https://eips.ethereum.org/EIPS/eip-1271) ce qui signifie que le contrat intelligent qui le sous-tend implémente la méthode `isValidSignature()` au lieu de `erecover()`.

Par conséquent, votre dApp DOIT prendre en charge ERC-1271 et implémenter un appel à `isValidSignature()`.

Voir [la documentation Reown](https://docs.reown.com/advanced/api/sign/smart-contract-wallet-usage#messages) pour en savoir plus.
{% endhint %}

### RainbowKit

[RainbowKit](https://www.rainbowkit.com/) est une bibliothèque React permettant d’ajouter des fonctionnalités de connexion aux portefeuilles. Elle repose sur [viem](https://viem.sh/) et le [Wagmi](https://wagmi.sh/) et fournit des composants préconstruits pour un flux d’intégration moderne et convivial.

Voir [leur introduction propre](https://www.rainbowkit.com/docs/introduction) pour en savoir plus.

### Moralis

[Moralis](https://docs.moralis.com/) propose [des parcours d’authentification prêts à l’emploi pour les chaînes compatibles EVM](https://docs.moralis.com/authentication-api/evm) (y compris Chiliz Chain si elle est correctement configurée), ainsi que des méthodes côté serveur pour valider et gérer les sessions utilisateur.

Si vous utilisez déjà Moralis, vous pouvez l’utiliser pour créer le bouton « Connect Wallet » de votre dApp avec plusieurs méthodes/outils :

* [Comment se connecter avec WalletConnect](https://docs.moralis.com/authentication-api/evm/how-to-sign-in-with-walletconnect)
* [Comment authentifier les utilisateurs avec RainbowKit](https://docs.moralis.com/authentication-api/evm/how-to-sign-in-with-rainbowkit)
* [Comment authentifier les utilisateurs avec Magic.Link](https://docs.moralis.com/authentication-api/evm/how-to-sign-in-with-magiclink)
* etc.

Ils ont également de longs articles de blog sur chacun d’eux :

* [Intégration WalletConnect – Comment intégrer WalletConnect](https://developers.moralis.com/walletconnect-integration-how-to-integrate-walletconnect/)
* [Comment ajouter une connexion avec RainbowKit à votre projet en 5 étapes](https://developers.moralis.com/how-to-add-a-sign-in-with-rainbowkit-to-your-project-in-5-steps/)

### thirdweb

[thirdweb](https://portal.thirdweb.com/) propose [Connecter](https://thirdweb.com/learn/guides/thirdweb-connect-explained), un flux d’inscription flexible qui tient compte de différentes préférences est essentiel lors de l’intégration des utilisateurs.

Vous pouvez vous appuyer sur leur [documentation sur les portefeuilles](https://portal.thirdweb.com/connect/wallet/sign-in-methods/external-wallets)et même tester leur [ConnectButton playground](https://playground.thirdweb.com/connect/sign-in/button).

## Recommander Socios.com Wallet dans la modale contextuelle

Vous pouvez personnaliser l’affichage de la modale contextuelle pour mettre en avant Socios.com Wallet :

* Avec Reown/WalletConnect : personnalisez la section « Portefeuille recommandé » de la modale à l’aide de l’option [`explorerRecommendedWalletIds`](https://docs.reown.com/advanced/walletconnectmodal/options#explorerrecommendedwalletids-optional) .
* Avec RainbowKit : vous pouvez créer votre propre liste de portefeuilles à l’aide de [`connectorsForWallets`](https://www.rainbowkit.com/docs/custom-wallet-list) .

## Assurez une expérience optimale pour vos utilisateurs

Pour une meilleure expérience utilisateur, nous vous recommandons de stocker l’adresse du portefeuille de l’utilisateur dans le stockage de session de votre dApp, ou dans le profil utilisateur. Ainsi, l’utilisateur n’aura pas besoin de connecter son adresse de portefeuille à chaque fois qu’il viendra sur votre plateforme.

## Méthodes prises en charge

Socios.com Wallet prend en charge les méthodes suivantes :

* `eth_sendTransaction`
* `eth_signTransaction`
* `personal_sign`

Nous prévoyons bientôt de prendre en charge les méthodes suivantes :

* `eth_signTypedData`
* `eth_signTypedData_v4`

## Vérification SIWE

Si vous souhaitez utiliser Socios.com Wallet pour authentifier à l’aide de [SWIE](https://eips.ethereum.org/EIPS/eip-4361), veuillez noter que Socios.com Wallet est un portefeuille SCA plutôt qu’un portefeuille EOA classique.\
\&#xNAN;*L’écosystème d’Ethereum comprend deux principaux types de comptes : les comptes de contrat intelligent (SCA) et les comptes détenus en externe (EOA).*

Alors que la signature des portefeuilles EOA peut être vérifiée avec `ecrecover` (par exemple en utilisant `ethers.utils.verifyMessage` ), la norme EIP-1271 (qu’utilise Socios.com Wallet) exige d’appeler la méthode `isValidSignature` du contrat pour la vérifier.

Ainsi, lors de l’authentification d’un compte, vous devez d’abord vérifier si l’adresse est un contrat et, selon cela, choisir la méthode de vérification appropriée.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.chiliz.com/fr-ai/develop/advanced/integrate-socios.com-wallet-in-your-dapp.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
