All Features
Membership smart contracts
Deploy membership smart contracts
Custom contract name
Custom ticker symbol for membership tokens
Upgradable smart contracts
Updatable smart contracts
Programmable smart contracts
Membership management
Time-based memberships
Customizable membership duration (1sec to 10000+ yrs)
Non-expiring memberships
Set membership price & currency (ERC20)
Set membership quantity
Set membership duration
Free memberships
Claimable memberships
Cancel memberships
Extend memberships
Membership renewals
Member lists
Membership status indicator (valid, expired)
Renew memberships for others
Automated membership renewals
Set maximum memberships per holder
Subscriptions
Recurring subscriptions onchain
Pay for subscriptions via credit cards
Pay for subscriptions via stablecoins, native tokens, or ERC-20 tokens
Airdrops
Airdrop NFT
Airdrop NFTs in bulk
Airdrop to email
Wallet-less onboarding
Walletless airdrop
Email / password support for login
Password reset
Credit cards
Credit card payments
Stripe integration
Cryptocurrency support
Cryptocurrency payments
Base currency support including ETH, MATIC, etc.
Custom ERC-20 currency support
Wallet support
Support for multiple wallets including Metamask, Rainbow, Coinbase Wallet, etc.
WalletConnect support
Apple Wallet and Google Wallet support
NFT support
NFT minting
Image customization
Token URI customization
Metadata customization
ERC-721 support
Set NFT image contract-wide
Set NFT image per token
Dynamic NFT support
NFT video images
Custom metadata properties
Custom metadata levels
Custom metadata stats
NFTs visible on OpenSea, Blur, and other marketplaces
Receive NFT via email
NFT lending
NFT sharing
“Bring Your Own NFT” support for ERC-20
“Bring Your Own NFT” support for ERC-1155
Transfers
Transferable NFTs
Enable or disable transfers
Soul bound tokens
Non-transferable (”soul bound”) NFTs
Email support
Email reply-to customization
Email sender customization
Send email to members
Customizable checkout flows
Customizable look-and-feel
Custom logo on checkout
Collect email address on purchase
Password-protected checkout
Captcha-protected checkout
Checkout flow previews
Allowlists (via Guild hook)
Events and Ticketing
Event RSVPs and registration
Event ticketing
Event check-in & verification
Event “sold out” indicator
Event ticketing time
Event ticketing location
Event ticketing timezone
Event ticketing previews
Receive ticket via email
QR code tickets and registrations
Certifications and Credentials
Onchain certificates & credentials
Certificate purchase email customization
Certificate airdrop email customization
Certification issuer name support
Referrer, affiliate, and platform monetization
Set referrer fees
Set affiliate fees
Set platform fees
Onchain Hooks
Key purchase hook
Key cancel hook
Valid key hook
Token URI hook
Key transfer hook
Key extend hook
Key grant hook
Access control
Role-based access controls
Receipts
Purchase receipts
Frameworks and integration support
web3js
ethers
Hardhat
npm package
React integration
JavaScript integration
Sign In With Ethereum
Sign In With Ethereum support
Technical features
Full API
Webhooks support
Subgraph integration
Websub support
Open source protocol
3x audited smart contracts
Token gating integration
Optimistic and pessimistic unlocking
Front-end access control (token gating)
Back-end access control (token gating)
Learning and support resources
Video tutorials
Extensive implementation guides and documentation
Responsive and supportive community