NFTokenBurn

The XLS-20 standard for NFTs has a preliminary implementation that can be used in test networks, but is not yet available as an amendment to the XRP Ledger protocol. An amendment may be included in a future XRP Ledger release.

The NFTokenBurn transaction is used to remove a NFToken object from the NFTokenPage in which it is being held, effectively removing the token from the ledger (burning it).

If this operation succeeds, the corresponding NFToken is removed. If this operation empties the NFTokenPage holding the NFToken or results in consolidation, thus removing a NFTokenPage, the owner’s reserve requirement is reduced by one.

Example NFTokenBurn JSON

{
      "TransactionType": "NFTokenBurn",
      "Account": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
      "Fee": 10,
      "TokenID": "000B013A95F14B0044F78A264E41713C64B5F89242540EE208C3098E00000D65"
}

NFTokenBurn Fields

In addition to the common fields, a NFTokenBurn transaction uses the following fields:

Field Name Required? JSON Type Internal Type Description
TransactionType Yes string UInt16 The NFTokenBurn transaction type. The integer value is 26.
Account Yes string AccountID The AccountID that submitted this transaction. The account must be either the present owner of the token or, if the lsfBurnable flag is set in the NFToken, the issuer account or an account authorized by the issuer, (that is, the MintAccount).
TokenID Yes string Hash256 Identifies the NFToken object to be removed by the transaction.

Account Root Enhancements

MintAccount

Issuers might want to issue NFTs from their well known account, while at the same time wanting to delegate the issuance of such NFTs to a mint or other third party.

Field Name Required? JSON Type Internal Type Description
MintAccount string AccountID The MintAccount field, if set, specifies an alternate account which is allowed to execute the NFTokenMint and NFTokenBurn operations on behalf of the account.

The SetAccount transaction allows the MintAccount field to be set or cleared.

MintedTokens

The MintedTokens field is used to form the TokenID of a new object, to ensure the uniqueness of NFToken objects. If this field is not present, the value is 0.

BurnedTokens

The BurnedTokens field provides a convenient way to determine how many NFToken objects issued by an account are still active (that is, not burned). If this field is not present the value 0 is assumed. The field is decremented whenever a token issued by this account is burned.

An account for which the difference the number of minted and burned tokens, as stored in the MintedTokens and BurnedTokens fields respectively, is non-zero cannot be deleted.