The Transfer module in Neutron is an enhanced wrapper around the standard IBC Transfer module that facilitates token transfers between IBC-connected blockchains. It extends the core functionality with contract detection and callback features to improve interchain token transfer reliability for smart contracts.
Neutron supports relaying transfer packets through itself using memo-based packet forwarding middleware. This enables multi-hop transfers where Neutron acts as an intermediary chain.Example memo format for packet forwarding:
Packet forwarding is implemented as middleware in the IBC stack. The exact implementation details may be provided by external packet forwarding middleware integrated with Neutron’s IBC setup.
IBC Hooks allow you to call smart contracts on Neutron by sending IBC transfers to the chain with properly formatted memo fields. This enables cross-chain contract execution triggered by token transfers.Example memo format for contract calls:
When using IBC Hooks, the transferred tokens are sent to the specified contract address, and the contract’s entry point is called with the provided message.