Moralis Units
Intro
All crypto transactions are made in the smallest value - Wei. But to improve the user experience, on the frontend the transfer amounts are usually inputed in an ETH
style. Users want to input value 0.0001 TokenA
instead of 100000000000000 Wei TokenA
. Standard web3 methods are inconvenient for easy converting. The most convenient conversion method is to use the Moralis.Units
helper functions.
Wei is the smallest denomination of ether, and you should always make calculations in Wei and convert only for display reasons.
Due to the limitations of C#(csharp) int
and long
(32 and 64 bits) bit size been exceeded, BigInteger
from using System.Numerics;
was used due to it large bit size. int
and long
can be used but not recommended (long
can be used as it is larger than int
but it will still be easily exceeded).
Converting ERC20 Token to Wei
To convert ERC20 token to Wei, you need to specify the amount of tokens and number of decimals.
The number of decimals for a token can normally be found on Etherscan, on the website of the project or from Moralis API.
Converting Native Asset (ETH/BNB/MATIC etc) to Wei
To convert native asset to Wei, you need to specify the amount of native crypto.
Converting token value from Wei
All token values are shown in Wei. If you want to display token values in the "Eth" style, you can use:
Check here to see how to handle units in cloud code.
Web3 API responses for token balances have decimals and balance in Wei fields:
Last updated