Working with Whitelists

How to correctly handle whitelists

Why Whitelist?

Whitelists can be a very useful feature for your project, they allow your community to earn this as a reward and can reduce the stress of minting for those that are on the list. Demand for Whitelist places can give a good idea of the overall demand for your project and may increase the likelihood of those on the list minting.
The following process is the best practise for handling Whitelists and involves creating a second, identical project that contains the number of NFTs you plan to be minted by the Whitelist ONLY. This is most necessary if you want to have your Whitelist mint date and the public mint date on the same day.

Duplicate your Project

Our first goal is to create a Second Identical Project (this will hold the fraction of the total supply you plan to allocate to whitelist buyers). Keeping this separate allows you the most control over the minting and ensures the best experience for your community. To do this, navigate to your main project.

Export Policy Keys

Step 1 - Select 'Show Policy'
Next, we want to export the PolicyID information, so that we can copy it into our WhiteList Project.
Note - NEVER share your policy keys ANYWHERE
Step 2 - Select 'Export Policy Keys'
You should then find a ZIP file in your downloads, extract and you will find it contains 4 files as shown below (with your Project Name as the prefix):
Step 3 - Check all 4 files are there, keep this folder open

Import Policy Keys

Next, create a new project and fill in the details, make it identical to the original, but note that this is the WhiteList project. Navigate to the Policy ID details section and select Existing Policy.
Step 4 - Select 'Existing Policy'
You now need to open those 4 files and copy paste the relevant data into the fields, matching how we have outlined above. To get to the information inside the files, open them with a simple text editor like TextEdit (Apple) or Notepad (Windows).
Step 5 - Open each file with a text editor
Step 6 - For all four of the attributes .policyid, .skey, .vkey and .script files, you can simply copy the entire file contents and paste this into the correct fields in the form.
Note - if you do this correctly, you will be able to move to the 'Next' screen, if not, you will see an error.

Metadata and Media

Complete the new project by copying the metadata format and other information from the original project.
STEP 7 - VERY IMPORTANT - you now need to ensure you upload the amount of NFTs to each project as per your desire - you MUST ensure that there are no duplicates across each project.
For example, if your project is a 10K PFP drop and you want 3000 wallets to be able to mint 1 NFT each, upload #1 - #7000 to the original and #7001 - #10000 to the Whitelist project.

Create the Whitelist

Finally, we now want to add the Whitelist to the Sale Conditions, ensure that your Whitelist is a txt file with each address on a new line as shown below:
Step 8 - Create the CSV file of Whitelisted addresses

Upload Whitelist File

Upload this into the Sale Conditions, confirm the number of entries aligns with what you have uploaded. To check this fully, use the 'Download Addresses' Feature.
Step 9 - Upload and check the results

1 NFT per Wallet

At this point in time, the Whitelist we uploaded limits who can mint the 3000 NFTs, but not how many each person can mint.

Set the Condition

To limit this to 1 per Whitelist - we can add another condition 'Buyer must have less than x of a NFT with a specific Policy ID'. Make sure to put the Policy ID of THIS PROJECT in the Policy ID field. Place 1 (or the number you want) in the Max/Min NFT field.
Step 10 - Limit how many each person can buy
Step 11 - Your Sale Conditions will then look similar to this

Restrict the Pricing

Finally, we now need to ensure we only have 1 purchase price available, set this up in the pricing menu.
Step 12 - Limit sale prices
You can see the idea here, we have now set up a system such that you can only mint 1 NFT if:
  • You are on the Whitelist
  • You don't already own one of the NFT
As there are no other price options, they are unable to 'attempt to beat the system' by ordering more than 1 on their first order. Once they make their first order of 1, any further attempts will fail.

Multiple Payment Gateways

Now that you have created the two projects, ensure that you set up two separate buttons that will launch the payment gateway associated with them.
  • One button should launch the Payment Gateway for the Public side of the Project
  • The other should launch the Payment Gateway for the Whitelist side of the Project

Embed the Gateway

Take extra care to ensure that your URL is correct for each of the two projects! (See highlighted)
For this final stage, make sure that you have embedded the correct URL for both of the two projects - see the full guide for the Payment Gateway here.
We would also recommend taking actions to very clearly outline the process to your community for both the public and Whitelist mints so that people know which of the two minting buttons they need to use.
With this in place, this gives your Whitelist plenty of time (as long as you want) for them to mint, meanwhile, the main public launch can use the other button without interfering. As the projects are separate, there is no incentive to spam-reserve the Whitelist because delaying it will never result in those NFTs become part of the mint.
NOTE - We have outlined the BEST PRACTISE, you may choose to simply apply the Sale Conditions on a single project (not doing the 2 project, 2 button approach). If this is the case, your only option is to have separate dates/times for the public/Whitelist mint, allowing the Whitelist to mint for a certain number of days/hours. After the time expires, you can remove the Whitelist Sale Condition and therefore anyone will be able to mint.