Thirdweb
Selling NFTs in Your Token, Create an NFT Drop
Thirdweb has the type of how-to guides that would make even the most veteran degens eyes water. In this guide, we will explore using your ERC20 token as payment for NFTs.
Time to complete : 60 minutes (est)
Sell NFTs in Your Token:
tldr; Use a thirdweb NFT drop contract and use your ERC20 for payment.
You will interface with a dashboard, contract explore page, and the contract settings. These are prebuilt contracts and there is no need to be a code wizard here. There are a few alternatives we can spice things up with as well.
What you will need
A wallet with some gas on the network you are using
Assets for your NFTs and metadata
Your tokens smart contract address
An account on Thirdweb (free)
Optional: csv of who you want to be able to buy with your token
Why?
In a way, this is the ultimate utility. Collectors earn tokens for holding your NFTs and can spend those tokens on more NFTs. Using Thirdweb also allows you to design your own webpage to host the drop on. Create a more immersive experience on your own platform using your token as a currency. Finally, we can create a public price with the NFT available in MATIC and have a list of our holders who can purchase in our token for an amount we set.
Pricing Recommendations:
Use this chart as a guideline for pricing your NFTs in your token. Or, choose any number that sounds fun. Keep in mind exclusivity is great, but you want as many people as possible to participate. Consider, the exclusivity of the work, how exclusive you want the sale to be, and how many they can buy with your token.
Exclusive
95th percentile
VIP
85th percentile
Preferred
75th percentile
Select
50th percentile
General Admission
10th percentile
Create an NFT Drop
To begin, head to the Contracts page in the thirdweb Dashboard and hit "Deploy new contract":
You will be taken to the Explore page — where you can browse smart contracts built by the top protocols in web3 and deploy them in just a few clicks!
Here, select your smart contract of choice. For this guide, we're going to use the NFT Drop (ERC721) contract to create our NFT collection:
Set up your smart contract with an image, name, description, etc., and configure which wallet address will receive the funds from primary and secondary sales:
Once the contract is deployed, you'll again find yourself in the contract dashboard. This dashboard will look slightly different because it is a different contract.
In the
NFTs
tab in the dashboard, we will upload NFT metadata and then create a claim phase to control the mint details. You can choose between single and batch uploads for the NFT metadata.If you choose single upload, you'll manually input the data for each NFT, and if you select batch upload, you'll have to upload a
.csv
or.json
file (you can find examples of these files in the dashboard after you click on batch upload).
Select your upload method, add the NFT metadata and approve the necessary transactions.
Once your NFTs are ready for minting, we are ready to set up a claim phase. We do this in the
Claim Conditions
tab. Click onAdd Initial Claim Phase
to get started.
Now, we can control all the details of the NFT drop. We can change the start time of the drop and how many NFTs will be available to be claimed. We can add an allow list, control how many NFTs can be claimed, and other details.
We are going are change the price and the currency used. Under the
How much do you want to charge to claim each NFT?
, enter the price you want to charge, denominated in your custom ERC-20 token.Then, click on the blue
Use Custom Currency
, which is circled in pink in the screenshot below.
Paste in the contract address from your custom ERC20 token (or any other ERC20 token you want to use). Click on the
plus
button to add your currency (circled in pink below) and then save the claim phase and approve the transaction.
Next steps...
There are a number of ways for people to claim an NFT from your drop. If you don't want to code anything, you can share a link to your dashboard, or you can go to the Embed
tab in the dashboard and use the prebuilt component.
Alternatively, check out the Code
tab in the dashboard and explore the code snippets, which make it super easy to start building with the thirdweb SDKs to create applications such as the NFT Drop Template!
Ok, But What if
You want sell your NFTs for ETH and want a list of your choosing to be able to purchase in your token. In our “Initial Claim Phase” we will leave the currency set to MATIC and make one tiny adjustment elsewhere with a snapshot.
Pull a snapshot of token holders or select NFT holders
Create a csv with this snapshot with the headers Address, Quantity, TokenAmount and TokenAddress
Address = Snapshot addresses
Quantity = How many NFTs can they buy with your token
TokenAmount = How many of your tokens does each NFT cost
TokenAddress = Your ERC20 token address
Set Up Claim Conditions
Claim conditions are the criteria that define who, when, and how users can claim an NFT from your drop; such as release dates, allowlists, and claim limits.
Go to the Claim conditions tab and click on
Add Initial Claim Phase
to get started.
In the claim phase, we set the default values for all wallets. You can change the details and charge whatever you want for the general public; such as 30 MATIC.
Next, select "Any wallet (with overrides)" in "Who can claim NFTs during this phase?" to upload the
CSV
file we generated containing our list of wallet addresses that can claim using our custom token:
A drawer will open up, upload the CSV file that we just made using the script, and save your claim phase!
*To design your own drop website
Last updated