For Marketplaces with Custom Contracts

Use case

If you are a marketplace who have their own marketplace contract and are looking to enable your users to buy NFTs directly with fiat on your marketplace, Transak NFT checkout can provide a seamless experience to your users.

We are currently live with Decentraland and Immutable marketplace and you can experience the NFT Checkout flow for yourself.

Flow under the hood

  1. You pass the details to Transak to fulfil the transaction through query parameters. (Full list of query parameters for Marketplaces can be found here)
  2. User clicks on "Buy with Fiat" on your platform
  3. Transak collects the fiat from the user
  4. Then Transak simply executes your marketplace smart contract based on the calldata you sent in the query parameter and sends the NFT to the user's wallet.

Blockchains supported

We can support all EVM compatible chains and any other chain on request for Custom Marketplace contract implementation.

Currently out of the box supported EVM blockchains:

  • Arbitrum
  • Binance smart chain
  • Ethereum
  • Immutable Zk-EVM
  • Polygon
  • Optimism

If you need support for any other blockchain, contact us at [email protected]

Prerequisites from Partnerโ€™s Marketplace smart contract?

We support all types of custom marketplace smart contracts (marketplace contracts that enable trading of NFTs) for both primary and secondary sales of ERC-721 and ERC-1155 on major NFT chains.

We do not have any prerequisite like your function needs to accept recipient's wallet address.

Even if your smart contract function doesnโ€™t accept buyer's wallet address as a parameter weโ€™ll be able to deliver NFT to the user.

So no matter what type of custom smrt contract you have - you can use Transak's NFT Checkout solution to allow your users to buy NFTs with fiat.

The only requirement we have is that the smart contract of the NFT collection being sold should be ERC-721, ERC-721A and ERC-1155 compliant. Email to us at [email protected] if you have a custom requirement.

Note: it is preferable that your custom contract is verified on the respective blockchain scanner like Etherscan, Polygonscan, etc.

Transak smart contract addresses

While generating calldata, if your function accepts user's wallet address as a parameter you need to use Transak's wallet address as the value for that parameter as NFT first comes to our contract and then it's send to the user.

Transak's smart contract addresses: