Users are now able to verify and manage their smart contracts directly through the Avalanche Explorer. Smart contract verification allows users to access and verify the source code, promoting user confidence in the functionality of the smart contracts they engage with. Meanwhile, submitting info about the smart contract enables contract owners to provide essential details, fostering trust and transparency.
1. Navigate to the Manage Smart Contracts tool in the Explorer.
2. Connect the wallet that was used to deploy the smart contract.
Previously deployed smart contracts will be displayed here. Contracts already verified will have a green icon. This tutorial will look at how to verify and edit the information provided for smart contracts.
Verify the smart contract
Verify the smart contract
1. Click on the Verify button next to the deployed contract or the Verify Contract button near the top of the screen.
NOTE: Any smart contract can be verified with the proper information, it does not have to belong to the connected wallet.
2. A new window will open up, redirecting the user to the verification page, powered by Sourcify. There is a variety of options available for adding contract data to the Sourcify Verifier:
Import from Remote: URL to a remote file or ZIP archive (e.g., GitHub repository).
Import from Etherscan: Directly import from Etherscan using the contract address.
Import from GitHub: URL to a GitHub repository or ZIP file.
Import from Contract: Provide the contract address and network to import from the blockchain.
Import from Solidity JSON: Upload a Solidity JSON file containing ABI, bytecode, and metadata.
Drag and Drop: Drag and drop files into the upload area.
3. In this tutorial, the drag and drop method is used. Upload the contract's metadata file and any necessary source files below. Add the Contract Address and choose the Network of the contract being verified. Once the information is added, click Verify.
3. Once verified, users will see a Verification Successful message
NOTE: Avalanche® uses Sourcify to compile and verify contracts behind the scenes. A verified contract does not certify the security, performance, or integrity of the smart contract. Nor is it an endorsement of the contract or its owner.
Edit contract information
Edit contract information
NOTE: Editing contract information is only available for previously verified contracts deployed by the currently connected wallet. If the contract has not been verified yet, please perform the listed steps above.
Open the main contract management page, and click Edit Info next to the contract.
Users will then be able to add or adjust the smart contract info of their choice
Once the information is ready, click Submit. Users will be prompted to sign a transaction verifying that they are submitting this information for review. After reviewing, click Sign.
After signing the transaction, a successful submission pop-up will appear, and the contract information has been submitted to the Product Support team for review.
Verify a smart contract programmatically
Verify a smart contract programmatically
These are two separate tools with different verification mechanisms.
To verify on subnets.avax.network, users can either go to https://sourcify.dev/#/verifier and verify their contract. Alternatively, to verify a contract using hardhat on subnets.avax.network they can reference the following document.
For any additional questions, please view our other knowledge base articles or contact a support team member via the chat button. Examples are for illustrative purposes only.