How it works
Approved integrators can charge their own fee on top of Rialto’s on every swap they route. The fee is collected as part of the swap and paid to your wallet in the same onchain transaction. There is no separate claim step, no fee contract to deploy, and no settlement to run yourself.- You request a quote with a swap_fee_bps value, your fee in basis points.
- Rialto adds your fee on top of its own and returns the full breakdown.
- The same quote includes one executable transaction that, on execution, pays both Rialto’s treasury and your wallet atomically.
- The taker signs or approves as needed, then submits the quote’s tx directly or signs Permit2 for gasless relay.
What is bound to your key
| Bound to your key | Meaning |
|---|---|
| Payout wallet | The address your fees are sent to. |
| Maximum fee in bps | A per-key cap, the largest swap_fee_bps you may set. |
| Integrator id | An identifier used to attribute the swaps you route. |
Setting your fee
Add swap_fee_bps to the standard quote request. Your payout wallet and cap come from your key, so you do not pass them on the request.| Param | Description |
|---|---|
| swap_fee_bps | Your fee in basis points, applied on top of Rialto’s fee. 30 = 0.30%. swapFeeBps is also accepted. |
Reading the fee in the response
A quote with an integrator fee gains two things: an integrator_fee block echoing your fee, payout wallet, and integrator id; and extra entries in platform_fee.fees, one line per recipient, each showing the token the fee is taken in and the exact amount. Rialto selects the most suitable fee token in the swap automatically, so you do not choose a fee token.Caps and rules
| Rule | Behavior |
|---|---|
| Fee above your key’s cap | swap_fee_bps greater than your configured maximum is rejected with 400. |
| Combined fee too high | Rialto’s fee plus your fee must not exceed the protocol maximum, currently 100 bps total. Over the limit is rejected with 400. |
| Non-integrator key | A key without integrator access that sends swap_fee_bps is rejected with 403. |
| No fee requested | Omit swap_fee_bps or send 0 for a standard swap with no integrator fee. |
