Skip to main content

Overview

ElataPoints is a non-transferable (soulbound) token that tracks user participation and reputation within the Elata ecosystem. Points are minted by authorized protocol contracts based on user activity.

Key Functions

Read

FunctionReturnsDescription
balanceOf(address account)uint256User’s point balance
totalSupply()uint256Total points issued
hasMinPoints(address account, uint256 threshold)boolCheck if user meets threshold

Write

FunctionAccessDescription
mint(address account, uint256 amount)Authorized mintersAward points to user
addMinter(address minter)GovernanceAuthorize a minting contract
removeMinter(address minter)GovernanceRevoke minting authorization

Point Sources

Points are minted by protocol contracts for:
ActivitySource Contract
App token purchasesAppBondingCurve
Staking ELTAVeELTA / StakeVault
Governance votingElataGovernor
App creationAppFactory

Soulbound Properties

  • Non-transferable: transfer() and transferFrom() are disabled
  • Non-approvable: approve() is disabled
  • Permanent: Points cannot be burned or revoked
  • Composable: Other contracts can gate features behind point thresholds

Events

EventEmitted When
PointsMinted(address account, uint256 amount, address minter)Points awarded
MinterAdded(address minter)New minter authorized
MinterRemoved(address minter)Minter revoked