Verify Proxy Contract
How to Verify Proxy Contract
Please learn how to deploy an upgradable BRC20 contract
Flatten your contract
Install flattener
Run the following command:
Compile and deploy your contract with Remix
Compile Implementation contract
Open Remix IDE: https://remix.ethereum.org
Select solidity language
Create new contract
BRC20Token.sol
and copy contract code from flattenedBRC20TokenImplementationFlattened.sol
Compile the implementation contract
Click on this button to switch to the compile page
Select “BRC20TokenImplementation” contract
Enable “Auto compile” and “optimization”
Click “ABI” to copy the contract abi and save it.
Deploy the implementation contract
Select “Injected Web3”
Select “BRC20TokenImplementation” contract
Click the “Deploy” button and Metamask will pop up
Click the “confirm” button to sign and broadcast the transaction to TC.
Then, you need to initialize the token: fill in all the parameters and click on “transact”
Note:
Owner
should be the address who send the deploy transaction before.
Click on the “Copy” icon to save the initializatioin data: Like the following: ```
Confirm your transaction in MetaMask
Compile Proxy Contract
Create new contract proxy.sol and copy contract code from flattened
BRC20UpgradeableProxyFlattened.sol
.Compile the proxy contractClick on this button to switch to the compile page
Select “BRC20UpgradeableProxy” contract
Enable “Auto compile” and “optimization”Click “ABI” to copy the contract abi and save it.
Deploy the proxy contract
Select “Injected Web3”Select “BRC20UpgradeableProxy.sol” contract
Fill in the parameters
Logic: The address of BRC20Implementation
contract Admin: admin cannot be BRC20 token owner Data: use the initialization data you saved before
Click the “Deploy” button and Metamask will pop up
Click the “confirm” button to sign and broadcast transaction to TC.
Verify Proxy Contract on BscScan
Note: The way to verify the BRC20TokenImplementation contract is the same as before.
Go to your contact page and click on “Verify and Publish”
Select Single file
Copy your contract code below and check “Optimization” if it’s enabled
Contractor Data: Please use this site for getting the correct constructor data: https://abi.hashex.org/#
First, you need to copy ABI json of “BRC20UpgradeableProxy.sol” contractThen, click on “Parse”
Add all those 3 parameters as indicated. Then copy/paste the result.
That’s it! You have verified your proxy contract.
Link these two contracts
Click on “More Options” and choose “is this a proxy”.
Verify your proxy address
Confirm the implementation address.
If you go back to the contract page and you can see two more buttons “Read as Proxy” and “Write as Proxy”
Last updated