The addresses of all Toucan contracts deployed across all mainnet and testnet networks can be found here.
We use custom error codes (not to be confused with Solidity custom errors) in our pool contracts to keep the size of the contracts as small as possible.
Below you can find the existing error codes and a description for each one.
User is not authorized
Empty array provided as input
Pool is full of TCO2s
ERC20 is blacklisted in the pool. This error is returned for TCO2s that have been blacklisted like the HFC-23 project
ERC20 is not whitelisted in the pool. This error is returned in case the ERC20 is not a TCO2 in which case it has to be manually whitelisted in order to be allowed in the pool
Vintage start time of a TCO2 is too old
Region is not accepted in the pool
Standard is not accepted in the pool
Methodology is not accepted in the pool
Provided fee is invalid, not in a basis points format: [0,10000)
Provided address needs to be non-zero
Validation check to ensure array lengths match
TCO2 not exempted from redeem fees
The pool is paused
Redemption transaction has leftover unredeemed value. All value needs to be redeemed in order for the transaction to be successfull
Redemption exceeds deposited TCO2 supply
User must be a router
User must be the pool owner
Zero destination address is invalid for pool token transfers
Self destination address is invalid for pool token transfers