Making NFTs with the Qtum Web Wallet
Qtum recently added minting and managing NFTs (Non-Fungible Tokens) to the Qtum Web Wallet. In this blog, we follow the steps below to create some NFTs on Qtum Testnet using the Web Wallet:
1. Launch the wallet
2. Set the wallet to run on Testnet
3. Backup the wallet by downloading the key file
4. Get some Testnet QTUM from the faucet
5. Create some NFTs
6. Send some NFTs
A YouTube video showing these steps is also available.
Web Wallet NFT Specs
The Qtum Web Wallet is a lite wallet that runs in a Web browser, is easy to use, and has advanced features such as easy creation of QRC20 tokens, and now QRC1155 NFT tokens. QRC20 tokens are fungible, identical, and can be used in fractions like 0.001 tokens. QRC1155 NFT tokens follow the ERC1155 token protocol and are based on the Openzeppelin ERC1155 smart contract. The Web Wallet NFTs have these specifications:
- NFT files may be JPEG, GIF, and PNP for static images, animated GIFs, and webp videos.
- The current NFT file upload size is 20.0 MB maximum, may be increased in the future
- NFT name up to 100 characters, description up to 500 characters.
- Create one to 10 NFTs for each image. Send these NFTs in whole units only, not fractions.
- Default minting gas and fees are Gas price 0.00000040, Gas amount 2,500,000, transaction fee 0.01 QTUM. A typical overall minting fee is 0.1 QTUM. A typical NFT sending fee is 0.03 QTUM.
Step-By-Step Instructions
1. Launch Wallet at https://qtumwallet.org
2. Set to Testnet. Confirm the warning, select Settings, set Network to Testnet, and CONFIRM. Note the wallet will now say “QTUM — Testnet” in the top banner.
3. Backup Wallet. For the Generate new wallet menu button, select the red GENERATE NEW WALLET button, enter a password and press CONFIRM. Select the Green bar “PLEASE CLICK THIS BUTTON…” to download the key file. Save the key file in a safe place (a USB thumb drive) to restore the wallet later using “Restore From Key File”. When restoring the wallet set to testnet before using “Restore From Key File” or else your password won’t work.
4. Testnet Faucet. On the “View Wallet Info” page select the blue COPY button to copy the wallet address. Open a new browser tab for the Testnet Faucet at http://testnet-faucet.qtum.info. Paste the address into the white field and press the blue checkmark. Some Testnet QTUM will be sent in a minute or two. Back on the Web Wallet select “View Wallet Txs” to see the faucet payment.
5. Create NFTs. Scroll down the menu and select “Create NFT”. On the CREATE NFT form select “+” and upload the NFT file. Enter the NFT Name, NFT Description, the amount 1 to 10, and leave the Gas and Fee unchanged. After everything is correct press the green “CONFIRM” button to mint the NFT.
After sending the transaction to mint the NFTs, you can select the link in the green “Successful send” bar to see the NFT transaction in the explorer (when the next block is published). The Gas plus transaction fee is about 0.1 QTUM, since extra gas will be refunded. After the next block publishes select “View Wallet Info” to see the NFT, where the blue circle with “10” indicates the number of this NFT available.
6. Send NFTs. On the “View Wallet Info” page select the blue “SEND” button under the NFT you want to send. On the “send NFT” page enter the address, number of NFTs to send, leave the Gas and fee unchanged, and when everything is correct press the blue “CONFIRM” button to send the NFT. The overall fee for sending an NFT is about 0.03 QTUM.
References
1. EIP-1155 https://github.com/ethereum/eips/issues/1155
2. Openzeppelin ERC1155 contract
https://docs.openzeppelin.com/contracts/4.x/erc1155
https://github.com/OpenZeppelin/openzeppelin-contracts/tree/master/contracts/token/ERC1155
3. Qtum Web Wallet user manual for Creating and Sending NFTs
4. The Web Wallet Mainnet NFT contract address is 4e4d13a577072f0f5cb6fc1a17c96489de0f533e. The Web Wallet Testnet NFT contract address is 16c98b19e66e931b7ada0d5ca41006f33cea5c29.