Contract Utility
Load a verified Smart Contract ABI, inspect methods, and interact with read and write functions from your wallet.
Contract Utility FAQ
Learn how to inspect ABIs, read contract values, submit write transactions, and handle verified, manual, and proxy contracts.
What is Contract Utility?
Contract Utility is a custom interface for inspecting and interacting with smart contracts on supported EVM networks. Enter a network and contract address to load verified source code, metadata, ABI methods, events, and custom errors.
How do I use Contract Utility?
Choose the blockchain network, enter the smart contract address, and search. When source code and ABI data are available, use the Code tab to inspect the contract, Read Contract to query values, and Write Contract to submit transactions from your connected wallet.
How do I load a smart contract?
Open Contract Utility, select the network where the contract is deployed, paste its contract address, and click the search button. The selected network must match the deployment network. When the lookup succeeds, the page displays the verified source code, ABI, contract metadata, and available interaction methods.
How do I use a Read Contract method?
Load the contract and open the Read Contract tab. Search for the method you need, expand it, and fill every required parameter using the ABI type shown beside each field. Click Read to query the selected network. The returned values appear in the Result area without requiring a wallet transaction or gas fee.
How do I use a Write Contract method?
Load the contract and open the Write Contract tab. Expand the method, enter and verify every required parameter, then click Write. Connect your wallet if requested and switch to the selected network. Review the contract address, method, values, permissions, gas, and any native currency amount in your wallet before confirming. The transaction link appears after confirmation.
How do I call a payable method?
Open the Write Contract tab and expand a method marked payable. Complete its parameters and enter the native value to send in the Native value field. Click Write, then carefully verify the native currency amount and destination contract in your wallet before confirming the transaction.
How do I load an ABI manually?
Search for the contract address first. If verified ABI data is unavailable, paste a valid ABI JSON array into the Manual ABI field and click Load ABI. The Read Contract, Write Contract, Events, and Errors tabs will then be generated from that ABI. Only use an ABI obtained from a trusted source and confirm that it belongs to the selected contract.
How should I enter contract method parameters?
Use the ABI type displayed next to each field as your guide. Enter addresses as 0x-prefixed EVM addresses, booleans as true or false, bytes as 0x-prefixed values, arrays as comma-separated values or JSON arrays, and tuples as JSON objects. All fields are required and are validated before the method runs.
How do I interact with a proxy contract?
Start by loading the proxy address because users normally interact with the proxy, not directly with its implementation. If explorer data provides an implementation address, Contract Utility displays an information alert with a link to inspect it. Use the implementation page to review its source code and ABI, but only send transactions directly to it when the contract documentation explicitly requires that.
What is a smart contract ABI?
An ABI, or Application Binary Interface, describes the functions, inputs, outputs, events, and errors exposed by a smart contract. Contract Utility uses the ABI to create input fields and encode calls that wallets and blockchain nodes can understand.
Where does the source code and ABI come from?
For supported networks, Contract Utility requests verified contract source code and ABI data from the configured Etherscan-compatible explorer. The page also displays available compiler, optimization, EVM version, constructor argument, and source file information.
What happens if the contract is not verified?
If verified source code and ABI data are unavailable, you can paste an ABI manually. Manual ABIs should only be used when you trust their source, because an incorrect or misleading ABI can cause you to call an unintended function or submit unexpected values.
What is the difference between read and write methods?
Read methods query blockchain state without changing it and normally do not require a wallet transaction or gas fee. Write methods modify contract state, require a connected wallet, and must be reviewed and confirmed before being submitted onchain.
Do I need to connect a wallet to read a contract?
No. Read and pure contract methods can usually be called without connecting a wallet. A wallet is required for write and payable methods because those actions must be signed by an account.
What are payable contract methods?
Payable methods can receive the native currency of the selected network, such as ETH or another native coin. Enter the optional native value carefully and verify the amount shown by your wallet before confirming the transaction.
What does the Scale selector do for uint values?
The Scale selector multiplies an entered unsigned integer value by a selected decimal scale such as 10^6, 10^9, or 10^18. This is useful for token amounts and other fixed-decimal values. Confirm the contract's expected decimals before submitting a call.
How are contract method inputs validated?
Contract Utility validates common ABI types such as addresses, integers, unsigned integers, booleans, byte values, arrays, and tuples before running a method. The contract itself may still reject validly formatted values when they do not satisfy its rules.
What happens when the contract is a proxy?
A proxy contract forwards calls to an implementation contract. When explorer data identifies an implementation address, Contract Utility displays a link so you can inspect and interact with that implementation. Always confirm whether calls should target the proxy or implementation address.
Why did a contract transaction fail?
A transaction may fail because of invalid values, missing permissions, insufficient balance, paused contract state, contract-specific restrictions, wrong network, or a reverted contract condition. Review the method, inputs, wallet network, and transaction simulation before trying again.
What are the Events and Errors tabs?
The Events tab lists events declared by the ABI that contracts can emit in transaction logs. The Errors tab lists custom Solidity errors that may explain why a call reverts. These tabs document the ABI entries but do not replace a full transaction history or security audit.
Is it safe to interact with any smart contract?
No. Contract Utility helps encode and submit interactions, but it does not guarantee that a contract is safe, audited, or trustworthy. Verify the address, network, source code, ABI, method, values, spender approvals, and wallet transaction details before confirming any write action.
Can a completed contract transaction be reversed?
No. Confirmed blockchain transactions are generally irreversible. Contract Utility cannot recover funds, undo approvals, or reverse contract state changes after a transaction is confirmed.