diff --git a/ethclient/ethclient.go b/ethclient/ethclient.go
index 8e26dbeb422e6dbf3bb99b4cfaa93d583bb03363..3acaaa0d11d823dd83be031f99ae2cb8bc3c469a 100644
--- a/ethclient/ethclient.go
+++ b/ethclient/ethclient.go
@@ -185,7 +185,7 @@ func (ec *Client) TransactionCount(ctx context.Context, blockHash common.Hash) (
 // TransactionInBlock returns a single transaction at index in the given block.
 func (ec *Client) TransactionInBlock(ctx context.Context, blockHash common.Hash, index uint) (*types.Transaction, error) {
 	var tx *types.Transaction
-	err := ec.c.CallContext(ctx, &tx, "eth_getTransactionByBlockHashAndIndex", blockHash, index)
+	err := ec.c.CallContext(ctx, &tx, "eth_getTransactionByBlockHashAndIndex", blockHash, hexutil.Uint64(index))
 	if err == nil {
 		if tx == nil {
 			return nil, ethereum.NotFound