Passer au contenu principal

Créez et déployez un jeton ERC20 en 3 étapes

Mis à jour le
15 janvier 2026

10 min de lecture

Aperçu

Les jetons ERC20 constituent les éléments fondamentaux de l'écosystème Ethereum ; ils sont au cœur des protocoles DeFi, des DAO, des programmes de fidélité et bien d'autres applications. Mais ils n'ont pas toujours été normalisés. Aux débuts d'Ethereum, les jetons étaient créés sans norme, ce qui rendait difficile l'intégration de chaque nouveau jeton par les portefeuilles et les applications. Pour remédier à cela, la communauté a mis en place la norme ERC20, qui a apporté cohérence et interopérabilité au développement des jetons.

Dans ce guide, nous allons vous expliquer comment rédiger un contrat intelligent conforme à la norme ERC20, le compiler et le déployer à l'aide de Remix, grâce à des instructions étape par étape et en mettant en avant les meilleures pratiques, sans entrer dans des détails superflus.

Vous préférez un tutoriel vidéo ? Suivez Radek et découvrez comment créer et déployer un jeton ERC20 en 15 minutes.
Abonnez-vous à notre chaîne YouTube pour découvrir d'autres vidéos !

Ce que vous ferez


  • Découvrez les jetons ERC-20 et leurs cas d'utilisation
  • Créer et déployer un jeton ERC-20 à l'aide de Remix.IDE

Ce dont vous aurez besoin


  • Un portefeuille Web3 (par exemple, MetaMask, Coinbase Wallet, Phantom ou un portefeuille compatible avec WalletConnect)
  • Testez l'ETH (vous pouvez en obtenir via le « Faucet » Multi-Chain Quicknode)
  • Un navigateur Web moderne (par exemple, Chrome ou Brave)
  • Un compte Quicknode gratuit, pour la création de contenu après le lancement
Envie d'aller plus loin que le remix ?

Dans ce guide, nous utilisons Remix IDE pour simplifier les choses, en misant sur le développement via navigateur afin d'accélérer le développement et les tests. Si vous êtes prêt à passer au niveau supérieur, consultez nos tutoriels de déploiement plus avancés utilisant des frameworks modernes tels que Foundry et Hardhat :

Qu'est-ce qu'un jeton ERC-20 ?

ERC signifie « Ethereum Request for Comment » (demande de commentaires sur Ethereum), et 20 correspond au numéro d'identification de la proposition. L'ERC-20 a été conçu pour améliorer le réseau Ethereum.

L'ERC-20 est l'un des standards ERC les plus importants. Il s'est imposé comme la norme technique pour la rédaction de contrats intelligents sur la blockchain Ethereum, utilisée pour la mise en œuvre de jetons. L'ERC-20 définit un ensemble de règles que tous les jetons basés sur Ethereum doivent respecter.

La norme ERC-20 définit les jetons comme des actifs basés sur la blockchain qui peuvent être envoyés ou reçus et qui ont une valeur. Les jetons ERC-20 présentent de nombreuses similitudes avec le Bitcoin et le Litecoin. Cependant, la différence la plus notable réside dans le fait que, contrairement à ces derniers qui fonctionnent sur leur propre réseau blockchain, les jetons ERC-20 fonctionnent sur le réseau blockchain d’Ethereum et utilisent le « gas » comme frais de transaction.

Avant l'apparition de la norme ERC-20, tous ceux qui créaient des jetons devaient « réinventer la roue », ce qui signifie que tous les jetons étaient différents les uns des autres. Par exemple, si un développeur souhaitait travailler avec un autre jeton, il devait comprendre l'intégralité du code du contrat intelligent de ce jeton, en raison de l'absence de structure ou de directives spécifiques pour la création de nouveaux jetons.

Cela s'est avéré particulièrement pénible pour les portefeuilles et les plateformes d'échange : l'ajout de différents types de jetons obligeait les développeurs à passer au crible le code de chaque jeton et à le comprendre afin de pouvoir les prendre en charge sur leurs plateformes. Inutile de préciser qu'il était assez difficile d'ajouter de nouveaux jetons à une application.

Aujourd'hui, les portefeuilles et les plateformes d'échange utilisent la norme ERC-20 pour intégrer divers jetons standardisés à leurs plateformes et faciliter les échanges entre les jetons ERC-20 et d'autres types de jetons. La norme ERC-20 a rendu les interactions entre les jetons pratiquement transparentes et sans difficulté.

