はじめに

ファンジブルトークンをバーンする

Last updated November 28, 2025

ファンジブルトークンをバーンして、Solanaブロックチェーン上の流通から永久に削除します。

トークンをバーンする

以下のセクションでは、完全なコード例と変更が必要なパラメータを確認できます。トークンのバーンは永久にトークンを破棄します—この操作は元に戻せません。

1// To install all the required packages use the following command
2// npm install @metaplex-foundation/mpl-toolbox @metaplex-foundation/umi @metaplex-foundation/umi-bundle-defaults
3import {
4 burnToken,
5 findAssociatedTokenPda,
6} from '@metaplex-foundation/mpl-toolbox';
7import {
8 keypairIdentity,
9 publicKey,
10} from '@metaplex-foundation/umi';
11import { createUmi } from '@metaplex-foundation/umi-bundle-defaults';
12import { readFileSync } from 'fs';
13
14// Initialize Umi with Devnet endpoint
15const umi = createUmi('https://api.devnet.solana.com')
16
17// Load your wallet/keypair
18const wallet = '<your wallet file path>'
19const secretKey = JSON.parse(readFileSync(wallet, 'utf-8'))
20const keypair = umi.eddsa.createKeypairFromSecretKey(new Uint8Array(secretKey))
21umi.use(keypairIdentity(keypair))
22
23// Your token mint address
24const mintAddress = publicKey('<your token mint address>')
25
26// Find the token account to burn from
27const tokenAccount = findAssociatedTokenPda(umi, {
28 mint: mintAddress,
29 owner: umi.identity.publicKey,
30})
31
32// Burn 100 tokens
33await burnToken(umi, {
34 account: tokenAccount,
35 mint: mintAddress,
36 amount: 100,
37}).sendAndConfirm(umi)
38
39console.log('Burned 100 tokens')
40console.log('Mint:', mintAddress)
41console.log('Token Account:', tokenAccount)

パラメータ

バーン操作に合わせて以下のパラメータをカスタマイズしてください:

パラメータ説明
mintAddressトークンミントアドレス
amountバーンするトークン数

仕組み

バーンプロセスには2つの手順が含まれます:

  1. トークンアカウントを見つける - findAssociatedTokenPdaを使用して自分のトークンアカウントを特定
  2. トークンをバーン - burnTokenでバーンを実行

トークンをバーンするタイミング

トークンをバーンする一般的なユースケース:

  • 供給量の削減 - 総流通供給量を減少
  • デフレメカニズム - 時間とともに供給量を減少させるトークノミクスを実装
  • エラー修正 - 誤ってミントされたトークンを削除

重要な注意事項

  • バーンは永久的で元に戻すことはできません
  • 自分が所有するトークンのみバーンできます
  • amountは小数点以下桁数を考慮する必要があります(例:9桁の場合、1トークンのバーンにはamount: 1_000_000_000が必要)