Comment créer un portefeuille crypto avec une API : guide 2026
Apprenez à créer des portefeuilles crypto via une API : choix de garde, sécurité des clés, conception d'adresses, webhooks et plan de construction étape par étape pour les développeurs.

Pour créer un portefeuille crypto avec une API, vous envoyez une requête authentifiée à un service qui génère une paire de clés, stocke la clé privée et renvoie une adresse publique que vous pouvez présenter à un utilisateur. La partie difficile n’est pas cet appel. Il s’agit de décider qui détient les clés, comment vous sécurisez les identifiants qui les entourent et comment vous apprenez l’arrivée des fonds. Ce guide aborde ces trois points, avec les compromis qu’une équipe de production doit trancher avant le lancement.
TL;DR
- Une API de portefeuille génère des clés et renvoie une adresse. Vos vrais choix de conception sont la garde, le stockage des clés et la détection des paiements.
- Attribuez à chaque utilisateur ou à chaque facture sa propre adresse, et enregistrez chaque hachage de transaction entrante comme une clé unique dans votre base de données.
- Utilisez des webhooks signés au lieu du polling, vérifiez chaque signature et rendez votre gestionnaire idempotent.
- La génération de clés doit utiliser une source aléatoire cryptographiquement sûre, et les clés de production doivent se trouver dans un stockage non exportable tel qu’un HSM.
- Une API multi-chaînes unifiée vous évite d’exécuter des nœuds et de maintenir une intégration distincte par réseau.
Table des matières
- Ce qu’une API de portefeuille fait réellement
- Décidez de la garde avant d’écrire du code
- Pas à pas : créer votre premier portefeuille via une API
- Une adresse par utilisateur ou une par facture ?
- Sécurité des clés : là où les projets de portefeuille échouent vraiment
- Détecter les paiements avec des webhooks
- Réalités multi-chaînes que vous rencontrerez
- Construire vs acheter : une comparaison honnête
- Notre point de vue
- Essayez sur votre propre stack
- Checklist de lancement
- FAQ
- Sources
Ce qu’une API de portefeuille fait réellement
Un portefeuille blockchain est un logiciel qui gère des clés. L’aperçu de la technologie blockchain par le NIST le décrit comme un outil capable de stocker des clés privées, des clés publiques et des adresses, et qui aide les utilisateurs à travailler avec les actifs que ces clés contrôlent. Une API de portefeuille déplace ce travail de l’appareil de l’utilisateur vers votre backend.
En pratique, une API de portefeuille couvre quatre tâches :
- Créer : générer une nouvelle paire de clés et renvoyer l’adresse pour un réseau donné.
- Lire : signaler les soldes et l’historique des transactions pour cette adresse.
- Envoyer : construire, signer et diffuser un transfert, y compris une estimation des frais.
- Notifier : informer votre application lorsqu’un événement se produit sur l’adresse.
Le guide du développeur Bitcoin sur le traitement des paiements souligne un point qui s’applique à chaque chaîne : avant de demander un paiement, votre application doit créer une adresse ou en obtenir une ailleurs, et chaque étape du processus peut être externalisée auprès d’API tierces. L’externalisation est un choix d’ingénierie légitime. Elle échange le contrôle sur l’infrastructure contre de la rapidité et moins de pièces mobiles.
Décidez de la garde avant d’écrire du code
Toute intégration de portefeuille commence par une question : qui peut signer une transaction ?
| Modèle | Qui détient la clé privée | Cas d’usage typique | Charge principale |
|---|---|---|---|
| Vos utilisateurs détiennent les clés | L’utilisateur, dans sa propre application ou son propre appareil | Produits d’auto-garde, connexion avec un portefeuille | Vous ne pouvez pas déplacer les fonds ni récupérer les comptes |
| Portefeuilles gérés par API (hébergés) | Le fournisseur d’API stocke les clés pour votre compte, et vous autorisez les actions | Acceptation de paiements, adresses de dépôt, paiements sortants, soldes in-app | Vous devez sécuriser les identifiants API et connaître votre position réglementaire |
| Votre propre infrastructure de clés | Vous, dans votre propre HSM ou service de signature | Grosses trésoreries, politique interne stricte | Vous gérez et auditez tout vous-même |
La plupart des startups et agences développant des fonctionnalités de paiement visent la ligne du milieu. Les utilisateurs déposent sur des adresses contrôlées par votre application, votre backend envoie les paiements sortants, et personne n’a à faire tourner un nœud ou écrire du code de signature pour six réseaux.
La garde peut entraîner des conséquences juridiques qui dépendent de votre pays et de votre modèle économique. Si vous comptez détenir des fonds pour le compte de clients, parlez à un avocat qui connaît les règles de transmission de monnaie et d’actifs virtuels dans votre juridiction avant de lancer votre produit. Cet article ne couvre que l’aspect technique.
Une note sur l’abstraction de compte
Si vous développez sur Ethereum, vous rencontrerez des portefeuilles à contrat intelligent. La feuille de route d’abstraction de compte d’Ethereum décrit la possibilité de doter les comptes d’une sécurité programmable et d’une meilleure expérience utilisateur, au lieu de s’appuyer sur une seule clé privée brute. Cela peut permettre des fonctionnalités telles que le paiement des frais de gaz par un tiers et une récupération flexible. C’est un choix pertinent pour les applications grand public où les utilisateurs possèdent leurs portefeuilles. Pour un backend qui crée des milliers d’adresses de dépôt et balaye les fonds, le compte détenu externement classique reste le modèle le plus simple, et c’est celui qui fonctionne de la même manière sur Bitcoin, Tron et les chaînes EVM. La propre documentation d’Ethereum explique les deux types de comptes, les comptes détenus externement et les comptes contrats, si vous avez besoin d’un rappel.
Pas à pas : créer votre premier portefeuille via une API
Les endpoints exacts diffèrent selon le fournisseur, lisez donc la référence de l’API que vous choisissez. La séquence ci-dessous reste la même.
1. Obtenir les identifiants et les conserver côté serveur
Inscrivez-vous, obtenez une clé API et, si le fournisseur utilise la signature de requête, un secret. Ces identifiants peuvent déplacer de l’argent, traitez-les donc comme des mots de passe de base de données. Chargez-les depuis un gestionnaire de secrets, jamais depuis du code côté client, jamais depuis un dépôt public. Les recommandations d’OWASP pour les tests de SDK préconisent de vérifier que les identifiants sont limités et révocables, ce qui est une bonne règle pour toute intégration : si une clé fuit, vous devez pouvoir la révoquer sans reconstruire votre application.
2. Créer le portefeuille ou l’adresse
Appelez l’endpoint de création pour le réseau dont vous avez besoin. Vous récupérez une adresse, et généralement un identifiant que votre système pourra utiliser pour désigner le portefeuille ultérieurement. Stockez trois éléments dans votre propre base de données immédiatement :
- l’adresse,
- le réseau auquel elle appartient,
- l’utilisateur interne, la commande ou la facture auquel elle est liée.
Ne stockez pas la clé privée vous-même à moins d’avoir mis en place le stockage sécurisé pour la conserver. Avec un modèle hébergé, c’est le travail du fournisseur.
3. Afficher l’adresse et se prémunir contre les erreurs
Affichez l’adresse avec son nom de réseau en toutes lettres. Le ticket de support le plus fréquent dans les paiements crypto concerne un utilisateur qui a envoyé un jeton sur le mauvais réseau. Une adresse USDT sur Ethereum et une sur Tron n’ont rien à voir, mais les utilisateurs commettent encore des erreurs. Ajoutez l’étiquette du réseau à côté du QR code, et envisagez une courte étape de confirmation avant de l’afficher.
4. Souscrivez aux événements pour cette adresse
Enregistrez un webhook pour que votre backend soit informé des dépôts sans avoir à interroger l’API. La section suivante explique comment construire la partie réceptrice en toute sécurité.
5. Testez d’abord sur un réseau de test
Exécutez la boucle complète sur un testnet : créez une adresse, envoyez des fonds de test, recevez l’événement, créditez le compte, puis effectuez un paiement. Ce n’est qu’ensuite que vous basculerez les identifiants et le réseau sur le mainnet, en commençant par de petits montants.