Points clés concernant les jetons ERC-20

Fonctionnalités normalisées : les jetons ERC-20 respectent un ensemble spécifique de normes, ce qui signifie qu’ils obéissent à un ensemble commun de règles et de fonctionnalités. Cela concerne notamment les modalités de transfert des jetons, le processus de validation des transactions, la manière dont les utilisateurs peuvent accéder aux données relatives à un jeton, ainsi que l’offre totale de jetons.

Contrats intelligents et DeFi : l'utilisation de contrats intelligents dans les jetons ERC-20 permet l'automatisation et l'exécution d'opérations financières complexes. Cela revêt une importance cruciale pour les plateformes DeFi, où ces jetons peuvent représenter divers instruments financiers, tels que des prêts ou des participations dans un pool de liquidités.

Interopérabilité : les jetons ERC-20 respectant tous la même norme, ils sont facilement interchangeables et fonctionnent de manière transparente avec d’autres jetons et applications conformes à la norme ERC-20 sur le réseau Ethereum. Cette normalisation simplifie le processus de création de nouveaux jetons et les rend instantanément compatibles avec les portefeuilles, les plateformes d’échange et les autres services existants.

Cas d'utilisation : les jetons ERC-20 peuvent représenter un large éventail d'actifs ou de services. Par exemple, ils peuvent remplir diverses fonctions, telles que la garantie de prêts, des actifs rémunérateurs dans le cadre du « yield farming », ou encore des jetons de gouvernance conférant des droits de vote au sein d'organisations autonomes décentralisées (DAO).

Transférabilité et échange : ces jetons peuvent être transférés d'un compte à un autre à titre de paiement, à l'instar des cryptomonnaies telles que le Bitcoin, et peuvent être négociés sur diverses plateformes d'échange de cryptomonnaies.

ERC-20 est une norme ou un ensemble de directives permettant de créer de nouveaux jetons. Cette norme définit six fonctions obligatoires qu’un contrat intelligent doit mettre en œuvre, ainsi que trois fonctions facultatives.

Les fonctions obligatoires sont énumérées ci-dessous, accompagnées d'explications.


  • totalSupply: une méthode qui définit l'offre totale de vos jetons ; lorsque cette limite est atteinte, le contrat intelligent refusera de créer de nouveaux jetons.
  • balanceOf: une méthode qui renvoie le nombre de jetons détenus par une adresse de portefeuille.
  • transfert: méthode consistant à prélever un certain nombre de jetons sur l'offre totale pour les attribuer à un utilisateur.
  • transferFrom: une autre méthode de transfert utilisée pour transférer des jetons entre utilisateurs.
  • approve: cette méthode vérifie si un contrat intelligent est autorisé à attribuer un certain nombre de jetons à un utilisateur, compte tenu de l'offre totale.
  • allocation: cette méthode est exactement la même que la méthode approuvée, à ceci près qu’elle vérifie si un utilisateur dispose d’un solde suffisant pour envoyer un certain nombre de jetons à un autre utilisateur.

Outre les fonctions obligatoires énumérées ci-dessous, certaines fonctions sont facultatives, mais elles améliorent la facilité d'utilisation du jeton.


  • name: Méthode qui renvoie le nom du jeton.
  • symbol: Méthode qui renvoie le symbole du token.
  • décimales: Méthode qui renvoie le nombre de décimales utilisées par le jeton. Elle sert à définir la plus petite unité du jeton. Par exemple, si un jeton ERC-20 a une décimales La valeur 6 signifie que le jeton peut être divisé jusqu'à six décimales.

Si vous connaissez la programmation orientée objet, vous pouvez comparer l'ERC-20 à une interface. Si vous souhaitez que votre jeton soit un jeton ERC-20, vous devez implémenter l'interface ERC-20, ce qui vous oblige à implémenter ces six méthodes.

Comment créer un jeton ERC-20

Maintenant que nous savons ce que sont les jetons ERC-20 et comment ils fonctionnent, voyons comment créer et déployer notre propre jeton.

Dans ce guide, nous utiliserons le testnet Sepolia d'Ethereum, car il est rapide, gratuit et largement pris en charge. Mais les mêmes étapes s'appliquent à n'importe quelle chaîne compatible EVM, que vous déployiez sur un testnet ou un mainnet comme Arbitrum, Base ou Avalanche.

Étape 1 : Obtenir de l'ETH de test

