Contract Doesn’t Match
The submitted source code does not match the contract code deployed on chain. Common causes include using a different compiler version or enabling optimisation runs. For an exact match to be found, both source code and compiler settings specified have to exactly match the deployment conditions, for the same bytecode to be reproduced.Solidity Compilation Error
A compilation issue occured due to syntax errors in your Solidity source code. Consider debugging your contract with any compiler such as Remix or Hardhat and reference the error from Solidity’s official documentation.Contract Not Deployed
The contract has not been deployed at the specific address at the specific chain. Check the contract address you’ve deployed, if your contract deployment transaction has succeeded or if the chainId specified is correct.Missing or Invalid Library Names
A library was used in your contract deployment, but was not specified, misspelt or using the wrong library address. Double check on your library names ( case sensitive such as “PRBMath” ) or ensure that a matching library name and library address is provided.Missing Contract Name
A match was not found with the name of the contract specified when multiple files are provided. Ensure that you have provided the correct contract name to be matched against, and making sure you submit the main contract name not its dependencies.No Deployment Bytecode Match Found
The compilation of your submitted source code does not match the deployment bytecode, ie the constructor arguments plus general initialisation code and runtime bytecode. Similar solution as above, do take into account constructor arguments as well below.Missing/Invalid Constructor Arguments
if your contract utilized theconstructor keyword, you should provide it in hex format. Otherwise, leave this field empty as it is.
You may reference your original deployment’s constructor arguments or determine it from the end of your compiled bytecode.
Mismatched bytecode metadata hash
The metadata hash settings of your submitted source code differs from the settings of your original contract deployment, such as being set toipfs or none.
Submit your contract verification using the solc json input format, and specify the settings accordingly there.
Other submission formats such as single file or multifile do not support changing this setting, and will use the compiler defaults.
Similar Match Found
This error indicates that the contract has already been verified via Similar Match to another contract. Kindly reach out to us at this point of time to have this updated to Full Match if required.Similar Match API Responses
Both
getsourcecode and getabi return data for contracts verified via Similar Match.Unsupported Solc Version
This error is thrown when you specify to use an invalid or unsupported version of the Solidity Compiler ie. belowv0.4.11-nightly.2017.3.15+.
Do let us know if you need to verify a contract below this supported version such as to prove you deployed the first NFT.