Skip to content
Adi Seredinschi edited this page Feb 16, 2023 · 3 revisions

ICS29 Fee Middleware

Topic

This session demonstrated a basic use of ICS29 relayer fees functionality in Hermes. ICS29 works in conjunction with ICS20 fungible-token transfer.

Specifically, we showed:

  • when a user submits a transaction to perform an ICS20 fungible token transfer, the user can specify three new types of fees:
    1. a receive fee
    2. an acknowledgment fee
    3. a timeout fee
  • in case of a successful relay of this transaction, then the relayer which fulfilled the packet receive step will be credited with the receive fee, and the relayer which fulfilled the acknowledgement step will get the acknowledgement fee;
    • in this case, the user gets reimbursed the timeout fee
  • in case of a timeout, the relayer which fulfils the timeout step will get the timeout fee
    • in this case, the user gets reimbursed the receive and the acknowledgment fees
  • we also looked at the available metrics that Hermes relayer exposes; the metrics are still work-in-progress, and are not yet documented in the guide

Commands and references:

The demo was performed using:

% hermes fee transfer --help
Perform a token transfer supported with a fee

USAGE:
    hermes fee transfer [OPTIONS] --dst-chain <DST_CHAIN_ID> --src-chain <SRC_CHAIN_ID> --src-port <SRC_PORT_ID> --src-channel <SRC_CHANNEL_ID> --amount <AMOUNT>

Excalidraw links

Zoom recording

15.02.23

https://us02web.zoom.us/rec/share/anSxjto46miPeuPsW1TxUIwdp3YFncMKcUAH5g1eEX8vQCoWZtgLackSpvO8_rO1.ZR_LTNw8FxFkCbpN

Please contact Luca Joss for the recording's password:

Related issues