Skip to content
Solana
ADVISORYIn the programBit 20

Swap Reward Mint

Pays traders a reward token for each swap, funded by a slice of the trade.

Where it runs

Advisory

The pool's single add-on slot: one per pool.

Status on reel

In the program

In the reel program: bit 20 of PoolParams.blocks, frozen at PoolInit (PROGRAM.md §5).

Set by

You, at launch

Frozen in PoolParams at PoolInit; nobody can change it after.

What it does

Each charged swap pays a slice of its quote for its side; the same swap mints a reward token to the trader at a set rate, capped per swap and in total, for a set time. The slice goes to the creator after the protocol's share.

How it works on reel

Charged swaps pay reward_pips[side], protocol share first, the rest to REWARD_CREATOR for the payee. The same swap mints min(slice·rate/10⁹, max_swap, cap − minted) of the adv[0] mint, whose mint authority must be the pool's own PDA ["reward", pool] (checked at PoolInit, so no other pool can mint it), to the trader, only if the trader receives the output. No slice once the reward is 0, after reward_ends, or on exact-out sells.

Named at launch: adv[0] reward mint (authority: the pool's reward PDA) · payee

Settings · 6

SettingMinDefaultMaxWhat it does
Buy slice
reward_pips[0]
0%1%5%Of each buy's quote, on top of pool fees. reel's share first; the rest goes to the payee.At least one side above 0.
Sell slice
reward_pips[1]
0%1%5%Of each sell's quote, on top of pool fees. reel's share first; the rest goes to the payee.At least one side above 0.
Reward rate
reward_rate
11,000,000,0001,000,000,000,000,000,000Reward atoms minted per 10⁹ quote atoms of slice. 10⁹ is one for one.
Most per swap
reward_max_swap
1 atomsAt launch—Reward atoms one swap can mint. Named at launch.
Total reward
reward_cap
0 (off)At launchSee ruleReward atoms that can ever be minted; after that the slice stops. Named at launch.At least the most per swap.
Runs for
reward_run_secs
0 s0 s4,294,967,295 s (49710d 6h)From open; after it the slice stops. 0 = until the total is minted.

Fees and who's paid

Paid to

The payee, after reel's share; traders get the minted reward token.

Protocol share

reel's protocol share s (20–50%, fixed at launch) comes off each charge first.

Requires and can't be combined with

Worked example

A 1% buy slice at rate 10⁹: a 1 SOL buy pays 0.01 SOL (0.002 reel, 0.008 the payee) and mints 0.01 of a 9-decimal reward token to the buyer.

Solana notes

The reward mint's authority is the pool's own reward PDA, so minting happens in the swap; hookr mints later, in a settle call. The slice takes the pool's protocol share (20–50%), as hookr's fee table does.

On hookr: Advisory · Live

Other blocks in Rewards