NFT Conceptual Overview
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 XRP Ledger offers support for tokens, also known as IOUs or issued currencies. Such assets are, primarily, fungible.
Fun·gi·ble /ˈfənjəbəl/ (adj)
- able to replace or be replaced by another identical item; mutually interchangeable.
Fungible tokens can be easily traded between users for XRP or other issued assets on the XRP Ledger's decentralized exchange. This makes them ideal for payments.
A good example of a fungible item might be a postage stamp. If you are standing around in 1919 and need to send a letter by airmail, you would purchase a 24-cent stamp and affix it to your envelope. If you lost that stamp, you could use a different 24-cent stamp or use 2 10-cent stamps and 2 2-cent stamps. Very fungible.
But since you are standing around in 1919, you might be offered 24-cent airmail stamps where the aeroplane on the stamp is accidentally printed upside down. These are the world famous “Inverted Jenny” stamps. Only 100 were circulated on a single sheet of stamps, making them extremely rare and sought after. The current value of each mint condition stamp is appraised at over $1.5 million dollars.
Those stamps cannot be replaced by just another other 24-cent stamp. They have become non-fungible.
The XRPL Labs team has created a framework that supports non-fungible tokens (NFTs, or “nifties” in the vernacular). Non-fungible tokens serve to encode ownership of unique physical, non-physical, or purely digital goods, such as works of art or in-game items.
Extensions to the XRP Ledger support two new objects and a new ledger structure.
The NFToken is a native NFT type. It has operations to enumerate, purchase, sell, and hold such tokens. An
NFToken is a unique, indivisible unit that is not used for payments.
The NFTokenPage object contains a set of
NFToken objects owned by the same account.
You create a new
NFToken using the NFTokenMint transaction.
NFTokenOffer object is a new object that describes an offer to buy or sell a single
You destroy an
NFToken using the NFTokenBurn transaction.
You create a NFT using the
NFTokenMint transaction. The
NFToken lives on the
NFTokenPage of the issuing account. You can create an
NFTokenOffer to sell the
NFToken, creating an entry to the XRP Ledger. Another account can accept the
NFTokenOffer, transferring the
NFToken to the accepting account’s
NFTokenPage. If the
lsfTransferableflag is set to true (0x000008) when the
NFToken is minted, the
NFToken can be traded multiple times between accounts. The
NFToken can be permanently destroyed by its owner using the
- NFToken data type
- Ledger Objects