Invalid request
params[0].to is a required field
useDeployContract hook isn't compatible with Coinbase Smart Wallet. It's trying to send a transaction without a "to" field, which Coinbase wallet rejects.
Use useSendTransaction with encoded bytecode + constructor params as data field.
- Replace
useDeployContractwithuseSendTransaction - Encode constructor parameters with ABI encoder
- Append encoded params to bytecode
- Send as transaction data
This is how Remix does it - it sends the bytecode as transaction data, not as a special "deploy" transaction.