ERC223 Token Standard
It is supposed to replace wETH
The main goals of developing the ERC223 token standard were:
"Accidentally lost tokens inside contracts: there are two different ways to transfer ERC20 tokens depending on is the receiver address a contract or a wallet address. You should call
transfer
to send tokens to a wallet address or callapprove
on token contract and thentransferFrom
on the receiver contract to send tokens to the contract. Accidentally, a call oftransfer
function to a contract address will cause a loss of tokens inside the receiver contract.Inability of handling incoming token transactions: ERC20 token transaction is a call of
transfer
function inside token contract. ERC20 token contract is not notifying receiver that transaction occurs. Also there is no way to handle incoming token transactions on contract and no way to reject any non-supported tokens.ERC20 token transaction between wallet address and the contract is a couple of two different transactions in fact: You should call
approve
on token contract and then calltransferFrom
on another contract when you want to deposit your tokens into it.Ether transactions and token transactions behave differently: one of the goals of developing ERC223 was to make token transactions similar to Ether transactions to avoid users mistakes when transferring tokens and make interaction with token transactions easier for contract developers." - ERC Author
wETH Simple explanation
Ethereum (ETH) is not [[ERC20]] compatible standard
In order for ETH to be tradable for other tokens (ERC720) it needs to be wrapped into wETH form
" When you "wrap" ETH, you aren't really wrapping so much as trading via a smart contract for an equal token called wETH. If you want to get plain ETH back, you need to "unwrap" it. AKA trade it back for plain ETH."
Source: https://weth.io/
Further reading
Full implementation: https://github.com/Dexaran/ERC223-token-standard
Implementation is ready to be implemented: https://github.com/Dexaran/ERC223Token
Last updated