Error when calling Contract Function Call with ETH value 1

Hello Moralis Support team,
please help me regarding calling the smart contract function with ETH value.
I tried to call smart contract function with useWeb3Execution. but it fails.
Here is error message.


It worked correctly before. that’s weird.

Here is the code.

Thanks

it looks like it got a value as string instead of a number
you can use console.log to see what value it has

I tried with both string and number.
20000000000000000
it’s the console.log result.
I tried with a number with this code.
const tokenPrice = new Bignumber(tokenDetails.price).toNumber();
but it sill fails.

in that error message, it shows a string that has letters

It seems the value passed is a string as @cryptokid mentioned as shown in the error.
You can try console.log(tokenPrice) to verify that .

You can also try hardcode the value to see if it works msgValue: Moralis.Units.ETH("1")

Same error.
Here is the code and error message


what is that itemID?

IbGx1tFeWV4waRF0K8yVNNFm
Here is itemID.
Screenshot_6

no reply for the last question?

Are you connected to the proper network ??

yes. of course. I am testing rinkeby test net.

No reply for this question?

it looks like it expects for that itemID to be a number, not that type of string with letters