Happy Birthday Example
Birthday-Specific Features
State Variables
/// @notice USDC token contract
IERC20 public immutable usdc;
/// @notice Default: 50 USDC (6 decimals)
uint256 public claimableAmount = 50e6;
/// @notice Bonus multiplier for EU ID card users (in basis points)
uint256 public euidBonusMultiplier = 200; // 200% = 2x bonus
/// @notice Bonus multiplier for E-Passport users (in basis points)
uint256 public passportBonusMultiplier = 150; // 150% = 1.5x bonus
/// @notice Birthday claim window (default: 1 day)
uint256 public claimableWindow = 1 days;
/// @notice Tracks users who have claimed to prevent double claims
mapping(uint256 nullifier => bool hasClaimed) public hasClaimed;
/// @notice Verification config ID for identity verification
bytes32 public verificationConfigId;
uint256 public constant BASIS_POINTS = 10000;Birthday Verification Logic
V2 Simplified Birthday Verification
Document Type Bonuses
Administrative Functions
Birthday Contract Benefits
Configuration Management
Example Usage
Last updated