Accesslist support is a premium feature. To get started, contact sales
Crossmint allows you to whitelist both wallet and email addresses. Once the team
has approved your request, you will need to provide the following information:
Your Crossmint clientId or collectionId for the collection.
The list of wallet and email addresses to be included in the accesslist.
If you whitelist users’ email addresses, Crossmint will create wallets associated with those email addresses and
provide them to you for inclusion in the accesslist. Users will then be able to authenticate during the purchase and
execute the transaction.
You can set up accesslists using Merkle Trees or inserting the list of whitelisted addresses directly on the smart contract:
The most straightforward method of whitelisting involves maintaining
a mapping of the whitelisted addresses within your smart contract.
This approach is faster but consumes more gas and savvy developers
may be able to determine the addresses of the accesslist.
Solidity
Copy
mapping(address => uint256) public whitelistMapping;
Solidity
Copy
function presale(address _to, uint256 _count) external payable { // ensure _to address has tokens left to mint require(whitelistMapping[_to] > 0, "no whitelist tokens for user"); // decrement mapping for user whitelistMapping[_to] -= _count; // presale minting logic here}
You can set up accesslists using Merkle Trees or inserting the list of whitelisted addresses directly on the smart contract:
The most straightforward method of whitelisting involves maintaining
a mapping of the whitelisted addresses within your smart contract.
This approach is faster but consumes more gas and savvy developers
may be able to determine the addresses of the accesslist.
Solidity
Copy
mapping(address => uint256) public whitelistMapping;
Solidity
Copy
function presale(address _to, uint256 _count) external payable { // ensure _to address has tokens left to mint require(whitelistMapping[_to] > 0, "no whitelist tokens for user"); // decrement mapping for user whitelistMapping[_to] -= _count; // presale minting logic here}
You can set up accesslists on your Candy Machine using Merkle Trees or SPL Tokens
Simply send the user IDs to Crossmint. Once you have the Merkle proof, you can pass it into the Crossmint Hosted Checkout lineItems.callData as a string, as in the example below:
Geofencing support is a premium feature only available to customers on a paid plan. To get started, contact
sales
Crossmint supports geofencing capabilities through our Customer Success Engineering (CSE) team. Our CSE team can work with you to block transactions from specific countries or geographic regions via Stripe rules.
To set up geofencing for your project, please contact our sales team to discuss your specific requirements and implementation details.