Pour commencer à déployer votre contrat sur le testnet Ethereum Sepolia, vous devrez vous procurer des ETH de test. Pour ce faire :


  • Si vous n'avez pas encore de portefeuille, installez l'extension de navigateur MetaMask ou utilisez un autre portefeuille compatible avec Web3, comme Rabby ou Phantom.
  • Accéder au robinet Quicknode Ethereum Sepolia
  • Connectez votre portefeuille ou saisissez son adresse, puis continuez. Vous aurez la possibilité de partager un tweet pour obtenir un bonus supplémentaire. Si vous préférez ne pas le faire, il vous suffit de sélectionner l'option « Non merci, envoyez-moi simplement 0,05 ETH » pour recevoir vos ETH de test.

Remarque : vous devez disposer d'un solde d'au moins 0,001 ETH sur le réseau principal d'Ethereum pour pouvoir utiliser ce « faucet ».

Chaîne multi-robinets Quicknode

Étape 2 : Rédigez le contrat intelligent de votre jeton

Il existe déjà une multitude de jetons conformes à la norme ERC20 en service sur la blockchain Ethereum, développés par différents groupes. Ces implémentations varient : certaines visent à réduire les coûts de gaz, tandis que d’autres privilégient une sécurité renforcée.

Pour une mise en œuvre robuste et sécurisée, de nombreux développeurs choisissent d’utiliser la norme de jetons ERC20 d’OpenZeppelin. OpenZeppelin propose une bibliothèque de contrats intelligents réutilisables, rigoureusement testée et auditée par la communauté, qui comprend un cadre fiable et sécurisé pour les jetons ERC20, ce qui en fait un choix privilégié pour garantir la conformité et la sécurité lors du développement de jetons.

Pour plus de simplicité et de sécurité, nous utiliserons le contrat ERC-20 d’OpenZeppelin pour créer notre jeton. Grâce à OpenZeppelin, nous n’avons pas besoin d’écrire l’intégralité de l’interface ERC-20. Nous pouvons simplement importer le contrat de la bibliothèque et utiliser ses fonctions.

Rendez-vous sur l'IDE Ethereum Remix et créez un nouveau fichier Solidity, par exemple « MyToken.sol ».

Collez le code suivant dans votre nouveau script Solidity :

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract MyToken is ERC20 {
constructor() ERC20("MyToken", "MT") {
_mint(msg.sender, 1000000 * (10 ** uint256(decimals())));
}
}

Explication du code ci-dessus :


  • Le commentaire « SPDX-License-Identifier » précise la licence sous laquelle le contrat est publié.
  • Le pragma Cette directive indique la version du compilateur à utiliser.
  • Le ERC20 Le contrat d'OpenZeppelin est importé et utilisé comme base.
  • MyToken C'est le nom de votre contrat, qui est une extension du contrat ERC20.
  • Le constructeur Cette fonction initialise votre jeton avec un nom («MyToken") et un symbole ("MTK« »).
  • Le _mint La fonction du constructeur permet de créer un stock initial de jetons. Dans cet exemple, 1 million de jetons sont créés et attribués à l'adresse qui déploie le contrat. Le nombre de jetons est ajusté par la décimales valeur, dont la valeur par défaut est 18 dans l'implémentation d'OpenZeppelin.

Puisque nous importons le ERC20 contrat intelligent d'OpenZeppelin et le MyToken Le contrat hérite de la ERC20 contrat, il n'est pas nécessaire de définir toutes les fonctions. Toutes les fonctions définies dans le ERC20 Les éléments du contrat sont importés dans le MyToken contrat. Si vous souhaitez consulter le code ERC-20 complet, qui est plus détaillé, jetez un œil au fichier ici

Prenez maintenant quelques instants pour personnaliser le contrat intelligent avec vos propres informations, si vous le souhaitez. Vous pouvez modifier le nom et le symbole du token en modifiant la partie suivante : - ERC20 (« MyToken », « MT »).

Vous avez besoin d'une fonctionnalité de mise à niveau pour votre jeton ERC20 ?

Découvrez notre guide sur le déploiement d'un contrat ERC20 évolutif à l'aide d'OpenZeppelin et de Hardhat.

Étape 3 : Déployez votre jeton

Une fois que vous avez terminé de personnaliser le contrat intelligent, passez à sa compilation.

