NFTokenMint
Transaction Reference
NFTokenMint is the XRP Ledger transaction type used to create a new non-fungible token. This page provides a complete reference for all transaction fields, flags, and behaviors.
Quick Definition
NFTokenMint is an XRP Ledger transaction type that creates a new NFToken object on the ledger, permanently recording the NFT with its issuer, configuration, and optional URI. It is the fundamental minting operation for native XRPL NFTs under the XLS-20 standard.
NFTokenMint Transaction Fields
The following table documents the fields used in an NFTokenMint transaction. Field requirements and behaviors are governed by the XRP Ledger protocol and may be updated through network amendments.
| Field | Type | Required | Description | Notes |
|---|---|---|---|---|
TransactionType | String | Required | Must be "NFTokenMint" to identify this as an NFT minting transaction. | Fixed value identifying the transaction type. |
Account | String (Address) | Required | The XRPL address of the account submitting the transaction. This account becomes the issuer of the NFT. | The issuer field is recorded permanently on the NFT. |
NFTokenTaxon | UInt32 | Required | An arbitrary integer used to group or categorize NFTs from the same issuer. Can be any value including 0. | Used to identify NFTs as part of a collection. The same taxon value across multiple mints from the same account groups them as a series. |
URI | String (Hex) | Optional | A URI pointing to the NFT metadata or associated content. The value is stored as a hexadecimal-encoded string on the ledger. | Maximum 256 bytes. Typically points to a JSON metadata file on IPFS or another storage system. |
Flags | UInt32 | Optional | A bitmask of boolean flags controlling NFT behavior. Flags are permanent — they cannot be changed after minting. | Key flags: tfBurnable (0x00000001), tfOnlyXRP (0x00000002), tfTransferable (0x00000008). Verify current flag values against official documentation. |
TransferFee | UInt16 | Optional | A percentage of the sale price directed to the issuer on qualifying secondary transfers. Encoded as thousandths of a percent. | Value of 5000 = 5%. Maximum value is 50000 (50%). Only applies when the tfTransferable flag is set and the transfer occurs through a compliant mechanism. |
Issuer | String (Address) | Optional | Specifies a different account as the issuer of the NFT. Used when one account mints NFTs on behalf of another. | When used, the specified Issuer account must have authorized the minting account. The NFT is associated with the Issuer address, not the Account address. |
Fee | String (XRP drops) | Required | The network transaction fee in XRP drops paid to validators for processing the transaction. | Set appropriately for current network conditions. Verify recommended fee values. |
Sequence | UInt32 | Required | The sequence number of the transaction from the sending account. | Must match the current sequence number of the Account. Increments with each transaction. |
Authoritative source: This reference is provided for educational purposes. For production development, always verify field requirements, types, and constraints against the official XRPL NFTokenMint documentation. Protocol behavior can change with network amendments.
Example NFTokenMint Transaction
The following is an illustrative example of an NFTokenMint transaction structure. This is for educational purposes — actual transactions require proper signing and submission through verified XRPL tooling.
{ "TransactionType": "NFTokenMint", "Account": "rExampleAccountAddress1234", "NFTokenTaxon": 42, "URI": "697066733A2F2F516D4578616D706C6548617368", "Flags": 8, "TransferFee": 5000, "Fee": "12", "Sequence": 1}
The URI value shown is a hex-encoded IPFS URI. TransferFee of 5000 represents 5%. Flags value of 8 sets tfTransferable. Verify all values against official documentation.
NFToken Flag Values
Flags are combined using bitwise OR. For example, to set both tfBurnable and tfTransferable, use a Flags value of 9 (1 + 8).
| Flag Name | Hex | Decimal | Meaning |
|---|---|---|---|
tfBurnable | 0x00000001 | 1 | Issuer can burn the NFT even after transfer |
tfOnlyXRP | 0x00000002 | 2 | NFT offers must use XRP only |
tfTransferable | 0x00000008 | 8 | NFT can be transferred to third parties |
TransferFee Encoding
The TransferFee field uses thousandths of a percent:
500→0.5%1000→1%5000→5%10000→10%50000→50% (maximum)Related Resources
How to Mint an NFT on XRPL
TutorialStep-by-step minting tutorial for beginners.
XRPL NFT Glossary
GlossaryDefinitions for NFTokenMint, NFTokenTaxon, URI, and all key terms.
All Guides
GuidesBrowse the complete XRPL minting knowledge base.
Official reference: NFTokenMint on xrpl.org — Always verify technical details against official XRP Ledger documentation. XRPL Mint is an independent educational resource and is not affiliated with Ripple.