- Number of Winners: How many winners will be drawn? (Usually
1). Multi-winner distributions may require special handling. - Raffle Metadata (Name, Desc, Image): You’ll provide the essential details for display:
- Name: The title of your raffle (e.g., “Polly Founders NFT Giveaway”).
- Description: Text explaining the raffle, the prize, and any special rules.
- Image URL: A link to the banner or prize image.
- Public Listing: Should this raffle appear on the main PollyPrize list page? (You can create unlisted raffles accessible only via direct link).
- (These are bundled into a
raffleURIdata string for the contract).
- Ticket Price Unit: What currency will the ticket price be shown in?
- A Token: e.g., $USDC, $POLLY, or your project’s own token. You’ll need to provide the token’s contract address.
- PP Points: Use PollyPrize’s loyalty points as the price.
- Free: No cost, relies on
Free Entry Ticketssetting below.
- Price Per Ticket: The actual cost for one ticket in the chosen unit (e.g., “5.0” if priced in USDC, “1000” if priced in PP).
- Accepted Payment Token: Which single ERC20 token can users pay with besides ETH?
- Often set to your project’s token if you want payment in that token.
- Can be $POLLY, $USDC, or another agreed-upon token.
- Set to ‘None’ if you only want to allow ETH payments (if priced in a token) and/or PP/Free entries.
- Free Entry Tickets: If this is a free promotional raffle, how many tickets does each eligible user receive? (e.g.,
1). Set to0for purely paid/PP raffles.Hybrid raffles are possible: Set aFree Entry Ticketcount AND aTicket Price(in Token or PP). Eligible users can claim their free ticket once, then buy additional tickets.
- Token to Burn: Which token’s supply should be reduced using the raffle proceeds? This can be $POLLY or your project’s token. You must provide the address of the token contract to be burned. (Burning USDC is generally not supported/useful).
- Platform Fee: PollyPrize applies a small percentage fee on entries paid with ETH or the Accepted Token to support the platform. This rate is agreed upon during setup. The fee is deducted before the remaining amount is used for burning the designated
Token to Burn.
- Start Time: When can users begin entering the raffle? (Set as a specific date/time).
- End Time: When does the entry period close?
- Set a specific date/time.
- Set to
0(no specific end date) ONLY if you set a Maximum Total Tickets limit.
- Minimum Tickets Sold (Soft Cap): If you set an End Time, do you want a minimum number of tickets to be sold before a winner can be drawn after that End Time? If the minimum isn’t met by the End Time, the raffle stays open longer. Set to
0for no minimum. - Maximum Total Tickets (Hard Cap): Is there a limit on the total number of tickets available? If yes, the raffle ends immediately when this limit is reached. Set to
0for no total limit (raffle ends based on End Time). - Max Tickets Per Wallet: Is there a limit on how many tickets one person can buy? Set to
0for unlimited per person (up to the Hard Cap).
- Do you want to restrict who can enter? Choose one option:
- None: Open to everyone.
- Token Holding (ERC20): Require users to hold a minimum amount of a specific token (yours, $POLLY, etc.). Provide token address and minimum amount.
- NFT Holding (ERC721): Require users to hold a minimum number of NFTs from a specific collection. Provide collection address and minimum count.
- PP Balance: Require users to have a minimum PollyPrize PP balance.
- VIP Status: Restrict entry to users holding specific PollyPrize VIP tiers (e.g., Silver+).
- Allowlist/Snapshot (Merkle Proof): Provide a cryptographic root (Merkle Root) representing a list of allowed wallet addresses (e.g., snapshot of L1 holders, top community members). Users on the list can generate a proof to enter. Supports delegated wallets (AGW).
- Prize Type: Is the prize an
NFT, anERC20 Token, orNone(handled off-chain)? - Prize Asset Address: If NFT or Token, provide the contract address of the prize asset.
- Prize Details:
- For NFT: Provide the specific
Token ID. - For Token: Provide the total
Amountto be awarded (in the token’s base units - work with the team to get this right based on decimals).
- For NFT: Provide the specific
- Prize Custody: For automatic on-chain distribution (single-winner raffles), the prize asset must be transferred to the PollyPrize contract address before the raffle is resolved.
- Batch Bonuses: Offer bonus tickets for larger purchases (e.g., “Buy 10 tickets, get 1 free”). You can define up to two tiers (e.g., Tier 1: 5% bonus for 50+ tickets, Tier 2: 10% bonus for 200+ tickets).
- Custom PP Rate: Optionally override the default PP awarded per ticket received for this specific raffle.
