- Unlock Tutorial: What is an NFT?
- Have a crypto wallet. Need help? See this Unlock Tutorial: What is a crypto wallet?
- Account with Piñata.cloud (paid Professional plan)
- Unlock Tutorial: How to choose the blockchain that’s right for your project. (coming soon…)
In this guide, you’ll learn:
- What the letters in “POAP” (pronounced pō’-ap) stand for and what the term “POAP” means.
- How to create a POAP, customize its art, and distribute it to members of your community.
- How to instruct your community members to access their POAP.
At the end of this guide, you will have the knowledge and tools to create a new POAP NFT and airdrop it to your community members’ crypto wallets.
What is a POAP?
“POAP” stands for Proof of Attendance Protocol.
A POAP is a type of Non-Fungible Token (NFT) and is used as a mechanism to prove that the person holding the NFT attended a specific community event or participated in a community in some other way at a particular time and/or place.
You may have heard of a web3 project called POAP.xyz — this is where most folks go to create and distribute POAPs for their communities. POAP.xyz is an awesome service; but that’s not exactly what we’re doing in this Guide…
In this Guide, we’re sharing a way to create NFTs that, for all intents and purposes, act and serve as POAPs; but because they are minted as ERC721 tokens and not from the POAP smart contract, they aren’t technically POAPs by definition.
If you’re ok with those technicalities, this Guide is for you! We’ve written it from the perspective of a community manager who want to reward members for their participation with a collectible piece of digital art that lives on the blockchain and can be accessed from a member’s crypto wallet.
If you’d prefer to the “real deal” POAP, you may want to ask POAP.xyz to create and distribute POAPs for you.
The primary advantage of doing “POAPs” yourself with Unlock is timeliness. POAPs are rising in popularity and in high demand from POAP.xyz, often resulting in long wait times between request and distribution. You could think of doing POAPs with Unlock is a truer to the ethos of decentralization while still achieving our goal: to celebrate and reward community members for their presence and participation.
To honor the distinction between POAPs and Unlock NFTs as POAPs, we’ll use “POAP-like” or “POAP” (in quotes) when referring to the assets we’re creating in this guide.
Now that we’ve covered the fine print, let’s jump into the fun stuff — creating!
How to create a POAP-like NFT with Unlock?
- Go to the Unlock Dashboard at https://app.unlock-protocol.com
Or, if you’re on the Unlock website at https://unlock-protocol.com, click “Dashboard” in the upper right corner.
- Connect your wallet (the wallet you intend be the Lock manager)
You’ll need to pay* transaction fees on the network where you’ll deploy your Lock, so make sure you have enough of the cryptocurrency associated with your chosen blockchain/network in your wallet.*If you’re in testing mode (before production), you can use the Rinkeby test network and use a Rinkeby faucet like this one to deposit “play money” into your wallet.
- Click the “Create a Lock” button on the Unlock Dashboard
- Configure your Lock
Give it a name/title
eg, Earth Day 2022 POAP
- Set your Key Duration
in my example, we’ll use infinity, because the utility of this token will be unique to attending this event and is intended to last as long as the holder remains a member of the community
- Set the Key Quantity
in my example, we had 20 people at the event, so I’m going to create 20 Keys
- Set the Price
since we are going to airdrop this NFT/Key as a free POAP, we set the price to 0 MATIC
- Click “Submit” to save and create the Lock
- Configure your Lock
When you’re done, you should see something like this:
How to customize the image of your "POAP"
If your artwork is under 1MB file size, you can simply upload it from you computer.
- In your Unlock Dashboard, click the default Unlock logo image to the left of your POAP. Note: before this step, ensure the lock has been fully created. You’ll know it’s been fully created when the Unlock Dashboard shows a version number next to the network name (e.g. “v10 Polygon”) — if it only says “v Polygon” without a version number, then lock creation is still in progress.
- From the pop-up window, select the image from your device (computer) to upload and replace the default image
- Click Save
- You’re done! When you return to your Dashboard, the new image should show up. If it doesn’t, try refreshing your browser window and/or giving it a minute.
If your artwork is larger than 1MB file size, you’ll need to host your image in the cloud. In this guide, we’ll use a cloud service called Piñata.
Create Piñata account and upload your file
- Go to Pinata.cloud and create a free account.
- Upload your custom art image to your Piñata account
Create IPFS gateway
Piñata’s Professional Plan is required to create a Gateway:
- Click “Gateway” in top nav bar in your Piñata account
- You’ll notice big words that say “Piñata Gateways are only available on the Professional Plan”
- Click the “Upgrade Today!” button
- Complete the upgrade process
- Create a Gateway to IPFS : Follow these Docs from Pinata’s website on “How To Set Up A Dedicated IPFS Gateway”
Copy the link to your file
- In your Piñata account, click on “Files” in the top nav bar.
- Click “More” to the right of your the file you’re going to use for your NFT
- Click “Share” (see screenshot below)
- When your link appears in a modal window, click on the link to copy it to your clipboard. (see screenshot below)
How to customize your NFT image
- Back in your Unlock Dashboard, click the Unlock logo image to the left of your POAP/NFT
- In the “Customize the NFT” modal window, paste the link that you copied from your file in Pinata in the field labeled “or, Enter a URL”
- Click “Save”
How to Distribute (airdrop) “POAPs” to your members’ crypto wallets
“Airdrop” refers to the act of sending (or “dropping”) an NFT into another person’s crypto wallet. Due to the nature of the blockchain, anyone can airdrop an NFT to any public address on a blockchain without the approval of the wallet owner (similar to how we can send an email to any email address; except there are no spam filters on the public blockchains).
As you can imagine, an airdrop of a special NFT offers a fun way to “surprise and delight” community members.
Now that we understand “airdrops”, let’s make one happen.
- In your Unlock Dashboard, click the “Members” icon (looks like two little people)
- When prompted by your crypto wallet to “Sign”, sign the transaction
- Click “Airdrop keys” (button)
- Paste the first recipient’s wallet address in the “Recipient” field
- Click “Add Recipient” button below
- You can grant the key by clicking the “Grant 1 Key” button below. Or, if you have additional recipients (which is typical for POAPs), you can enter additional addresses before granting all of them at once.
How to instruct your members to view their POAP via Unlock dashboard
- Go to the Unlock Dashboard on the web at https://app.unlock-protocol.com/
- Connect your wallet
- Select “Polygon” in the dropdown menu where you select your blockchain network (it will be set to “Ethereum” by default)
- Click the Key 🔑 icon at the top (it will say “Keychain” when you hover your mouse over it)
- Voilà, there’s your POAP! 🎉
View a POAP via OpenSea
How to Unhide your POAP on OpenSea
- Click “Unhide” from the pop-up menu options
- Click the “Unhide” button in the bottom right-hand corner
- Now you can go back to your “Collected” tab, and your POAP will show up there on your public OpenSea profile and NFT collection.
- From the “Hidden” tab, click on the three dots in the bottom left-hand corner of your POAP.
When viewing your NFT / POAP on OpenSea, you’ll notice that some of the metadata is set to the default values (eg, the name of the NFT will read “Unlock Key”)
You can customize how your NFT / POAP shows up on OpenSea, too — it’s a slightly more technical process and involves writing and running code, but you can do it! And one of our awesome community members, Croissant.eth, wrote this tutorial to show you how…