Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

IERC777Recipient

Interface of the ERC-777 Tokens Recipient standard as defined in the ERC. Accounts can be notified of {IERC777} tokens being sent to them by having a contract implement this interface (contract holders can be their own implementer) and registering it on the https://eips.ethereum.org/EIPS/eip-1820[ERC-1820 global registry]. See {IERC1820Registry} and {IERC1820Implementer}.

Functions

tokensReceived

Called by an {IERC777} token contract whenever tokens are being moved or created into a registered account (to). The type of operation is conveyed by from being the zero address or not. This call occurs after the token contract's state is updated, so {IERC777-balanceOf}, etc., can be used to query the post-operation state. This function may revert to prevent the operation from being executed.

function tokensReceived(
    address operator,
    address from,
    address to,
    uint256 amount,
    bytes calldata userData,
    bytes calldata operatorData
) external;