Skip to main content
This reference is generated from the protocol ABI at 1c90c5e. It documents protocol events; ERC-20 token transfer events are a separate stream.

Event processing rules

Use the generated ABI to decode logs. Preserve chain ID, contract address, transaction hash, log index, block number, block hash, and block timestamp. Process canonical ordering and handle removed/reorganized history; a log seen once is not a permanent settlement fact. Several events can describe one action. A purchase emits its acceptance and allocation reservations; finalization emits vesting events as well as the sale result. Do not add those events as separate sales or count both reservations and vesting as new earnings. See indexing, data model, and vault accounting.

CampaignCreated

Establishes the campaign, merchant, product commitment, price, token, and initial policy hash. Creation is not activation.

CampaignFunded

Adds received tokens to the separate reward budget. The funder is not necessarily the campaign merchant.

CampaignStatusChanged

Records active, paused, and ended flags. Time-based expiry still needs evaluation against the applicable policy.

MerchantProceedsClaimed

Records the merchant withdrawing claimable product proceeds for a campaign.

NativePurchaseAccepted

Records a purchase, accepted policy, price, reserved reward, and unlock time. Finalization is a later event.

NodeCreated

Records an immutable parent edge and node owner inside a campaign. This is attribution, not a commission payment.

PolicyVersionRegistered

Records the terms and effective time of a policy version. A scheduled version is not effective merely because the event exists.

RewardClaimed

Records a recipient withdrawing reward balance from a campaign. One token-wide claim can emit multiple campaign events.

RewardReserved

Records one pending allocation. A reservation is not yet claimable.

RewardVested

Records an individual allocation becoming claimable as part of finalization.

SaleFinalized

Moves merchant proceeds and rewards to claimable liabilities after the hold. This does not itself transfer all beneficiaries their funds.

SaleRefunded

Returns the buyer payment and releases the reserved reward before unlock. This is terminal for the sale.

SurplusReturned

Records unused available rewards returned to the merchant under the lifecycle restrictions.