Premièrement : Cliquez sur le Compilateur Solidity bouton. Vérifiez la version du compilateur et le contrat sélectionné. La version du compilateur doit être au moins 0.8.20 à cause de la file d'attente pragma solidity ^0.8.20; dans le contrat intelligent. Ensuite, cliquez sur le Compiler MyToken.sol bouton. Si tout se passe bien, une coche verte apparaîtra sur le bouton « Compiler ».

Compilation de remixes

Ensuite : rendez-vous dans l'onglet « Déployer et exécuter les transactions ». Pour le déploiement, sélectionnez l'option « Fournisseur injecté » dans la section « Environnement ». Avant le déploiement, assurez-vous que votre MetaMask est configuré sur le testnet Sepolia et que le contrat MyToken est bien sélectionné pour être déployé. Enfin, cliquez sur le bouton « Déployer » pour déployer votre contrat.

Si vous ne savez pas comment changer de réseau, ouvrez l'extension MetaMask, cliquez sur le sélecteur de réseau situé dans le coin supérieur gauche, puis sélectionnez « Sepolia ». Si vous ne le voyez pas, assurez-vous que l'option « Afficher les réseaux de test » est activée. Si vous souhaitez savoir comment ajouter l'URL RPC de Quicknode à MetaMask, consultez ce guide Quicknode.

Déploiement de Remix

Si vous recevez un message d'erreur avant le déploiement — « Ce contrat est peut-être abstrait » —, veillez à sélectionner le contrat approprié dans l'onglet « Contrat ».

Pour finir : confirmez la transaction dans MetaMask :

Confirmation de transaction Metamask

Et voilà ! Votre contrat de jeton est désormais déployé sur le testnet Sepolia d'Ethereum !

Maintenant, essayons de l'utiliser. Cliquez sur la flèche (>) à côté du nom du contrat, dans la section « Contrats déployés », pour afficher les fonctions du contrat. Cliquez ensuite sur le bouton « Nom »: vous devriez voir s'afficher le nom que vous avez personnalisé dans votre contrat. N'hésitez pas à tester également les autres fonctions.


astuce

Sur Remix.IDE, les fonctions sont identifiées par des codes couleur dans l'interface, en fonction de leur nature et de leur effet :

  • Fonctions « Blue Button » : elles correspondent à des fonctions constantes ou pures. Cliquer sur ces boutons ne déclenche pas de nouvelle transaction et ne modifie pas l'état du contrat. Elles se contentent de renvoyer une valeur issue du contrat et n'entraînent aucun coût de gaz.

  • Fonctions du bouton orange : il s'agit de fonctions gratuites qui modifient l'état du contrat mais n'acceptent pas d'Ether. L'activation de ces fonctions génère une transaction, ce qui signifie qu'elles entraînent des frais de gaz.

  • Fonctions des boutons rouges : les fonctions associées aux boutons rouges sont payantes et permettent de créer des transactions acceptant l'Ether. Le montant de ces transactions est saisi dans le champ « Valeur », situé sous le champ « Limite de gaz ». Leur exécution entraîne également des frais de gaz.

Remix des contrats déployés

Pour consulter votre contrat sur un explorateur de blockchain — un outil pratique et accessible aux débutants qui permet d'analyser diverses données de la blockchain —, rendez-vous sur l'explorateur Etherscan Sepolia et recherchez l'adresse de votre contrat.

Vous verrez le nom et le symbole de votre token dans la section « Token Tracker ».

Contrat Etherscan Sepolia

Cliquez maintenant sur le nom de votre token. La page qui s'affiche présente le nom, le symbole, l'offre totale maximale et le nombre de décimales de votre token.

Etherscan : le token Sepolia

Si vous souhaitez voir votre token apparaître dans MetaMask, copiez l'adresse du contrat déployé à l'aide du bouton « Copier » situé à côté du nom du contrat. Ouvrez ensuite MetaMask, cliquez sur le bouton « Importer des tokens » et collez l'adresse du contrat dans le champ « Adresse du contrat du token ». MetaMask récupérera automatiquement le symbole du token et le nombre de décimales. Cliquez sur « Suivant », puis sur « Importer »: votre token sera alors ajouté à votre portefeuille et apparaîtra dans la section « Actifs » de MetaMask.

Jeton personnalisé Metamask


Vérifiez votre jeton sur Etherscan

Suivez notre guide étape par étape pour vérifier votre contrat intelligent sur Etherscan.

Foire aux questions

De quoi ai-je besoin pour créer et déployer un jeton ERC20 ?

