Documentation Index
Fetch the complete documentation index at: https://docs.raydium.io/llms.txt
Use this file to discover all available pages before exploring further.
Cette page est traduite automatiquement par IA. La version anglaise fait foi.Voir la version anglaise →
Chaque actif échangeable sur Solana — y compris les actifs de base et de cotation de chaque pool Raydium — est un token frappé par l’un de deux programmes : le programme SPL Token hérité ou son successeur, Token-2022. Il s’agit de programmes distincts à des adresses différentes, avec des schémas de compte et une sémantique d’extension différents. Raydium supporte les deux, mais pas partout : CPMM, CLMM et Farm v6 acceptent les mints Token-2022 ; AMM v4 ne les accepte pas. Comprendre cette distinction est essentiel avant d’intégrer un pool.
Les deux programmes
| SPL Token | Token-2022 | |
|---|---|---|
| ID du programme | TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA | TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb |
| Lancement | 2020 | 2022 |
| Taille du compte (compte token) | 165 B | 165 B + extensions (variable) |
| Extensions | Non | Oui — 17+ extensions officielles |
| Compatibilité héritée | Complète | Optionnel par mint |
solana-program-library.
Pourquoi deux programmes ?
SPL Token a été figé pour la compatibilité ascendante — son bytecode est effectivement immuable, offrant une ligne de base claire pour tout l’écosystème. À mesure que les cas d’usage se sont multipliés (stablecoins voulant des frais de transfert, mints institutionnels nécessitant des autorités de gel nuancées, NFTs nécessitant des pointeurs de métadonnées), l’équipe Solana a introduit Token-2022 comme un programme distinct et extensible plutôt que de mettre à niveau SPL Token. Cela préserve les intégrations existantes et laisse chaque mint opter pour exactement les extensions dont il a besoin. Token-2022 est un sur-ensemble strict en fonctionnalité, pas en espace d’adresse : les deux programmes coexistent, et un mint à une adresse donnée appartient à exactement l’un d’eux.Structure du compte
Compte Mint
Définit l’identité d’un token. Mint SPL Token (82 bytes) :Compte Token
Détient un solde d’un mint spécifique pour un propriétaire spécifique. Compte SPL Token (165 bytes) :Extensions Token-2022
Les extensions sont des fonctionnalités modulaires qui peuvent être attachées aux mints ou aux comptes. Chaque extension est un enregistrement TLV distinct. Les clés pour Raydium :Transfer fee
Le mint peut percevoir une redevance en pourcentage sur chaque transfert. Les frais vont à une autorité de retrait configurée. Supporté par Raydium CPMM et CLMM viaSwapV2 — le programme tient compte des frais lors du calcul des taux de change, donc la mathématique du pool reste cohérente.
Transfer hook
Le mint pointe vers un programme que le runtime invoque sur chaque transfert. Le programme hook peut rejeter le transfert ou effectuer des effets secondaires (mettre à jour un état de conformité, journaliser, etc.). Raydium CPMM/CLMM invoque le hook viaSwapV2 — la transaction inclut le programme hook et tous les comptes supplémentaires dont il a besoin.
Interest-bearing
Le solde en chaîne accumule des intérêts à un taux configuré. Affichage uniquement (les soldes semblent plus élevés au fil du temps) plutôt que mint réel ; l’approvisionnement sous-jacent est inchangé.Mint close authority
Permet au mint d’être fermé une fois que l’approvisionnement atteint zéro.Permanent delegate
Un portefeuille désigné peut transférer ou brûler des tokens de n’importe quel compte sans condition. Raydium bloque la création de pool pour les mints avec cette extension — elle est incompatible avec l’invariant selon lequel les réserves du pool ne peuvent pas être saisies.Non-transferable
Les tokens ne peuvent pas être déplacés du compte dans lequel ils sont frappés. Raydium bloque la création de pool — un actif non échangeable ne peut pas être la base ou la cotation d’un pool LP.Default account state
Les nouveaux comptes tokens pour ce mint sont gelés par défaut et doivent être dégelés par l’autorité de gel. Utilisable mais rare.Confidential transfer
Les soldes et les montants de transfert sont chiffrés. Raydium ne supporte pas les mints de transfert confidentiel (la mathématique du pool nécessite des soldes en texte clair).Metadata pointer + token metadata
Remplace les métadonnées Metaplex pour les mints Token-2022. Supporté pour les listes de pools Raydium.Group / Member pointer
Déclare un mint comme appartenant à un groupe (par exemple, une collection NFT). Informatif ; Raydium l’utilise pour l’affichage. Consultez la page officielle des extensions Token-2022 pour la liste complète.Quels produits Raydium supportent quoi
| Produit | SPL Token | Token-2022 | Notes |
|---|---|---|---|
| AMM v4 | Oui | Non | L’intégration OpenBook nécessite SPL Token |
| CPMM | Oui | Oui | Nécessite SwapV2 pour les pools Token-2022 |
| CLMM | Oui | Oui | Nécessite SwapV2 pour les pools Token-2022 |
| Farm v6 | Oui | Oui | Supporté pour les mints de stake et de reward |
| LaunchLab | Oui | Oui | Les pools CPMM diplômés héritent du support Token-2022 |
- Bloquées : non-transferable, permanent delegate, confidential transfer, default account state (dans les configurations rejetées).
- Autorisées avec réserves (LP doit accepter le risque) : transfer fee, transfer hook, freeze authority active.
- Entièrement autorisées : interest-bearing, metadata pointer, group pointer, mint close authority.
getPoolInfoFromRpc inclut les drapeaux d’extension du mint — les clients doivent vérifier avant de devenir LP.
Standards de compte Token
Associated Token Account (ATA)
Les deux programmes partagent la convention Associated Token Account : un PDA dérivé de[owner, programId, mint] via l’Associated Token Program (ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL). Presque chaque compte token utilisateur sur Solana est un ATA.
Comptes token non-ATA
Un portefeuille peut avoir plusieurs comptes tokens pour un seul mint ; ATA est juste la convention. Les coffres de pool, par exemple, ne sont pas des ATA — ce sont des PDAs du programme pool, détenant les réserves du pool.Détecter quel programme possède un mint
Le compte de chaque mint a un champowner pointant vers SPL Token ou Token-2022 :
getPoolInfoFromRpc retourne le programId approprié par token afin que les clients puissent construire les ATA correctes.
Instructions de swap par programme
CPMM et CLMM de Raydium ont chacun deux instructions de swap :| Instruction | Mints supportés |
|---|---|
Swap / SwapBaseInput (hérité) | SPL Token uniquement |
SwapV2 / SwapBaseInputV2 | SPL Token et Token-2022 |
SwapV2 prend des comptes supplémentaires : comptes mint pour les deux côtés, le programme token pour chaque côté (car ils peuvent différer), et — pour les mints avec transfer hook — le programme hook et ses comptes requis.
Les clients doivent toujours utiliser SwapV2 lorsqu’au moins un côté est Token-2022 ; SwapV2 fonctionne aussi pour les pools SPL uniquement, mais le Swap hérité est moins cher en calcul.
Le SDK choisit la variante correcte automatiquement.
Migrer un projet SPL Token vers Token-2022
Token-2022 n’est pas un remplaçant prêt à l’emploi au niveau du mint — un mint à l’adresse X est soit SPL soit Token-2022, et c’est fixé à la création. Pour « migrer », vous devez :- Créer un nouveau mint sous Token-2022 avec les extensions que vous souhaitez.
- Fournir un mécanisme de swap/wrap pour les détenteurs du ancien mint SPL pour échanger contre le nouveau.
- Mettre à jour tous les pools LP, farms et intégrations pour référencer le nouveau mint.
Exemple concret : créer un mint Token-2022 avec transfer fee
Considérations de sécurité
Avant de faire de LP ou d’échanger via un mint Token-2022 :- Vérifiez
freeze_authority. S’il n’est pas nul et détenu par une partie centralisée, ils peuvent geler votre ATA (et potentiellement le coffre du pool). - Vérifiez
transfer_hook. Le programme hook peut bloquer les transferts arbitrairement — DYOR sur la source du hook. - Vérifiez
transfer_fee. Tenez compte des frais dans la sortie de swap attendue. - Vérifiez
permanent_delegateetnon_transferable. Le programme Raydium rejette ces extensions, mais vérifiez si vous construisez une intégration personnalisée.
security/oracle-and-token-risks pour le cadre complet d’acceptation des risques.
Pointeurs
solana-fundamentals/account-model— le modèle de compte général.reference/token-2022-support— spécificités Token-2022 pour CPMM et CLMM.security/oracle-and-token-risks— risques provenant des extensions de mint malveillantes.
- Documentation SPL Token.
- Documentation Token-2022 — liste complète des extensions.
- Associated Token Account.


