# In manual raw tx creation, how do you specify the amount of the bitcoin to be sent?

According to this

You can specify the amount of bitcoin with an (apparently) 16 alphanumeric hex representation. It is stated you must specify the bitcoin you want to send in units of Satoshi.

Here is the quote:

We then write an 8-byte field (64 bit integer) containing the amount we want to redeem from the specified output. I will set this to the total amount available in the output minus a fee of 0.001 BTC (0.999 BTC, or 99900000 Satoshis): 605af40500000000

How did they get `605af40500000000` from '99900000 Satoshis' when that hex code = `6943130077857054720`? I can find no conversion calculator online which demonstrates what they are switching it from or to.

I got the hex code from https://www.mathsisfun.com/binary-decimal-hexadecimal-converter.html

99900000 in hex is `5F45A60`. Padded out to be a 64-bit integer makes it `0000000005F45A60`. But Bitcoin uses little endian for most things, so this will need to be converted to little endian by byteswapping. So the final value put into a transaction is `605AF40500000000`.

• Byteswapping will not add characters. Bytes are represented with 2 characters, so to byte swap, you reverse the string in 2 character chunks. This means that the last 2 characters become the first two, the second 2 characters becomes the second 2, and so on. So if you look carefully at the byteswapped string, where you see `05` is actually the `05` that was at the beginning of the hex originally. The 4 is part of `F4`. So it used to look like `F45A`, but now swapped they are `5AF4` which makes you think a 0 was added between the 5 and 4, but it's really a different byte that you are seeing.