Une adresse par utilisateur ou une par facture ?
La réutilisation est le raccourci qui cause des problèmes comptables plus tard. Le guide du développeur Bitcoin décrit l’approche standard consistant à attribuer sa propre adresse à chaque demande de paiement, afin qu’un paiement entrant soit clairement associé à la commande qui l’a provoqué.
Les schémas courants :
- Une adresse par facture. Réconciliation la plus propre. Idéal pour les flux de paiement avec un montant attendu et une heure d’expiration.
- Une adresse par utilisateur. Simple pour les fonctionnalités de dépôt, comme le rechargement de solde. Chaque transfert entrant crédite le même compte.
- Adresse mutualisée avec memo ou tag. Uniquement pour les réseaux et actifs qui le prennent en charge, et plus difficile à mettre en œuvre correctement.
Si vous générez des adresses à partir d’un schéma déterministe hiérarchique, la structure est standardisée. BIP 44 définit la disposition des chemins selon le but, le type de pièce, le compte, le change et l’index, ce qui permet à une seule graine de produire un arbre prévisible d’adresses. Une API hébergée gère normalement cela pour vous, mais connaître la disposition aide lors d’un audit ou d’une migration.
Sécurité des clés : là où les projets de portefeuille échouent vraiment
C’est rarement le protocole réseau qui fait pirater un produit de portefeuille. Le groupe de sécurité des contrats intelligents d’OWASP souligne que le plus grand risque réside dans l’aléatoire et le stockage des clés privées. Une graine prévisible entraîne une compromission totale et silencieuse, car un attaquant peut reconstruire les clés hors ligne. Leur conseil de test est de confirmer que toute génération de clés utilise le générateur de nombres aléatoires cryptographiquement sécurisé de la plateforme.
Trois règles pratiques en découlent.
N’inventez jamais votre propre génération de clés. Utilisez une bibliothèque éprouvée ou un fournisseur dont c’est le métier. Une graine Math.random() est une catastrophe qui n’attend qu’une date.
Conservez les clés de signature dans un stockage non exportable. Les recommandations de NIST sur les portefeuilles pointent vers des modules protégés par le matériel qui empêchent un processeur hôte d’extraire les clés secrètes. Pour tout ce que vous exécutez vous-même, cela signifie un HSM ou un élément sécurisé similaire, et non des variables d’environnement ou une colonne de base de données. Si vous souhaitez comprendre comment la protection de clés par le matériel fonctionne en pratique, ce guide sur la protection d’une clé racine avec un HSM (en portugais) explique les principes en utilisant les clés d’autorité de certification comme exemple. La même logique s’applique aux clés de signature de portefeuille.
Protégez l’aspect humain de l’accès. Les clés de sécurité matérielles pour les comptes d’administration qui peuvent créer des clés API, modifier des URL de webhook ou approuver des paiements éliminent une grande classe de risque de phishing. Séparez les rôles, afin que la personne qui déploie le code ne puisse pas également libérer des fonds.
Pour l’hygiène quotidienne de l’API, notre propre liste de contrôle des conseils de sécurité pour l’utilisation d’une API blockchain est un bon complément.

