NFT Marketplace Overview
Key Features
XRPL native support for NFTs provides tools that let you do the following.
- Mint, sell, and burn NFTs
- Kick start an NFT project in little time at low expense
- Assign a broker to arrange transfers between sellers and bidders
- Authorize another account to mint NFTs for you
- Receive creator-friendly, on-ledger royalties that are honored by marketplaces
All this on top of the XRP Ledger’s greater than 10 years of performance and reliability.
Understand Your Goals
Start by deciding what sort of marketplace you want to create.
- Marketplace, selling NFTs minted by others
- Authorized minter, minting NFTs for artists
- Digital artist, creating and selling your own NFTs
There are 4 essential areas of preparation for starting your NFT business.
- Deciding how you will connect to the network
- Setting up your blockchain behavior
- Indexing required NFT information
- Determining your permanent storage strategy to cache your NFTs
Connect to XRPL
If you want to set up a smaller site with fewer transactions, you can work with one of the free XRP Ledger public servers. See Public servers.
If you want to set up a larger site with high volume, it might be worth investing in your own XRP Ledger server instance. See Install rippled.
See also:
Set Up Basic Blockchain Functions
You can begin to build your marketplace by minting some NFTs to sell.
To create your first NFTs, follow the instructions in the tutorial Mint and Burn NFTokens. See Mint and Burn NFTokens.
The NFToken URL is a link to the location where the content of the NFT is stored. One option is create an IPFS account and store the NFToken content at a persistent URL. See Best Practices for Storing NFT Data.
If you, as the issuer, want to be able to burn the token in the future, set the Flags
field to 1. To make the NFT transferable, set the Flags
field to 8. Set the Flags
field to 9 to make the NFT both burnable and transferable. See Burnable flag and Transferable flag.
You can collect royalties from future sales by setting a transfer fee.
This is a value from 0-50000 representing 0-50% of the sale price. See Transfer Fee.
You can mint NFTs in logical collections using the TokenTaxon
field. See Minting NFTs into Collections.
You can mint your own NFTs with content you create yourself, but you can also become an authorized minter to generate NFTs on behalf of another creator. This allows the creator to focus on making new NFTs while you handle production and sales of the NFTs.
Once the authorized minter has finished creating NFTs for you, you can revoke their privileges so that they no longer have any control over your NFTs.
See Authorized Minter.
Minted NFTs are listed on a NFTokenPage
. There is a reserve requirement of 2 XRP for every NFTokenPage
on your account. See NFT Reserve Requirements.
Each NFTokenPage
holds 16-32 NFTs. Minting a large number of NFTs can tie up a great deal of your XRP. You can keep your XRP liquid by minting on demand (or lazy minting). For details of different approaches, see Batch minting.
Setting up a wallet
Set up a new wallet. See Xaman.
When you set up your account, keep in mind that there is a base reserve requirement of 10 XRP. See Reserves.
Transferring NFTs
You transfer NFTs by creating a sell offer or accepting a buy offer. See Transfer NFTokens.
You can sell your NFTs in an auction format. See Running an NFT Auction.
You can act as a broker, connecting sellers with bidders, completing the transfer and keeping a percentage of the purchase price. See Broker a NFToken sale.
Reserve requirements
There are several XRP reserve requirements when you mint NFTs for sale. Each NFToken page requires a reserve of 2 XRP. A NFToken page can store 16-32 NFTs.
Each NFTokenOffer
object requires a reserve of 2 XRP.
When you post the NFTokenOffer
or sell the NFT, there are trivial transfer fees (roughly 6000 drops, or .006 XRP). When you are selling at a high volume, the trivial amounts can add up quickly, and need to be considered as part of your cost of doing business.
See:
- NFTokenOffer
- NFToken page (Owner reserve)
- Trivial transfer fees
Checkout
The most straightforward payment for XRPL NFTs is XRP. For examples of selling and buying NFTs using XRP, see Transfer NFTokens.
For trade in other currencies, you can leverage the DEX to accept and convert issued currencies of all kinds. See Trade in the Decentralized Exchange.
Indexing NFTs
When listing NFTs for sale, it can be useful to use object metadata to organize them.
You can use queries in the XRPL libraries, the Clio server, and extensions in the XRPL API and Bithomp libraries to sort and filter NFTs by creator, price, collection, rarity, and more.
See:
NFT Caching
NFTs that are created in the crypto space are expected to store metadata, including media, attributes, and so on. Currently most are stored on IPFS or Arweave to avoid centralization.
Although IPFS / Arweave are great solutions to promote decentralization, fetching the metadata efficiently is a problem. Reaching IPFS / Arweave directly to fetch metadata is not fast enough for modern websites that require immediate responses from users that are scrolling through multiple pages of NFTs with high-quality media. Many NFT marketplaces on XRPL today are storing cached versions of the IPFS originals to have fast and reliable responsive websites, but this process is expensive and inefficient.
Cloudflare, Infura, and many other providers are increasingly focusing on storing these decentralized files and retrieving them fast for users.
See NFT Caching.