Vous aurez besoin d'un portefeuille Web3 (comme MetaMask), d'ETH de test provenant d'un « faucet », d'un navigateur Web moderne et d'un accès à l'IDE Remix. Il est recommandé de créer un compte Quicknode en essai gratuit pour le développement après le déploiement.

Pourquoi devrais-je utiliser la bibliothèque ERC20 d'OpenZeppelin ?

OpenZeppelin propose une implémentation ERC20 sécurisée, rigoureusement testée et vérifiée par la communauté, qui réduit les coûts de gaz et garantit la conformité. Il suffit de l'importer plutôt que de réécrire l'intégralité de la norme à partir de zéro.

Comment puis-je obtenir des ETH de test pour effectuer un déploiement sur le testnet Sepolia ?

Rendez-vous sur le site Quicknode Multi-Chain Faucet, connectez votre portefeuille ou saisissez votre adresse, et recevez gratuitement des ETH à titre d'essai. Vous devrez disposer d'au moins 0,001 ETH sur le réseau principal d'Ethereum pour pouvoir bénéficier de ce service.

Puis-je déployer mon jeton ERC20 sur d'autres réseaux qu'Ethereum Sepolia ?

Oui, les mêmes étapes de déploiement de Remix fonctionnent sur n’importe quelle chaîne compatible EVM, comme Arbitrum, Base ou Avalanche, qu’il s’agisse du testnet ou du mainnet, à condition que vous disposiez du jeton natif pour payer les frais de gaz et que vous puissiez changer de réseau dans votre portefeuille.

Qu'est-ce que la norme ERC20 pour les jetons ?

ERC20 est une norme technique permettant de créer des jetons sur la blockchain Ethereum. Elle définit six fonctions obligatoires (totalSupply, balanceOf, transfer, transferFrom, approve, allowance) et trois fonctions facultatives (name, symbol, decimals), garantissant ainsi l'interopérabilité entre les portefeuilles et les applications.

Comment puis-je déployer mon contrat de jeton depuis Remix ?

Dans Remix, compilez votre contrat à l'aide du compilateur Solidity 0.8.20 ou une version ultérieure, accédez à la section « Déployer et exécuter des transactions », sélectionnez « Fournisseur injecté » (avec MetaMask connecté à Sepolia), choisissez votre contrat, cliquez sur « Déployer », puis confirmez la transaction dans votre portefeuille.

Comment puis-je ajouter mon jeton ERC20 déployé à MetaMask ?

Copiez l'adresse du contrat déployé depuis Remix, ouvrez MetaMask, cliquez sur « Importer des jetons », collez l'adresse du contrat, et MetaMask récupérera automatiquement le symbole du jeton et le nombre de décimales pour les afficher dans vos actifs.

Combien coûte le déploiement d'un jeton ERC20 ?

Les coûts de déploiement dépendent du réseau et des prix actuels du gaz. Sur le testnet Sepolia, vous utilisez de l'ETH de test gratuit. Sur le mainnet Ethereum, le déploiement nécessite de l'ETH réel pour couvrir les frais de gaz, qui varient en fonction de l'encombrement du réseau.

Conclusion

Félicitations ! Vous venez de créer avec succès votre propre jeton sur le testnet Sepolia d'Ethereum !

Maintenant que vous avez lancé votre premier token, passez à l'étape suivante de votre parcours sur la blockchain grâce à un compte Quicknode gratuit. Inscrivez-vous dès aujourd'hui et bénéficiez d'un accès immédiat aux nœuds RPC les plus rapides, à une bibliothèque complète d'API Web3 et aux outils ETL blockchain les plus performants, le tout soutenu par une infrastructure de niveau entreprise.

Pour en savoir plus sur les autres normes de jetons et le déploiement de contrats intelligents, consultez ces guides Quicknode :


Vous pouvez également consulter ces différentes rubriques du guide Quicknode :


Abonnez-vous à notre newsletter pour découvrir d'autres articles et guides sur le Web3 et la blockchain. Si vous avez des questions ou besoin d'aide, n'hésitez pas à rejoindre notre serveur Discord ou à nous faire part de vos commentaires via le formulaire ci-dessous. Restez informé des dernières actualités en nous suivant sur Twitter (@Quicknode) et sur notre chaîne d'annonces Telegram.

Nous ❤️ les commentaires !

Faites-nous savoir si vous avez des commentaires ou des suggestions de nouveaux sujets. Nous serions ravis de vous entendre.

Partager ce guide