Docs/Reference/Events

Events

The public lifecycle events that describe program creation, issuance, redemption, transfers, metadata, and admin actions.

Reward events#

Reward events describe the public lifecycle of every program.

Public event signaturessolidity
event LoyaltyProgramCreated(address indexed factory, address indexed issuer, bytes32 indexed loyaltyId, address loyalty, string name, string symbol, string media, string description, string contractURI, string tokenURI);
event PointsIssued(address indexed factory, address indexed issuer, bytes32 indexed loyaltyId, address loyalty, address to, uint256 tokenId, uint256 amount, bytes32 nonce, bytes32 operationHash, bytes data);
event PointsRedeemed(address indexed factory, address indexed issuer, bytes32 indexed loyaltyId, address loyalty, address from, uint256 tokenId, uint256 amount, bytes32 nonce, bytes32 operationHash, bytes data);
event LoyaltyTransfer(address indexed loyalty, address indexed operator, address indexed from, address to, uint256 tokenId, uint256 amount);
event LoyaltyBatchTransfer(address indexed loyalty, address indexed operator, address indexed from, address to, uint256[] tokenIds, uint256[] amounts);
event LoyaltyMetadataUpdated(address indexed loyalty, uint256 indexed tokenId, string tokenURI, string contractURI);
event LoyaltyAdminOperation(address indexed loyalty, address indexed owner, bytes32 indexed action, bytes32 nonce);
event AdminOperationExecuted(address indexed owner, bytes32 indexed action, bytes32 indexed nonce);
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
event AdminEpochUpdated(uint256 adminEpoch);
event RoyaltyBpsUpdated(uint96 royaltyBps);
event RoyaltyReceiverUpdated(address indexed receiver);
event RoyaltiesWithdrawn(address indexed issuerReceiver, address indexed protocolReceiver, uint256 issuerAmount, uint256 protocolAmount);
event RoyaltyWithdrawalFailed(address indexed receiver, uint256 amount);
event IssuableUpdated(bool issuable);
event RedeemableUpdated(bool redeemable);
event TransferableUpdated(bool transferable);

Program events#

EventMeaning
LoyaltyProgramCreatedA brand program became available at its deterministic program address.
PointsIssuedA signed issuance tokenized loyalty value into a customer wallet.
PointsRedeemedA signed redemption burned tokenized loyalty value from a customer wallet.
LoyaltyTransferA customer balance moved between wallets while transfers were open.

Indexing#

Public product surfaces use these events to populate token pages, activity tables, relayer opportunities, and metadata refresh state.