Page cover image

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.

Guides

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.

Level
Tier

Exclusive

95th percentile

VIP

85th percentile

Preferred

75th percentile

Select

50th percentile

General Admission

10th percentile

Create an NFT Drop

  1. To begin, head to the Contracts page in the thirdweb Dashboard and hit "Deploy new contract":

  1. 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!

  1. 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:

  1. 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:

  1. 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.

  2. 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).

  3. Select your upload method, add the NFT metadata and approve the necessary transactions.

  4. 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 on Add Initial Claim Phase to get started.

  1. 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.

  2. 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.

  3. Then, click on the blue Use Custom Currency, which is circled in pink in the screenshot below.

  1. 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.

  1. Pull a snapshot of token holders or select NFT holders

  2. 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

  3. 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.

  4. 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.

  5. 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:

  1. 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