👀Contract Verification
Lets verify smart contracts on Asset Chain.
Last updated
Lets verify smart contracts on Asset Chain.
Last updated
Pro tip: If you deployed your contract with Hardhat, use the Hardhat guide to verify it.
Note: from solidity compiler version ^0.8.20 won’t verify successfully.
Get Started
Visit the Asset Chain Advanced Explorer
On the Sidebar, hover on the `Other` link and click on `verify contract` link.
Clicking verify contract` should open up a form similar to the one below. Proceed to enter the parameters with which you compiled your contract.
If you submitted the form successfully, your contract has been verified. Visiting the contract page, you should see a page similar to the one below; with an alert showing verified, and your contract code being displayed.
Hardhat is a full-featured development environment for contract compilation, deployment and verification. The Hardhat Etherscan plugin supports contract verification on BlockScout.
Install Hardhat
If you are starting from scratch, create an npm project by going to an empty folder, running npm init
, and following the instructions. Recommend npm 7 or higher.
Once your project is ready:
NPM instructions
YARN instructions
Create a project
Run npx hardhat
in your project folder and follow the instructions to create (more info here).
Install plugin
Install the hardhat-etherscan plugin (requires v3.0.0+).
npm
yarn
Add plugin reference to config file
Add the following statement to your hardhat.config.js
.
If using TypeScript, add this to your hardhat.config.ts.
More info on using typescript with hardhat available here.
Your basic Hardhat config file (hardhat.config.js
or hardhat.config.ts
) will be setup to support the network you are working on. In this example we use the Asset Chain test network and a .js
file.
Asset Chain is not directly supported by the plugin (to check run npx hardhat verify --list-networks
)
But we can add it in a customChains
object, to the config file. It includes:
chainID
- 42421
apiURL
- "http://scan-testnet.assetchain.org/api"
browserURL
- "http://scan-testnet.assetchain.org"
The network name in customChains
must match the network name in the apiKey
object.
You can include constructor arguments with the verify task.
For info on more complex constructor arguments(arrays, tuples..) please visit here.
Example (no constructors).
Go to our BlockScout Explorer and paste the contract address into the search bar.
Scroll down to see verified status. A green checkmark ✅ means the contract is verified.
You can now scroll down in the explorer to see and interact with the contract code.
Congratulations! Your contract is successfully verified on Asset Chain Explorer.