Error codes
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.
1
User is not authorized
2
Empty array provided as input
3
Pool is full of TCO2s
4
ERC20 is blacklisted in the pool. This error is returned for TCO2s that have been blacklisted like the HFC-23 project
5
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
6
Vintage start time of a TCO2 is too old
7
Region is not accepted in the pool
8
Standard is not accepted in the pool
9
Methodology is not accepted in the pool
10
Provided fee is invalid, not in a basis points format: [0,10000)
11
Provided address needs to be non-zero
12
Validation check to ensure array lengths match
13
TCO2 not exempted from redeem fees
14
The pool is paused
15
Redemption transaction has leftover unredeemed value. All value needs to be redeemed in order for the transaction to be successfull
16
Redemption exceeds deposited TCO2 supply
17
User must be a router
18
User must be the pool owner
19
Zero destination address is invalid for pool token transfers
20
Self destination address is invalid for pool token transfers
21
Zero amount provided as an input (eg., in redemptions) in invalid
22
ERC20 is not eligible to be pooled
23
Carbon registry is already supported in COB
24
The caller is not granted the VERIFIER_ROLE in COB
25
The caller does not own the provided batch
26
The caller is not a valid batch owner (not a TCO2 contract or verifier)
27
The batch is not in Confirmed status
28
The batch is not in a requested status (DetokenizationRequested or RetirementRequested)
29
The batch does not exist
30
The batch has an invalid status based on the action requested
31
The batch is missing an associated project vintage
32
The serial number in the batch is already approved
33
The batch is not in Pending status
34
The batch is already fractionalized
35
The batch is not in Rejected status
36
The project vintage is already set in the batch
37
The transfer is not approved
38
The COB contract is paused
39
The caller is invalid
40
The TCO2 for the batch is not found
41
The registry for the provided vintage is not supported
42
No TCO2 was minted as part of tokenization
43
Only mints are supported for the batch contract to receive an NFT
44
New batch status is invalid
45
The TCO2 batch amount has a mismatch
46
The TCO2 batch amount approval has failed
47
The TCO2 batch not confirmed
48
The TCO2 batch not whitelisted
49
The TCO2 is non matching NFT
50
The TCO2 Quantity in batch is higher than total vintages
51
The fee to be charged is too high
52
The max fee to be paid is invalid
53
The pool feature is not supported
54
The TCO2 decimals provided to retirement or detokenization requests are invalid
55
The TCO2 quantity in the batch is invalid
56
Splitting is required on detokenization/retirement finalization, but 2 new serial numbers were not provided
57
The score set for the ERC-1155 token in the pool is invalid
58
The score of the ERC-1155 token in the pool is not set
59
The underlying decimals are too high for the pool
60
The provided supply cap is invalid and should match the underlying token decimals, eg, for an ERC-1155 token whose smallest denomination is tonnes, the pool supply cap should not include decimals of lower fidelity than tonnes
Last updated