Skip to main content

ERC1155 Signature Mint

The ERC1155SignatureMint smart contract uses the ERC1155Base base contract along with the SignatureMintERC1155 contract extension.

The 'signature minting' mechanism in the SignatureMintERC1155 extension uses EIP 712, and is a way for a contract admin to authorize an external party's request to mint tokens on the admin's contract.

At a high level, this means you can authorize some external party to mint tokens on your contract, and specify what exactly will be minted by that external party.

Import

import "@thirdweb-dev/contracts/base/ERC1155SignatureMint.sol";

Available functionality

FunctionalityDescription
ERC1155BaseSee the portal page for ERC1155Base.
Primary SaleAccept a price in the currency of your choice from wallets minting your collection’s NFTs.
Signature MintingAuthorize some external party to mint tokens on your contract, and specify what exactly will be minted by that external party.

Implementing the Contract

Import the contract extension and make your contract inherit it.

// SPDX-License-Identifier: Apache-2.0
pragma solidity ^0.8.0;

import "@thirdweb-dev/contracts/base/ERC1155SignatureMint.sol";

contract MyNFT is ERC1155SignatureMint {
constructor(
string memory _name,
string memory _symbol,
address _royaltyRecipient,
uint128 _royaltyBps,
address _primarySaleRecipient
)
ERC1155SignatureMint(
_name,
_symbol,
_royaltyRecipient,
_royaltyBps,
_primarySaleRecipient
)
{}
}

Unlocked Features

Once deployed, you'll be able to access the following contract extensions' features on the SDK and dashboard: