Parameters
| Parameter | Type | Description |
|---|---|---|
min_fee | Fee | Minimum required fees for IBC operations |
Fee Structure
recv_fee: Must be zero in Neutron (no receive fees)ack_fee: Fees paid for acknowledgement deliverytimeout_fee: Fees paid for timeout delivery
Messages
MsgUpdateParams
Update module parameters through governance. Authority Required: Governance only Fields:authority: Governance authority addressparams: New module parameters
Queries
QueryParams
Retrieve the current module parameters. CLI:neutrond query feerefunder params
REST: GET /neutron-org/neutron/feerefunder/params
Response:
params: Current Fee Refunder parameters including min_fee
QueryFeeInfo
Retrieve fee information for a specific IBC packet. CLI:neutrond query feerefunder fee-info [port_id] [channel_id] [sequence]
REST: GET /neutron-org/neutron/feerefunder/info
Parameters:
port_id: IBC port identifierchannel_id: IBC channel identifiersequence: Packet sequence number
fee_info: Fee information containing payer, packet_id, and fee details
Events
The module emits the following events:lock_fees: When fees are locked for a new IBC packetdistribute_ack_fee: When acknowledgement fees are distributed to relayersdistribute_timeout_fee: When timeout fees are distributed to relayers
Key Concepts
- Automatic Distribution: Fees are automatically distributed when packets are acknowledged or timeout
- Relayer Compensation: Ensures relayers are paid for successful packet delivery
- Fee Escrow: Fees are locked when packets are sent and released upon completion
- Query-Only for Users: Users can only query fee information and parameters
- IBC Integration: Automatically handles fee distribution for IBC packets