Détecter les paiements avec les webhooks
La création de l’adresse est la moitié du travail. Vous devez également savoir quand quelqu’un la paie. Interroger chaque adresse selon un planning gaspille des requêtes et retarde la confirmation. Les webhooks poussent l’événement vers vous dès que le fournisseur le voit. Nous parcourons un flux complet dans comment traiter les dépôts automatiquement avec les webhooks.
Le point de terminaison de réception est l’endroit où se produisent les erreurs de sécurité, donc construisez-le soigneusement. La Fiche de référence sur la sécurité des webhooks OWASP est la référence à suivre, et ses points principaux sont les suivants :
- Vérifiez la signature à chaque livraison. Recalculez le HMAC sur le corps brut avec votre secret partagé et comparez-le avec l’en-tête de signature. Utilisez une comparaison en temps constant pour éviter les attaques par temps.
- Exigez HTTPS. Une signature prouve qui a envoyé le message mais ne le chiffre pas, donc n’importe qui sur le chemin réseau peut lire une livraison en HTTP simple.
- Gardez les secrets hors de l’URL. Les URL se retrouvent dans les journaux d’équilibreurs de charge et de proxys que vous ne contrôlez peut-être pas. Placez l’authentification dans les en-têtes.
- Traitez les événements comme idempotents. Les livraisons peuvent se répéter après des tentatives de réessai réseau. Un seul paiement ne doit jamais être crédité deux fois.
Ce dernier point mérite un motif concret. Stockez le hachage de transaction comme une clé unique et indexée. Le conseil de réconciliation du guide Bitcoin, qui s’applique à chaque chaîne, est de vérifier votre base de données pour un hachage existant avant d’exécuter toute logique de crédit, au lieu de faire confiance au fait que chaque rappel arrive exactement une fois. En SQL, il s’agit d’une contrainte d’unicité sur le hachage et d’une insertion qui ignore les doublons.
Un gestionnaire fiable suit cet ordre :
- Lisez le corps brut de la requête avant tout analyse.
- Vérifiez la signature HMAC. Rejetez en cas de non-correspondance.
- Insérez le hachage de la transaction. S’il existe déjà, renvoyez un succès et arrêtez.
- Attendez le nombre de confirmations que votre politique de risque exige avant de créditer les fonds.
- Créditez le compte dans la même transaction de base de données que l’insertion.
- Répondez rapidement avec un code de succès, et envoyez les tâches lentes dans une file d’attente.
Notre page sur les webhooks blockchain et notifications d’événements montre comment cela fonctionne sur les réseaux pris en charge.
Réalités multi-chaînes que vous rencontrerez
Un portefeuille qui fonctionne sur une chaîne est simple. Un portefeuille qui fonctionne sur plusieurs est là où le coût d’intégration augmente, car chaque réseau a son propre format d’adresse, modèle de frais et standards de jetons.
- Frais. Sur les chaînes EVM, un transfert de jeton nécessite la pièce native pour le gaz. Une adresse nouvellement créée qui reçoit de l’USDT ne peut pas l’envoyer tant qu’elle ne détient pas également un peu d’ETH, de BNB ou d’équivalent MATIC pour les frais. Prévoyez une étape de financement pour les paiements et les balayages.
- Activation de compte Tron. Les adresses Tron se comportent différemment : un compte non activé peut ne pas apparaître on-chain tant qu’il ne reçoit pas une petite quantité de TRX, et les transferts TRC-20 consomment des ressources, donc testez ce chemin tôt.
- Standards de jetons. ERC-20, BEP-20 et TRC-20 se ressemblent pour les utilisateurs mais diffèrent dans les appels de contrat et les formats d’événements. Les NFT ajoutent l’ERC-721 par-dessus.
- Données décodées. Les journaux de transaction bruts sont en hexadécimal. Si votre fournisseur renvoie des valeurs décodées, vous évitez d’écrire l’analyse ABI pour chaque jeton.
Nous couvrons la différence entre fournisseurs de nœuds, indexeurs et API unifiées dans APIs Blockchain Comparées : 6 Types et Quand Utiliser Chacun, et les cas d’usage plus larges dans cas d’usage d’une API blockchain.
Construire vs acheter : une comparaison honnête
Vous pouvez exécuter vos propres nœuds et service de signature. Certaines équipes devraient le faire. Voici comment la décision se décompose généralement.
| Facteur | Exécuter votre propre pile | Utiliser une API de portefeuille unifiée |
|---|---|---|
| Temps jusqu’au premier portefeuille | Semaines, par chaîne | Heures |
| Infrastructure | Nœuds, indexeurs, surveillance pour chaque chaîne | Aucune de votre côté |
| Gestion des clés | La vôtre à concevoir et auditer | Gérée par le fournisseur, avec vos identifiants sécurisés |
| Structure des coûts | Temps d’ingénierie et serveurs | Abonnement prévisible |
| Contrôle | Total | Dans ce que l’API expose |
Si les portefeuilles sont le différenciateur principal de votre produit, ou si la réglementation vous oblige à conserver les clés dans votre propre environnement, construisez. Si les portefeuilles sont une fonctionnalité qui prend en charge les paiements, dépôts ou retraits, le temps d’intégration économisé est mieux dépensé ailleurs.
Notre perspective
Nous voyons le même schéma avec la plupart des équipes qui viennent à nous. Elles sous-estiment la plomberie et surestiment la cryptographie. Générer une clé est un problème résolu. Ce qui fait échouer les projets, c’est un mois passé sur la synchronisation des nœuds, les particularités de frais d’une chaîne, un gestionnaire de webhook qui crédite un dépôt deux fois, ou un montant décodé qui est erroné d’un facteur dix à cause des décimales des jetons.
C’est pourquoi nous avons conçu Chaingateway comme une seule API REST pour plusieurs réseaux, plutôt qu’une intégration par chaîne. Vous créez des portefeuilles, envoyez des transferts de tokens, estimez le gaz automatiquement et recevez des données de transaction pré-décodées dans le même format quel que soit le réseau utilisé. Les requêtes sont signées par HMAC, et les notifications webhook informent votre backend des paiements en temps réel, vous n’avez donc pas besoin d’exécuter vos propres nœuds ni d’interroger.
Notre conseil est simple. Décidez de la garde en premier. Donnez à chaque payeur sa propre adresse. Rendez votre gestionnaire de webhook idempotent dès le premier jour, pas après le premier crédit en double. Et testez toute la boucle sur un testnet avant qu’une seule vraie pièce ne bouge.
— Bitblade
Essayez-le sur votre propre stack
Si vous voulez créer des portefeuilles, envoyer des tokens et recevoir des notifications de paiement sur Ethereum, Bitcoin, Tron, Solana, Polygon, BNB Chain et Arbitrum à partir d’une seule intégration, consultez notre Blockchain API. Les plans sont sur la page de tarification : Plus coûte 49 € par mois, Pro 99 €, Premium 249 € et Enterprise 499 €, ou choisissez la facturation annuelle à 490 €, 990 €, 2 490 € et 4 990 € respectivement. Le service commence par un essai gratuit.
Checklist de lancement
Avant de passer en production, confirmez chaque point :
- Les identifiants API se trouvent dans un gestionnaire de secrets et peuvent être renouvelés.
- Chaque adresse est stockée avec son réseau, son propriétaire et son heure de création.
- Votre point de terminaison webhook utilise HTTPS, vérifie les signatures et les compare en temps constant.
- Une contrainte d’unicité sur le hachage de transaction empêche les doubles crédits.
- Vous attendez un seuil de confirmation adapté au montant en jeu.
- Les portefeuilles de paiement sont approvisionnés avec la pièce native nécessaire pour les frais.
- Les comptes administrateurs utilisent une authentification multi-facteurs forte, idéalement des clés matérielles.
- Vous avez consigné par écrit qui peut approuver les paiements et comment une clé divulguée est révoquée.
- Vous avez demandé un avis juridique sur la garde là où vous détenez des fonds pour autrui.
Sources
- NIST IR 8202: Blockchain Technology Overview
- Payment Processing, Bitcoin Developer Guide
- Account abstraction, ethereum.org
- Ethereum accounts, ethereum.org
- OWASP Smart Contract Security: SDK testing methodology
- NIST SP 800-63C: Subscriber-Controlled Wallets
- OWASP Webhook Security Cheat Sheet
- Derivation Paths, Learn Me A Bitcoin
- How to activate your Tron wallet for TRC20 transfers
Recommandé
Questions fréquentes
Oui. Une API de portefeuille hébergée exécute les nœuds et l’infrastructure de signature pour vous et renvoie les adresses via des appels REST. Vous devez néanmoins sécuriser vos propres identifiants API et votre point de terminaison webhook, car ce sont désormais les portes d’accès à vos fonds.
Généralement oui, dans le sens où le service stocke les clés et vos identifiants autorisent les actions. Que cela fasse de vous un dépositaire au sens juridique dépend de savoir si vous détenez des fonds pour vos clients et de votre juridiction. Consultez un avocat spécialisé dans la régulation des actifs virtuels avant de lancer au public.
Abonnez-vous aux notifications webhook pour l’adresse. Vérifiez la signature HMAC, enregistrez le hachage de transaction dans une colonne indexée de manière unique, et créditez le compte seulement une fois votre exigence de confirmation remplie. Comme les livraisons peuvent se répéter, la vérification du hachage est ce qui vous empêche de payer deux fois.
Par paiement donne la réconciliation la plus propre, puisque chaque adresse correspond à une commande. Par utilisateur est plus simple pour les rechargements de solde. Évitez de partager une adresse entre plusieurs payeurs sauf si le réseau supporte un memo ou un tag et que vous le gérez correctement.
Dans un stockage non exportable tel qu’un HSM ou un élément sécurisé, ou auprès d’un fournisseur qui exploite ce stockage pour vous. Les variables d’environnement, les fichiers de configuration et les lignes de base de données ordinaires ne conviennent pas pour les clés qui contrôlent de vrais fonds.
Prêt à le construire vous-même ? Obtenir votre clé API — essai de 7 jours, sans carte bancaire — ou consultez API Blockchain pour la référence complète des endpoints.