For the complete documentation index, see llms.txt. This page is also available as Markdown.

Programmable Fees

A NorthStar session opens with a FeeStructure parameter that decides three things: which token pays for activity inside the session, how much each instruction costs, and what share of that revenue flows to the operator versus the protocol.

That's the whole concept. The default is gasless on devnet (zero_fee_structure()); production grids set their own.

The three knobs

Knob
What it controls

Fee token

Any SPL mint — SOL, USDC, an operator's own token, or none.

Fee schedule

Per-instruction lamports / token units. Can be uniform, per-instruction, or identically zero.

Revenue split

Basis points of fee revenue that flow to the session operator (vs. the protocol).

Operators commit to the structure at OpenSession time; it can't change mid-session. Closing and reopening with a new structure is the supported path.

Why per-session economics

A persistent L1 imposes one fee market on every workload. A per-session market localises the externality:

  • A market-data feed publishing 10 quotes per second can charge sub-millicent per quote in its own token.

  • A privacy-grade RFQ venue can charge premium fees for sealed-bid execution.

  • An agent sandbox can run gasless to remove user-side friction.

None of these economics are achievable on a shared L1.

Operators capture revenue

The same primitive that lets an operator set the fee schedule lets a wallet, aggregator, or super-app open grids on behalf of users and capture a share of every transaction in those grids. New revenue stream for incumbent integrators; no validator infrastructure required.

See also

Last updated