Main Application Integration
Robinhood wallet setup and cycle, referral, and certificate UI requirements
Main Application Integration
This Next.js repository is the documentation website. Older PHP paths and wallet functions described in previous drafts are main-application design references; their implementation is not present here. The supplied contract update defines the following integration requirements.
Wallet and network
Use Robinhood Chain for user transactions. Confirm eth_chainId matches the selected environment: mainnet 4663, testnet 46630. A Base wallet balance or Base Sepolia chain ID is not a substitute. Obtain RPC/explorer settings from the network reference, keeping environments separate.
Mint interface
- Read collection type, cycle state, next collectible position, and exact configured ETH price.
- Show nominal dollar labels separately from the required ETH transaction value.
- For positions 10, 100, 200, 300, and 400, send zero purchase value and show the wallet's network gas estimate.
- Submit
buyAndMint(lotteryType, tokenURI)using the verified FOSNFT ABI and address. - Wait for a successful receipt, then refresh NFT/collectible data. Handle next-position races by refreshing and asking the user to sign a new transaction.
- After collectible 500, display pending randomness/delivery until the cross-chain result and selection finalization are confirmed. Do not show a receipt as completed allocation settlement.
Referral interface
Display current plan prices and commission rates from the contract. Registration selects 2/5/10 and a valid direct referrer or zero address. Upgrade options are only higher plans. Read getUpgradeCost immediately before signing. Explain that the referrer's current plan sets the split, and upgrades retain the original referredBy.
Show direct payments separately from pendingWithdrawals. Referrers claim deferred ETH with claim(); admin withdraw() is a different permissioned operation. Refresh balances and plan status after confirmed receipts.
Certificate interface
Use Verify getStatus for current validity, getNftInfo for origin details, and ERC-721 ownership for the current holder. Do not call a revoked certificate active just because isOfficial is true. Show original recipient separately from current owner.
Leaderboard and campaigns
The retained scoring design is referral +1, Buddy +2, Samurai +4, Noble +6. Upgrade points, free-mint points, time-period ranking, and campaign snapshots require the final app/indexer policy; the supplied contract summary does not define all of them. referralCount and purchaseCount are evidence for indexing, not a complete specified leaderboard ABI.
Operational views
Show collection/cycle identifiers, Robinhood transaction hashes, pending randomness, Base VRF request correlation, CCIP delivery state, selected collectible IDs, attempted payments, and deferred claims. Filter logs by chain and contract version; validate server responses and never ask users for wallet private keys.