Can I use my custom ERC20 token as payment for NFT sales instead of ETH?

I’m planning to build a platform where users can mint my NFT collection. Most NFT marketplaces I’ve seen require ETH as payment for minting tokens on the Ethereum blockchain. However, I have my own ERC20 token that I’d like to use as the payment method instead of ETH. Is this technically feasible? I’m wondering if there are any limitations or specific implementation requirements when accepting custom ERC20 tokens for NFT purchases. Has anyone successfully implemented this type of payment system for their NFT minting process?

Oh interesting! I’ve been thinking about doing something similar but haven’t pulled the trigger yet. Quick question @WhisperingTree - why use your own token instead of ETH? Trying to create more utility or build an ecosystem around it?

I’m curious about the UX side too. What happens when someone wants to mint but doesn’t have your ERC20 token? Got a built-in swap or do users need to grab tokens elsewhere first?

Also wondering about liquidity - if your token doesn’t have great DEX liquidity, won’t that limit your customer base? People might want your NFTs but find it too much hassle to get your specific token first.

Have you considered offering both options - ETH AND your custom token, maybe with a discount for using yours? Could be a nice middle ground that encourages token usage without alienating potential buyers.

Yes, it is indeed feasible to use your custom ERC20 token for NFT sales instead of ETH. I implemented a similar solution for my NFT project. You’ll need to adjust your minting contract to accept transfers of your ERC20 token. Specifically, implementing the transferFrom function will be key since users must authorize your contract to spend their tokens. Be cautious with token decimals, as many ERC20 tokens use 18 decimals, similar to ETH, but there are exceptions. Additionally, users will still need ETH for gas fees, which adds a bit of complexity to the minting process.

yeah, I did this for my project too - pretty straightforward. Just modify your smart contract to accept ERC20 tokens and make sure users approve your contract first. watch out for tokens with transfer fees or weird mechanics that could mess with your pricing though.