If I mint a NEAT
token, can I send .5 NEAT
to someone or do I have to send a whole 1 NEAT
?
-
2Under the hood at the ledger levels there's no concept of floats for native tokens. To have a partial token (like having a partial ada), there needs to be some metadata option that says 1000 X token is really 1 X. But this is just a end user client abstraction layer. If you mint 1 of a token, that isn't divisible.– Samuel LeathersCommented Apr 30, 2021 at 2:39
2 Answers
There is no support for decimal places of native tokens on Cardano.
-
The data type is an Integer as defined in Haskell, and has an unbounded theoretical limit. Commented May 1, 2021 at 16:07
Although, I tried finding an explicit reference in the source my Haskell knowledge is awful and I couldn't find the data type associated with the --mint parameter for the CLI.
My 99.999% gut instinct tells me that it's based on a Number
type, which can be an arbitrary floating point value. In which case, yes, you could subdivide.
I see no reason they would limit the token API to only support integer values (even though integers are generally safer for financial transactions since operations don't produce rounding errors).
-
2The reason why there is no support for decimal places on Cardano right now, is because they are not on-chain and therefore could not be verified by hardware wallets. This might change in the future with Plutus smart contacts. Commented Apr 27, 2021 at 20:11